ansible结合zabbix_api批量添加主机

复制代码
批量添加zabbix监控
1.使用ansible配置zabbix客户端

①修改服务器的IP(域名),为了方便使用ansible来批量操作

等同于如下sed语句
sed -i 's#Server=1.1.1.11#Server=2.2.2.2#g' /usr/local/zabbix_agents_3.2.0/conf/zabbix_agentd.conf
sed -i 's#ServerActive=1.1.1.11#ServerActive=2.2.2.2#g' /usr/local/zabbix_agents_3.2.0/conf/zabbix_agentd.conf

先使用一台服务器测试,通过以后再批量操作即可

②使用ansible将zabbix_agentd.conf的服务器IP有1.1.1.11更换为2.2.2.2
ansible web01 -m replace -a 'path=/usr/local/zabbix_agents_3.2.0/conf/zabbix_agentd.conf regexp="1.1.1.11" replace="2.2.2.2"'

③重启客户端生效
ansible web01 -m shell -a "executable=/bin/bash /etc/init.d/zabbix_agentd restart"

# 全部执行

ansible all -m replace -a 'path=/usr/local/zabbix_agents_3.2.0/conf/zabbix_agentd.conf regexp="1.1.1.11" replace="2.2.2.2"'
ansible all -m shell -a "executable=/bin/bash /etc/init.d/zabbix_agentd restart"

因为是内网所以不需要开启防火墙放行这些IP

其他修改操作类似,就不继续举例说明了

2.服务端操作
①整理agent端需要添加的模板、主机组等信息到excel中


②不存在的模板需要添加到服务端templates中

③执行zabbix_api批量操作excel添加监控


# 修改/etc/ansible/hosts加入如下主机(可以先通过excel整理后直接拷贝)

frontend_web01 ansible_host
=172.30.0.241 ansible_port=2018 ansible_user=root ansible_ssh_pass=pass frontend_web02 ansible_host=172.30.0.240 ansible_port=2018 ansible_user=root ansible_ssh_pass=pass backend_web1 ansible_host=172.30.0.245 ansible_port=2018 ansible_user=root ansible_ssh_pass=pass backend_web2 ansible_host=172.30.0.243 ansible_port=2018 ansible_user=root ansible_ssh_pass=pass backend_web3 ansible_host=172.30.0.242 ansible_port=2018 ansible_user=root ansible_ssh_pass=pass backend_web4 ansible_host=172.30.0.244 ansible_port=2018 ansible_user=root ansible_ssh_pass=pass # 测试ping命令报错 [root@zabbix:~]# ansible eus_redis01 -m ping eus_redis01 | UNREACHABLE! => { "changed": false, "msg": "Failed to connect to the host via ssh: command-line: line 0: Bad configuration option: stricthostkeychecking\\357\\274\\235no\r\n", "unreachable": true } 解决办法: 修改ansible配置文件,关闭首次ssh检查 # vim /etc/ansible/ansible.cfg # uncomment this to disable SSH key host checking host_key_checking = False
复制代码

 

posted @   reblue520  阅读(489)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示