일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- GIT
- API
- EKS
- MySQL
- GCP
- Linux
- ubuntu
- 데이터 분석
- Selenium
- module
- sso
- elasticsearch
- tcp
- 8.0
- ansible
- Automation
- airflow
- 자동화
- ELK
- python
- EC2
- AWS
- kibana
- 5.0
- apt
- crawling
- 시스템자동화
- zabbix
- powershell
- DB
Archives
- Today
- Total
Oops - IT
Ansible task 생성 및 실행 본문
반응형
** 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과 사용법에 대해서 포스팅하겠습니다.
반응형
'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 |