![Ansible 변수 소스](https://rvso.com/image/756798/Ansible%20%EB%B3%80%EC%88%98%20%EC%86%8C%EC%8A%A4.png)
다음과 같은 플레이북이 있습니다.
- hosts: GROUP1
remote_user: ubuntu
become: true
gather_facts: False
roles:
- role: role1
- role: role2
group_var
GROUP1에는 php7 패키지가 있습니다.
GROUP2에는 php5 패키지가 있습니다.
Runbook을 실행하면 php5 및 php7 변수가 모두 ansible-playbook에 표시됩니다. -vvv에 두 패키지 목록이 모두 표시되지만 GROUP1 파일에는 php7 패키지만 나열되어 있으므로 php5 변수를 가져오는 방법을
알 수 없습니다.
Host_var 파일이 없습니다. Host_var 폴더도 없습니다.
-vvv 외에 변수가 어디에서 왔는지 또는 어떤 변수 파일이 포함되는지 확인하는 방법이 있습니까?
답변1
몇 가지 시도 후에 오류가 문제를 발견했습니다. 내 그룹은 실제로 다음과 같았습니다.
php5
php <-- php7 패키지에 이것을 사용하고 있었습니다.
PHP 처리가 php 및 php5 그룹을 모두 가져오고 있었습니다. 업그레이드된 Ansible로 인해 동작이 변경된 것 같지만 여전히 예상했던 것과는 다릅니다.
결국 나는 그룹을
php5
php7 처럼 서로의 하위 집합이 아닌 것으로 만들었습니다.
그리고 그것은 문제를 해결했습니다.