내 인벤토리의 일부는 다음과 같습니다.
prod
group_vars
all
rabbit_master
rabbit_slave
web_children
web_master
staging
group_vars
all
rabbit_master
rabbit_slave
web_children
web_master
내 문제는 내 제품 인벤토리에 있습니다. 예를 들어 web_master와 web_children의 변수는 거의 동일합니다.
web_children/vars.yml
web_master_host: 10.1.1.1
environment: test
key: 123
web_master/vars.yml
environment: test
key: 123
web_children이 web_master의 모든 변수를 상속하여 중복을 방지할 수 있는 방법이 있습니까?
답변1
공통 변수를 포함하는 슈퍼그룹을 생성할 수 있습니다.
- 예를 들어 다음과 같은 파일에 변수를 넣으십시오.
web_hosts
hosts
파일 에서 그룹을 정의web_master
하고web_children
해당 그룹web_hosts
의 하위 그룹이 됩니다.
[web_master]
…
[web_children]
…
[web_hosts:children]
web_master
web_children
자세한 내용은 다음을 참조하세요.https://docs.ansible.com/ansible/latest/user_guide/intro_inventory.html#inheriting-variable-values-group-variables-for-groups-of-groups