리눅스

[draft] Ansible 구성 설정(Configuration Settings) 파일의 우선순위에 대한 설명

SangChul Dot Kr Blog 2026. 2. 28. 15:22

Ansible 구성 설정(Configuration Settings) 파일의 우선 순위에 대한 설명

Ansible 구성 우선순위 한눈에 보기

  1. 환경 변수 (ANSIBLE_CONFIG)
  2. 현재 디렉터리의 ansible.cfg
  3. 사용자 홈 디렉터리의 ~/.ansible.cfg
  4. 시스템 전역 설정 (/etc/ansible/ansible.cfg)
Command Line 옵션(-i, -e 등) 은 구성 파일 우선순위와는 별도로 모든 설정 중 최상위 우선순위를 가집니다.

1. 환경 변수 (ANSIBLE_CONFIG)

Ansible은 ANSIBLE_CONFIG 환경 변수를 통해 구성 파일의 경로를 지정할 수 있습니다. 이 환경 변수가 설정되어 있으면 해당 경로의 구성 파일이 사용됩니다.

export ANSIBLE_CONFIG=/path/to/your/ansible.cfg

2. 커맨드 라인 인수 (최상위 우선순위)

ansible-playbook이나 ansible 명령을 실행할 때 -i나 -e와 같은 인수를 사용하여 구성을 지정할 수 있습니다. 이는 명령이 실행되는 동안 구성을 임시로 설정하는 데 사용됩니다.

ansible-playbook -i inventory.ini -e "ansible_user=myuser" myplaybook.yml

3. 현재 디렉터리의 ansible.cfg

Ansible은 실행 중인 디렉토리에서 ansible.cfg 파일을 검색합니다. 현재 디렉토리에 구성 파일이 있으면 해당 파일이 사용됩니다.

ls -l ansible.cfg

4. 홈 디렉터리의 ~/.ansible.cfg

사용자의 홈 디렉토리에 .ansible.cfg 파일이 있으면 해당 파일이 사용됩니다. 이 파일은 사용자의 홈 디렉토리에 위치하며 전역 설정으로 사용됩니다.

ls -l ~/.ansible.cfg

5. 시스템 전역 설정 (/etc/ansible/ansible.cfg)

Ansible은 /etc/ansible/ansible.cfg 경로에 위치한 시스템 전역 설정 파일도 읽습니다. 이 파일은 시스템 전체에 적용되는 전역 구성을 설정하는 데 사용됩니다.

ls -l /etc/ansible/ansible.cfg

6. 현재 적용 중인 구성 파일 확인

Ansible이 실제로 사용 중인 구성 파일은 다음 명령으로 확인할 수 있습니다.

ansible --version
$ ansible --version                          
ansible 2.9.27
  config file = /home/tuser/ansible-spec/ansible.cfg
  configured module search path = [u'/home/tuser/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python2.7/site-packages/ansible
  executable location = /bin/ansible
  python version = 2.7.5 (default, Jun 28 2022, 15:30:04) [GCC 4.8.5 20150623 (Red Hat 4.8.5-44)]

7. 인벤토리(inventory) 설정 확인

cat ~/ansible-spec/ansible.cfg | egrep '^inventory'
$ cat ~/ansible-spec/ansible.cfg | egrep '^inventory'
inventory      = ~/ansible-spec/inventory
현재 Ansible은 위 경로의 Inventory를 기본으로 사용 중

 

참고URL

- Ansible DOCS(docs.ansible.com) : https://docs.ansible.com/ansible/latest/reference_appendices/config.html

- 변군이글루 블로그 : ansible inventory(인벤토리) 설정