delegate_facts: no or default
위임 대상에게 수집한 facts를 내가 갖는다.
수집한 다른 node facts로 hosts 키워드의 대상 노드의 facts를 덮어씀
delegate_facts: yes
위임 대상에게 수집한 facts를 넘겨줌
▪ 많은 작업이 있는 플레이북의 경우 플레이북 전체를 실행하는 대신 특정 일부분 만 실행하는
것이 유용할 수 있음
▪ Ansible 태그로 특정 작업만 실행하거나, 특정 작업을 실행하지 않을 수 있음
▪ 태그는 플레이, 블록, 역할, 작업에 설정하고, 플레이북 실행 시 태그를 선택
▪ ansible-playbook 명령의 태그 관련 옵션
--tags all: 모든 작업 실행(기본 옵션)
--tags [tag1, tag2]: tag1 및 tag2 태그가 있는 작업 만 실행
--skip-tags [tag3, tag4]: tag3 및 tag4 태그가 있는 작업 건너뛰기
--tags tagged: 태그가 설정된 작업 만 실행
--tags untagged: 태그가 없는 작업 만 실행
▪ ansible-playbook 명령의 태그 및 작업 관련 미리보기 옵션
--list-tags: 사용 가능한 태그 목록 확인
--list-tasks: --tags 및 --skip-tags 옵션과 함께 사용시 관련 작업 목록 확인
• Ansible 플레이북 작성 시 하나의 매우 큰 파일에 플레이 및 작업을 작성할 수 있음
• 단일 플레이북의 복잡한 작업을 다른 파일로 나누어 작업 집합으로 구성할 수 있음
• 더 작고 분산된 아티팩트를 통해 변수, 작업 및 플레이를 여러 플레이북에서 재사용
가능
• 재사용 가능한 아티팩트:
[플레이북에서 변수 재사용]
▪ 플레이북에서 vars_files 키워드 및 include_vars 모듈을 사용하여 외부 변수 파일을
가져올 수 있음
▪ vars_files 키워드
▪ include_vars 모듈
[인벤토리 / 플레이북 디렉토리에서 변수 재사용]
▪ Ansible Automation Engine은 인벤토리 또는 플레이북 파일이 있는 디렉토리에서 group_vars/
또는 host_vars 디렉토리의 YAML 형식의 변수 파일을 가져올 수 있음
▪ 별도로 플레이북 키워드나 모듈을 사용하지 않아도 Ansible Automation Engine이 group_vars/
또는 host_vars/ 디렉토리가 있으면 읽어 들임
• 플레이북, 플레이, 작업 일부, 변수를 재사용하기 위해 include* 및 import 모듈을
사용할 수 있음
▪ include_ 모듈
▪ import 모듈
[ include vs import ]
▪ 처리 시점