Ansible 두번째 발걸음 (playbook 맛보기)
DevOps 트렌드에 발맞추기 위해서 이런 저런 도구들을 찾아보면,
최근 가장 유명한 것은 Chef 아니면 Puppet 이라는 이름이 검색되곤 한다.
하지만, Ansible도 나름 유명한 도구라는...
그래서 계속 더 공부해보기로 했다.
1. hosts 파일
- 앞에서는 임의의 위치에 hosts 파일을 만들어서 "-i" 옵션을 통해 직접 파일을 지정해주었다.
- 하지만, 기본 경로에 해당 파일을 위치시키면 아주 편하게 사용할 수 있다.
$ sudo mkdir /etc/ansible
$ sudo nano /etc/ansible/hosts
[staging]
192.168.100.105
2. playbook 작성
- 어떤 서버에게 어떤 일을 시킬 것인지를 적어놓는 파일을 playbook 이라고 한다.
- ping을 하는 것을 하나 만들어보자.
$ nano ./ping-test.yml
- hosts: all
tasks:
- name: ping
action: ping
3. playbook 실행
- 앞에서 작성한 hosts 파일과 playbook을 이용하여 일을 시켜보자.
$ ansible-playbook ./ping-test.yml
PLAY [all] ***********************************************************************************************************
TASK [Gathering Facts] ********************************************************************************************
ok: [192.168.100.105]
TASK [ping] ********************************************************************************************************
ok: [192.168.100.105]
PLAY RECAP *********************************************************************************************************************
192.168.100.105 : ok=2 changed=0 unreachable=0 failed=0
혹시 노예(Slave)가 말을 잘 듣지 않는 경우라면... 주인의 키를 노예에게 알려주지 않은 것이 아닌지 확인해보자.
- http://www.whatwant.com/395
Ansible 관련 문서나 가이드들이 꽤 많이 검색이 되지만,
나처럼 멍청한 사람을 위한 친절하고 쉬운 가이드가 없어서 고생하고 있다.
일단, 위의 가장 단순한 형태의 Sample로 playbook을 이용하는 방법을 맛보자!
다음 기회에 한 발 더 걸음을 내딪어보자.