Ansible CLI 치트시트
Ansible CLI 치트시트
이 페이지는 각 Ansible 명령줄 유틸리티의 예시 하나 이상을 흔히 쓰는 플래그와 함께 보여주고, 각 명령의 전체 문서 링크를 제공해요. 이 페이지는 흔한 사용 사례에 대한 빠른 리마인더일 뿐이라, 오래되었거나 불완전하거나 둘 다일 수 있어요. 정식(canonical) 문서는 CLI 페이지 링크를 따라가세요.
출처: 문서
본문
ansible-playbook
ansible-playbook -i /path/to/my_inventory_file -u my_connection_user -k -f 3 -T 30 -t my_tag -M /path/to/my_modules -b -K my_playbook.yml
현재 작업 디렉터리에서 my_playbook.yml을 로드하고 다음을 수행해요.
-i— 제공된 경로의my_inventory_file을 인벤토리로 사용해 패턴과 대조.-u—my_connection_user로 SSH 연결.-k— 비밀번호를 물어보고 SSH 인증에 제공.-f— 포크(fork) 3개 할당.-T— 30초 타임아웃 설정.-t—my_tag태그가 붙은 작업만 실행.-M—/path/to/my/modules에서 로컬 모듈 로드.-b— 상승된 권한으로 실행(become사용).-K— become 비밀번호를 물어봄.
자세한 문서는 ansible-playbook을 보세요.
ansible-galaxy
컬렉션 설치하기
- 단일 컬렉션 설치:
ansible-galaxy collection install mynamespace.mycollection
구성된 Galaxy 서버(기본 galaxy.ansible.com)에서 mynamespace.mycollection을 다운로드해요.
- 컬렉션 목록 설치:
ansible-galaxy collection install -r requirements.yml
requirements.yml 파일에 지정된 컬렉션 목록을 다운로드해요.
- 설치된 모든 컬렉션 나열:
ansible-galaxy collection list
역할 설치하기
example.role이라는 역할 설치:
ansible-galaxy role install example.role
# SNIPPED_OUTPUT
- extracting example.role to /home/user/.ansible/roles/example.role
- example.role was installed successfully
- 설치된 모든 역할 나열:
ansible-galaxy role list
자세한 문서는 ansible-galaxy를 보세요.
ansible
ad-hoc 명령 실행하기
- 패키지 설치:
ansible localhost -m ansible.builtin.apt -a "name=apache2 state=present" -b -K
로컬 시스템에서 ansible localhost를 실행해요. name=apache2 state=present는 Debian 기반 시스템에 apache2 패키지를 설치하고, -b는 become으로 상승된 권한으로 실행하며, -m은 모듈 이름을 지정하고, -K는 권한 상승 비밀번호를 물어봐요.
localhost | SUCCESS => {
"cache_update_time": 1709959287,
"cache_updated": false,
"changed": false
#...
}
ansible-doc
- 플러그인 이름과 그 소스 파일 보기:
ansible-doc -F
#...
- 사용 가능한 플러그인 보기:
ansible-doc -t module -l
#...
더 알아보기 (Learn more)
각 명령(ansible-playbook, ansible-galaxy, ansible, ansible-doc)의 공식 CLI 문서 페이지를 함께 보세요. ad-hoc 명령 사용법과 플레이북 구성에 대한 더 자세한 내용은 "Introduction to ad hoc commands"와 "Working with playbooks" 문서를 참고하세요.