Ansible

Ansible task 생성 및 실행

김모우 2020. 10. 30. 20:21
728x90
반응형

** OS 환경: ubuntu 16.04

 

1. Task 생성

: 지난 Post에서 ansible-galaxy 명령어를 통해 role을 생성했다면

  /etc/ansible/roles/[role 이름]/tasks/main.yml 파일이 생성되었을 겁니다.

: 해당 파일에 Ansible에서 관리하는 실제 Host들에서 동작할 작업을 명시 해줍니다.

: 첫번째 동작 - /tmp/test.sh 파일 유무 확인

: 두번째 동작 - /tmp/test.sh 파일이 존재하지 않을 경우 파일 생성

 

#vim /etc/ansible/roles/update-zabbix/tasks/main.yml

- name: Check /tmp/test.sh
  stat:
    path: /tmp/test.sh
  register: script_check

- name: If /tmp/test.sh file does not exist, create the file
  file:
    path: /tmp/test.sh
    state: touch
    owner: root
    group: root
    chmod: 0644
  when: not script_check.stat.exist

 

2. Playbook 작성

: Roles를 실행하기 위한 Playbook 내용을 작성해 줍니다.

 

#vim /etc/ansible/playbooks/[role 이름].yml

---
- hosts: linux
  roles:
    - [role 이름]  

# vim /etc/ansible/hosts

[linux]
[서버 명] ansible_host=[서버 IP]

[linux:vars]
ansible_user=[계정 명]
ansible_password=[계정 암호]
ansible_python_interpreter=/usr/bin/python3

 

3. Playbook 실행

 

#ansible-playbook /etc/ansible/playbooks/[role 이름].yml


* 위와 같이 "Please add this host's fingerprint to your known_hosts for this host." 에러 발생 시

#vim /etc/ansible/ansible.cfg

[defaults]
host_key_checking = False

* 위의 내용 추가

정상 실행된 모습


: /tmp 경로를 확인하면 실제로 파일 유무를 확인하고 파일을 생성한 것을 확인 할 수 있다.

 

다음 Post에서는 Roles에서 사용하는 주요 Module과 사용법에 대해서 포스팅하겠습니다.

728x90
반응형

'Ansible' 카테고리의 다른 글

Ansible Zabbix 운영  (0) 2021.04.29
Ansible Windows 서버 파일 배포  (2) 2021.01.30
Ansible 자주 쓰는 모듈 - 1  (0) 2020.10.31
Ansible 설치 및 실행  (0) 2020.10.30
Ansible 기본 명령어  (0) 2020.10.25