
Ansible에서 추가 변수를 사용하는 방법
2022-06-04 last update
5 minutes reading AnsibleAnsible은 변수를 사용하여 유연성을 제공합니다.변수를 사용하면 Ansible 시나리오를 실행할 때 사용자 정의 값과 조건을 설정할 수 있습니다.그러나 대본의 변수는 편리하지만 변경이 필요할 때 대본을 편집해야 한다.
추가 변수를 사용하여 Ansible 시나리오를 외부 입력할 수 있습니다.
본고는 대본을 편집하지 않고 Ansible 추가 변수를 사용하여 사용자 정의 또는 동적 값을 제공하는 방법을 배울 것입니다.
Ansible extra vars는 Ansible 시나리오에 더 많은 유연성을 추가할 수 있는 기능으로 시나리오를 실행할 때 동적 값을 지정하는 능력을 제공합니다.
Ansible extra Var는 다음과 같은 경우에 유용합니다.playbook을 실행할 때 이 변수의 값이 여러 번 변경될 수 있는 변수가 있습니다. 대본을 편집하지 않아도 대본의 변수 값을 변경할 수 있다.
Ansible extra vars는 시나리오나 변수 파일에 저장된 값을 덮어씁니다.명령행 변수라고도 합니다.
이제 추가 변수를 어떻게 사용하는지 예시를 보여 드리겠습니다.
Ansible에서 추가 변수의 일반적인 예는 하드 인코딩 호스트의 값입니다.'개발'그룹 호스트에서 실행되는 시나리오가 있다면,'생산'호스트에서 시나리오를 실행해야 할 때, 시나리오를 편집해야 합니다.
특히 대량의 호스트 그룹 집합에서 짜증나고 실수하기 쉽다.
이 문제를 해결하기 위해 Ansible extra vars 기능을 사용할 수 있습니다.호스트 그룹을 대표하는 변수를 정의하고playbook을 실행할 때 값을 지정할 수 있습니다.
다음 시나리오를 고려하십시오.
명령 예제는 다음과 같습니다.
이 강좌에서는 Ansible 추가 변수를 사용하여 시나리오의 유연성을 높이는 방법을 설명합니다.자세한 내용은 문서를 참조하십시오.
추가 변수를 사용하여 Ansible 시나리오를 외부 입력할 수 있습니다.
본고는 대본을 편집하지 않고 Ansible 추가 변수를 사용하여 사용자 정의 또는 동적 값을 제공하는 방법을 배울 것입니다.
Ansible 추가 변수란 무엇입니까?
Ansible extra vars는 Ansible 시나리오에 더 많은 유연성을 추가할 수 있는 기능으로 시나리오를 실행할 때 동적 값을 지정하는 능력을 제공합니다.
Ansible extra Var는 다음과 같은 경우에 유용합니다.
Ansible 추가 변수 사용 방법
Ansible extra vars는 시나리오나 변수 파일에 저장된 값을 덮어씁니다.명령행 변수라고도 합니다.
이제 추가 변수를 어떻게 사용하는지 예시를 보여 드리겠습니다.
Ansible에서 추가 변수의 일반적인 예는 하드 인코딩 호스트의 값입니다.'개발'그룹 호스트에서 실행되는 시나리오가 있다면,'생산'호스트에서 시나리오를 실행해야 할 때, 시나리오를 편집해야 합니다.
특히 대량의 호스트 그룹 집합에서 짜증나고 실수하기 쉽다.
이 문제를 해결하기 위해 Ansible extra vars 기능을 사용할 수 있습니다.호스트 그룹을 대표하는 변수를 정의하고playbook을 실행할 때 값을 지정할 수 있습니다.
다음 시나리오를 고려하십시오.
---
- hosts: "{{group}}"
become:yes
gather_facts: no
tasks:
- name: InstallApache
apt:
name: httpd
state: present
update_cache: yes
현재 우리는 위에서 말한 예시playbook이 있습니다. 플레이북을 실행할 때 - extra vars 옵션을 사용하여 값을 그룹 변수에 전달할 수 있습니다.명령 예제는 다음과 같습니다.
ansible-playbook example.yml –extra-vars “group=production”
그룹을'개발'으로 변경하려면 대본을 편집할 필요가 없습니다.그림과 같이 변수를 전달합니다.ansible-playbook example.yml --extra-vars “group=development”
다음 예는 목표 분포를 바탕으로 시작하는 서비스를 지정하기 위해 추가 변수를 사용합니다.---
- hosts: "{{group}}"
become:yes
gather_facts: no
tasks:
- name: InstallApache
service:
name: "{{pkg_name}}"
state: started
위의 시나리오를 사용하면 추가 변수를 다음과 같이 지정할 수 있습니다.ansible-playbook example.yml --extra-vars “group=development pkg_name=apache2”
공백이 있는 변수를 전달하려면 다음 예와 같이 따옴표를 사용합니다.ansible-playbook example.yml --extra-vars "protocol='All -SSLv2 '"
결론
이 강좌에서는 Ansible 추가 변수를 사용하여 시나리오의 유연성을 높이는 방법을 설명합니다.자세한 내용은 문서를 참조하십시오.