实战--Playbook批量部署zabbix-agent
搭建完成zabbix-server服务器,要求在上百台服务器安装zabbix-agent,监控每台服务器的性能,指定需要监控的端口等等,这样必须用自动化脚本来实现,更高效的完成这项工作。
自动化运维工具Ansible,相信大家也很熟悉,话不多说,开始部署。
测试环境:
192.168.20.85 zabbix-server
192.168.20.39 zabbix-agent
[root@k8s-master ~]# vim /etc/ansible/hosts
[web]
## alpha.example.org
## beta.example.org
k8s-master ansible_ssh_host=192.168.20.40
k8s-node3 ansible_ssh_host=192.168.20.39
1、配置zabbix-agent脚本
[root@k8s-master ~]# more zabbix-agent.sh
#!/bin/bash
if [ ! -f /etc/yum.repos.d/zabbix.repo ]
then
rpm -ivh /root/zabbix-release-4.2-2.el7.noarch.rpm
fi
Zabbix_Agent=`rpm -qa |grep zabbix-agent|wc -l`
if [ $Zabbix_Agent -eq 0 ];then
yum -y install zabbix-agent
fi
sed -i 's/Server=127.0.0.1/Server=192.168.20.40/g' /etc/zabbix/zabbix_agentd.conf
sed -i 's/ServerActive=127.0.0.1/ServerActive=192.168.20.40/g' /etc/zabbix/zabbix_agentd.conf
systemctl restart zabbix-agent
记得先执行下脚本是否有错误,在批量执行playbook
2、配置zabbix-agent.yml
[root@k8s-master ~]# more zabbix-agent.yml
---
- hosts: all
tasks:
- name: copy zabbix-agent.repo
copy: src=/root/zabbix-release-4.2-2.el7.noarch.rpm dest=/root/
- name: install zabbix-agent
copy: src=/root/zabbix-agent.sh dest=/root/zabbix-agent.sh mode=755
- name: run script
shell: sh /root/zabbix-agent.sh
register: result
- debug: var=result
3、批量执行安装
[root@k8s-master ~]# ansible-playbook zabbix-agent.yml
4、查看服务器zabbix-agent端口
[root@k8s-master ~]# netstat -nltp |grep 10050
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 11634/zabbix_agentd
tcp6 0 0 :::10050 :::* LISTEN 11634/zabbix_agentd
[root@k8s-node3 ~]# netstat -nltp|grep 10050
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 14587/zabbix_agentd
tcp6 0 0 :::10050 :::* LISTEN 14587/zabbix_agentd
相关阅读:
1、实战--Playbook批量更改服务器主机名
2、欢迎加入技术交流
更多相关文章
- 欢迎加入技术交流
- 实战--Playbook批量更改服务器主机名
- 使用无服务器式的 Jenkins X:探索Prow,Jenkins X Pipeline Oper
- Linux免交互登录远程服务器并执行命令
- 租用服务器时,为什么还要购买CDN加速?
- 高级运维工程师的打怪升级之路
- Python运维自动化开发之Paramiko模块
- 记一次服务器负载过高的排查过程
- 10:VMware Horizon View 8.0-证书配置,解决连接服务器后台证书报错