ansible批量部署zabbix-agent
生产中为了随时掌握服务器的运行情况需要使用zabbix监控系统,但是zabbix需要被监控端安装一个插件来收集各自的信息,如果服务器规模较大靠手动单台安装配置zabbix-agent客户端将是一个很大的工程,为了节省时间增加工作效率,这里我们使用Linux自动化运维工具ansible来统一管理。
四台服务器做测试
首先选择一台较优的服务器部署ansible,然后把需要监控的所有服务器IP写入ansible主机清单,同时要做**认证(如果所有服务器密码相同可以直接写入ansible主机清单里面)
免**认证文档:https://mp.****.net/postedit/83150773
ansible安装文档:https://mp.****.net/postedit/89839297
装好ansible之后就开始统一部署zabbix-agent
先安装zabbix-agent源
ansible all -m shell -a 'rpm -Uvh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm'
安装zabbix-agent客户端
ansible all -m shell -a 'yum -y install zabbix-agent'
检查一下是否安装成功
设置启动和开机项
ansible all -m shell -a 'systemctl start zabbix-agent'
查看端口是否启动
ansible all -m shell -a 'netstat -nltp |grep zabbix_agentd'
ansible all -m shell -a 'systemctl enable zabbix-agent.service'
启动正常就开始关键一步,修改配置文件
思路:
1、先把本地zabbix-agent配置文件备份,然后修改Server=’主控端IP’
2、运用ansible copy模块把修改好的配置文件推送到被监控端所有服务器
3、重启zabbix-agent
[[email protected] ~]# cp /etc/zabbix/zabbix_agentd.conf ./
[[email protected] ~]# vim zabbix_agentd.conf
替换换配置文件
ansible zabbix -m copy -a 'src=/root/zabbix_agentd.conf dest=/etc/zabbix/'
#推送过去后可以随机抽两台看看配置文件是否替换成功。
重启zabbix-agent
ansible all -m shell -a 'systemctl restart zabbix-agent'
#下面是zabbix主控端安装文档: