728x90
반응형
nsible-playbook 지정 시 Default hosts 파일 경로는 /etc/ansible/hosts 이다.
1
[test@server1 ~]$ cat /etc/ansible/hosts
2
# This is the default ansible 'hosts' file.
3
#
4
# It should live in /etc/ansible/hosts
5
#
6
# - Comments begin with the '#' character
7
# - Blank lines are ignored
8
# - Groups of hosts are delimited by [header] elements
9
# - You can enter hostnames or ip addresses
10
# - A hostname/ip can be a member of multiple groups
해당 /etc/ansible/hosts 파일은 /etc/ 폴더 내에 존재하며 root 권한이 있어야만 작성 가능하다.
ansible playbook의 배포와 자유도를 높이기 위해서는 해당 파일에 종속되지 않는 인벤토리(Hosts) 파일이 필요하다.
ansible-playbook 실행 시 -i 옵션으로 작업 대상이 저장된 Inventory 파일의 지정이 가능하다.
1
[server@server1 ~]$ ansible-playbook -h | grep ' -i '
2
-i INVENTORY, --inventory=INVENTORY, --inventory-file=INVENTORY
/etc/ansible/hosts 파일 내 hosts 정보를 삭제 후 -i 옵션 없이 ansible-playbook를 실행하면 "no hosts matched" 에러가 발생한다.
1
[test@server1 ~]$ ansible-playbook test.yml -k
2
SSH password:
3
[WARNING]: provided hosts list is empty, only localhost is available. Note that the implicit localhost does not match 'all'
4
5
[WARNING]: Could not match supplied host pattern, ignoring: test
6
7
8
PLAY [test] *****************************************************************************************************************************************************************************************************************************
9
skipping: no hosts matched
10
11
PLAY RECAP ******************************************************************************************************************************************************************************************************************************
-i 옵션을 설정 시 이전과 같이 정상적으로 실행되는 것을 확인할 수 있다.
1
[test@server1 ~]$ cat hosts
[test]
server2
server3
server4
[test@server1 ~]$ ansible-playbook test.yml -k -i hosts
2
SSH password:
3
4
PLAY [test] *****************************************************************************************************************************************************************************************************************************
5
6
TASK [1. Test connection] ***************************************************************************************************************************************************************************************************************
7
[WARNING]: sftp transfer mechanism failed on [server3]. Use ANSIBLE_DEBUG=1 to see detailed information
8
9
[WARNING]: sftp transfer mechanism failed on [server4]. Use ANSIBLE_DEBUG=1 to see detailed information
10
11
[WARNING]: sftp transfer mechanism failed on [server2]. Use ANSIBLE_DEBUG=1 to see detailed information
12
13
ok: [server3]
14
ok: [server4]
15
ok: [server2]
16
17
PLAY RECAP ******************************************************************************************************************************************************************************************************************************
18
server2 : ok=1 changed=0 unreachable=0 failed=0
19
server3 : ok=1 changed=0 unreachable=0 failed=0
20
server4 : ok=1 changed=0 unreachable=0 failed=0
출처: https://november11tech.tistory.com/109 [Mr.november11:티스토리]
728x90
반응형
'IT > CLOUD(AWS,Azure,GCP,Docker)' 카테고리의 다른 글
[Ansible] Playbooks 요약 정리 (0) | 2023.11.20 |
---|---|
ansible 에러 Failed to connect to the host via ssh: Permission denied (0) | 2023.11.19 |
Ansible 운영 - 2. Playbook 활용 및 예제 (0) | 2023.11.19 |
[Ansible] 구성 파일 ansible.cfg (0) | 2023.11.11 |
앤서블 Ansible 구성파일 / 관리노드 연결 (0) | 2023.11.11 |