-
[DevOps] Ansible Playbooks카테고리 없음 2019. 4. 21. 22:20
Ansible 특징
- 에이전트 설치가 없는 구조
- 대상 서버에 에이전트를 설치하지 않고 직접 대상 호스트로 명령
- 멱등성
- 여러번 연산을 적용해도 결과가 같은 성질
Ansible 설치
- centOS 기준
$ sudo yum install ansible
플레이북 예제를 살펴보자.
Playbook > Play > tasks
--- - hosts: webservers vars: http_port: 80 max_clients: 200 remote_user: root tasks: - name: ensure apache is at the latest version yum: name: httpd state: latest - name: write the apache config file template: src: /srv/httpd.j2 dest: /etc/httpd.conf notify: - restart apache - name: ensure apache is running service: name: httpd state: started handlers: - name: restart apache service: name: httpd state: restarted
다음은 하나의 Playbook 안에 하나의 Play가 존재한다.
- hosts: webservers 이 하나의 Play이다.
tasks: 아래에 task 목록이 위치한다.
플레이북 실행
$ ansible-playbook Usage: ansible-playbook [options] playbook.yml [playbook2 ...]
옵션
-i INVENTORY, --inventory=INVENTORY, --inventory-file=INVENTORY -l SUBSET, --limit=SUBSET -t TAGS, --tags=TAGS only run plays and tasks tagged with these values
댓글
- 에이전트 설치가 없는 구조