반응형
Ansible playbook은 Ansible task(작업할 내용)를 효율적으로 관리하고 실행합니다. 왜 효율적이라고 표현했는지 이 글에서 다룰려고 합니다.
Ansible 작업할 내용을 파일로 관리하려면?
Ansible에서 여러 task를 수행하려면 ansible 명령어를 여러번 실행해야 합니다. 아래 예제는 bob, alice, john계정을 생성하는 예제입니다.
ansible -i ./inventory -m user -a "name=bob state=present" all
ansible -i ./inventory -m user -a "name=alice state=present" all
ansible -i ./inventory -m user -a "name=john state=present" all
task를 파일로 관리하려면 쉘 스크립트로 관리합니다.
#/bin/sh
ansible -i ./inventory -m user -a "name=bob state=present" all
ansible -i ./inventory -m user -a "name=alice state=present" all
ansible -i ./inventory -m user -a "name=john state=present" all
그리고 쉘스크립트를 실행하여 Ansible을 실행합니다.
sh ansible.sh
쉘 스크립트 불편할을 해결하는 playbook
playbook은 쉘 스크립트로 관리하는 불편함을 해결합니다. yaml포맷으로 ansible task를 관리합니다. 쉘 스크립트로 작성한task를 playbook으로 표현하면 아래와 같습니다. playbook은 play묶음이며 play는 task를 관리합니다.
playbook실행은 ansible-playbook으로 합니다.
ansible-playbook -i {inventory 경로} {playbook 경로}
반응형
'연재 시리즈' 카테고리의 다른 글
Ansible playbook 실패 제어 (0) | 2024.01.19 |
---|---|
Ansible vault (0) | 2024.01.14 |
Ansible 사용방법 (0) | 2024.01.12 |
Ansible 소개 (1) | 2024.01.09 |
게임으로 배우는 AWS IAM(부제목: bigiamchallenge) (0) | 2023.09.03 |