教你使用zabbix api批量添加数百台监控主机的方法

2023-12-02 0 1,031

在公司规模很庞大的时候,每次都手动添加监控主机将会很麻烦,我们可以利用zabbix的api去批量添加监控主机

本次我们将实现用一台主机虚拟出100台主机,并通过api的方式自动添加监控主机

掌握本次方法,无需要了解python,也不需要写python脚本

1.获取批量添加主机的api

可以从官网取到

https://www.zabbix.com/documentation/4.0/zh/manual/api/reference/host/create

{
\”jsonrpc\”: \”2.0\”,
\”method\”: \”host.create\”,
\”params\”: {
\”host\”: \”192.168.81.180\”,
\”interfaces\”: [
{
\”type\”: 1,
\”main\”: 1,
\”useip\”: 1,
\”ip\”: \”192.168.81.180\”,
\”dns\”: \”\”,
\”port\”: \”10050\”
}
],
\”groups\”: [
{
\”groupid\”: \”15\”
}
],
\”templates\”: [
{
\”templateid\”: \”10271\”
}
]
},
\”auth\”: \”\’$token\’\”,
\”id\”: 1
}

api必要字段说明

解释:“host”: “192.168.81.160”, #主机名称“interfaces”: [{“type”: 1, #使用agent客户端“main”: 1, #默认“useip”: 1, #ip地址“ip”: “192.168.81.160”, #agent的地址“dns”: “”,“port”: “10050” #agent端口}],“groups”: [{“groupid”: “15” #主机群组的id}],“templates”: [{“templateid”: “10271” #模板id}]

2.创建一百台服务器

我们虽然没有一百台服务器,但是我们可以创建100个网卡,且都在一台机器上,有一百个ip即可

[root@k8s-master ~]# for i in {100..200}
do
ifconfig ens33:$i 192.168.81.$i
ifconfig ens33 up
done

教你使用zabbix api批量添加数百台监控主机的方法

3.编写批量添加主机的脚本

3.1.将一百台机器的ip写到文件中

[root@k8s-master ~]# echo 192.168.81.{100..200} | xargs -n1 > /root/host.txt

3.2.在机器上安装zabbix-agent

[root@k8s-master ~]# yum -y install zabbix-agent
[root@k8s-master ~]# vim /etc/zabbix/zabbix_agentd.conf
Server=192.168.81.250
[root@k8s-master ~]# systemctl restart zabbix-agent

3.3.编写批量添加主机的脚本

[root@k8s-master ~]# vim zabbix_host_creates.sh
#!/bin/bash
#批量添加zabbix主机
#登陆
token=`echo $json | grep result | awk -F\’\”\’ \'{print $10}\’`

#批量添加主机
for ip in `cat /root/host.txt`
do
curl -s -X POST -H \’Content-Type: application/json\’ -d \’
{
\”jsonrpc\”: \”2.0\”,
\”method\”: \”host.create\”,
\”params\”: {
\”host\”: \”\’$ip\’\”,
\”interfaces\”: [
{
\”type\”: 1,
\”main\”: 1,
\”useip\”: 1,
\”ip\”: \”\’$ip\’\”,
\”dns\”: \”\”,
\”port\”: \”10050\”
}
],
\”groups\”: [
{
\”groupid\”: \”15\”
}
],
\”templates\”: [
{
\”templateid\”: \”10271\”
}
]
},
\”auth\”: \”\’$token\’\”,
\”id\”: 1
}\’ http://192.168.81.250/zabbix/api_jsonrpc.php | python -m json.tool
done

3.4.执行脚本

[root@k8s-master ~]# chmod a+x zabbix_host_creates.sh
[root@k8s-master ~]# sh zabbix_host_creates.sh

脚本输出

教你使用zabbix api批量添加数百台监控主机的方法

3.5.查看监控主机是否批量创建成功

全部为有效状态

教你使用zabbix api批量添加数百台监控主机的方法

到此这篇关于利用zabbix api批量添加数百台监控主机的文章就介绍到这了,更多相关abbix api批量添加主机内容请搜索悠久资源以前的文章或继续浏览下面的相关文章希望大家以后多多支持悠久资源!

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悠久资源 zabbix 教你使用zabbix api批量添加数百台监控主机的方法 https://www.u-9.cn/server/zabbix/33623.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务