ansible-playbook 커맨드를 실행하기 전에 플레이북을 확인할 수 있는 플래그가 있다.
1. 문법 체크
--syntax-check 플래그는 플레이북 문법이 유효한지 확인하지만 실행하지 않는다.
$ ansible-playbook --syntax-check playbook.yml
2. 호스트 나열하기
--list-hosts 플래그는 플레이북이 실행될 호스트를 출력하지만 플레이북을 실행하지 않는다.
$ ansible-playbook --list-hosts playbook.yml
3. 태스크 나열하기
--list-tasks 플래그는 플레이북이 실행될 태스크를 출력하지만 플레이북을 실행하지 않는다.
$ ansible-playbook --list-tasks playbook.yml
4. 체크 모드
-C 플래그와 --check 플래그는 앤서블을 체크 모드를 실행한다(때때로 드라이 런(dry-run)이라 한다)
즉 플레이북의 각 태스크가 호스트 수정 여부를 알려주지만 서버에 어떠한 변경이 발생하지 않는다.
$ ansible-playbook -C playbook.yml
$ ansible-playbook --check playbook.yml
체크 모드를 사용할 때의 어려움 중 하나는 플레이북의 처음 부분이 실행될 때만 플레이북의 뒷 부분이 성공할 수 있다는 점이다.
5. diff (파일 변경을 표시한다)
-D 플래그와 -diff 플래그는 원격 머신에서 변경된 모든 파일의 출력 비교 정보를 표시한다.
정상적으로 실행되었다면 앤서블이 파일을 변경하는 방법을 표시하기 위해 -D 플래그와 -diff 플래그를 --check와 함께 사용하면 도움이 된다.
$ ansible-playbook -D --check playbook.yml
$ ansible-playbook --diff --check playbook.yml
앤서블이 파일(예시: copy, template, lineinfile과 같은 모듈을 사용)을 수정하면 다음처럼 .diff 포맷의 변경 사항을 표시한다.
-loglevel = "error"
+loglevel = "warning"
'Ansible-Puppet-Chef' 카테고리의 다른 글
[ansible] key로 git clone하는 다운로드 예제 (0) | 2019.06.18 |
---|---|
DNS와 앤서블 (0) | 2019.06.17 |
[ansible] 실행할 태스크를 제한할 수 있다. (0) | 2019.02.16 |
vagrant의 multi-VM environment 설정 예시 (0) | 2019.01.27 |
ansible에서 태스크 실행 시간과 플레이북의 전체 실행 시간 보기 (0) | 2019.01.26 |