Ansible Zabbix 운영
Ansible의 community.zabbix 모듈을 이용하여 Zabbix 서버를 운영 관리하는 몇 가지 예제에 대해서 정리해보겠습니다.
1. community.zabbix 모듈 설치
- 사전 작업
# apt-get install python-pip
# pip install zabbix-api
- Ansible이 설치되어 있다는 가정하에 community.zabbix 모듈 설치를 진행합니다.
# ansible-galaxy collection install community.zabbix
* 오류 발생 *
* 해결 방법 *
- Ansible 버전이 낮아서 발생하는 문제로 Ansible 레포 추가 후 Ansible 업데이트저는 2.51 버전 사용 중이였습니다. - 아마 기본 레포에서 설치 시 해당 버전이 설치가 되는거 같네요...
# echo "deb http://ppa.launchpad.net/ansible/ansible/ubuntu trusty main" >> /etc/apt/source.list.d/ansible.list
# apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 93C4A3FD7BB9C367
# apt update
# apt install ansible or apt --only-upgrade install ansible2.92 버전으로 업그레이드 완료!
- 해당 명령어 다시 실행
# ansible-galaxy collection install community.zabbix
2. Role 생성
- Zabbix API 사용을 위한 Role을 생성해줍니다.
# ansible-galaxy init /etc/ansible/roles/set-C.Zabbix-function
- main 함수 변경
# vim /etc/ansible/roles/set-C.Zabbix-function/set-C.Zabbix-function/tasks/main.yml
- 참조: docs.ansible.com/ansible/latest/collections/community/zabbix/zabbix_host_module.html
community.zabbix.zabbix_host – Create/update/delete Zabbix hosts — Ansible Documentation
Docs » community.zabbix.zabbix_host – Create/update/delete Zabbix hosts © Copyright 2021 Red Hat, Inc. Last updated on Apr 23, 2021.
docs.ansible.com
3. Playbook 생성
- Playbook 생성
# mkdir /etc/ansible/playbooks
# vim /etc/ansible/playbooks/set-C.Zabbix-funcation.yml
.
.
- hosts: test
roles:
- set-C.Zabbix-function
.
.
:wq
- Hosts 파일은 본인 설정에 맞게 입력해주세요.
- 참고: https://usheep91.tistory.com/20?category=887201
Ansible task 생성 및 실행
** OS 환경: ubuntu 16.04 1. Task 생성 : 지난 Post에서 ansible-galaxy 명령어를 통해 role을 생성했다면 /etc/ansible/roles/[role 이름]/tasks/main.yml 파일이 생성되었을 겁니다. : 해당 파일에 Ansible에서..
usheep91.tistory.com
4. 실행 및 데이터 확인
- Playbook 실행
# ansible-playbook /etc/ansible/playbooks/set-C.Zabbix-function.yml
- string 관련 경고 메세지가 발생하는데 실행은 정상적으로 되구요 없애실려면 1 데이터를 "1" 형태로 변경해주세요, 변경하는거 실행 시 깔끔한 거 같습니다.
- 결과 확인
: 아래와 같이 정상 실행되었습니다.