利用Ansible推送Zabbix Agent
公司之前购买的商业监控软件不太给力,很多自定义的监控功能无法实现,现在开始试用Zabbix来做基础设施监控。Zabbix最不友好的一点是Agent安装比较复杂,要配yum源,安装完成后还需要修改配置文件来更改服务器IP指向及主机hostname,自动注册可能还需要添加HostMegadataItem,装几台机器还好,多了真的很让人崩溃。恰好最近在考RHCA,自己动手写了个ansible脚本推送Agent。本文脚本已经在几千台服务器上成功验证可行,有linux的也有windows的,大家拿过去就可以用。
前置条件
- linux配置好zabbix yum源,如果是内外网隔离可能需要自己搭建个本地yum
- windows 操作系统要开通windows remote management服务,有坑,等下再说
Linux Agent推送
适用于yum源安装环境,仅在redhat7 和 Centos7下测试过,其他操作系统不保证能成功推送。
ansible role文件,修改少量参数即可复用,详细代码如下。
tasks
# tasks file for zabbix
- name: set selinux permissive
shell: "setenforce 0"
ignore_errors: yes
- name: Copy zabbix repo file to managed host
copy:
src: zabbix.repo
dest: /etc/yum.repos.d/
mode: 0644
tags: agent-install
- name: make repository cache
shell:
cmd: "yum makecache"
- na