时间:2022-03-09来源:www.pcxitongcheng.com作者:电脑系统城
在公司规模很庞大的时候,每次都手动添加监控主机将会很麻烦,我们可以利用zabbix的api去批量添加监控主机
本次我们将实现用一台主机虚拟出100台主机,并通过api的方式自动添加监控主机
掌握本次方法,无需要了解python,也不需要写python脚本
可以从官网取到
https://www.zabbix.com/documentation/4.0/zh/manual/api/reference/host/create
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
{ "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
}
]
我们虽然没有一百台服务器,但是我们可以创建100个网卡,且都在一台机器上,有一百个ip即可
1 2 3 4 5 |
[root@k8s-master ~] # for i in {100..200} do ifconfig ens33:$i 192.168.81.$i ifconfig ens33 up done |
1 | [root@k8s-master ~] # echo 192.168.81.{100..200} | xargs -n1 > /root/host.txt |
1 2 3 4 |
[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 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
[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 |
1 2 |
[root@k8s-master ~] # chmod a+x zabbix_host_creates.sh [root@k8s-master ~] # sh zabbix_host_creates.sh |
脚本输出
全部为有效状态
到此这篇关于利用zabbix api批量添加数百台监控主机的文章就介绍到这了
2024-07-07
myeclipse怎么导入tomcat教程2024-07-07
myeclipse如何启动tomcat2024-07-07
myeclipse如何绑定tomcat上线了一个小的预约程序,配置通过Nginx进行访问入口,默认的日志是没有请求时间的,因此需要配置一下,将每一次的请求的访问响应时间记录出来,备查与优化使用....
2023-03-17