如何使用API自动增加Zabbix监控主机
admin
2023-01-24 06:41:10
0

背景

zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。

zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。

zabbix由2部分构成,zabbix server与可选组件zabbix agent。

zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。

Zabbix优点:

1 支持分布式监控

2 自带绘图功能,获取到数值型的数据,可自动生成图

3 Web配置方式,操作易用性较好。添加监控项或机器时速度很快。

4 有报警时无论在任何界面会弹出小窗口报警,同时有报警的声音提示,同时可对监控项的快速查看。

5 自带内置函数较为丰富,同时也支持脚本及nagios等脚本的调用。

6 出现问题时,可自动远程执行命令(需对agent设置执行权限)

Zabbix 缺点:

1 批量修改不方便,可用数据库辅助

2 深入后,中文资料相当少,大部分问题需看官方的文档及论坛。

3 缺少数据汇总功能,如无法查看一组服务器平均值,可考虑对其进行二次开发。

4 zabbix较cacti来说,画图功能较差些、流量获取较为复杂

API:应用程序接口(API:Application Program Interface)

应用程序接口是一组定义、程序及协议的集合,通过 API 接口实现计算机软件之间的相互通信。API 的一个主要功能是提供通用功能集。程序员通过调用 API 函数对应用程序进行开发,可以减轻编程任务。 API 同时也是一种中间件,为各种不同平台提供数据共享。

根据单个或分布式平台上不同软件应用程序间的数据共享性能,可以将 API 分为四种类型:

远程过程调用(RPC):通过作用在共享数据缓存器上的过程(或任务)实现程序间的通信。

标准查询语言(SQL):是标准的访问数据的查询语言,通过数据库实现应用程序间的数据共享。

文件传输:文件传输通过发送格式化文件实现应用程序间数据共享。

信息交付:指松耦合或紧耦合应用程序间的小型格式化信息,通过程序间的直接通信实现数据共享。

新增接口前需要做个登录,拿到登录的token,然后拿到这个token,再去添加服务器。脚本如下:

#!/bin/bash

hostname='192.168.0.219'    #被监控主机名称
ip='192.168.0.219'                 #被监控主机IP
port=10050                            #被监控主机zabbix_agentd端口
templateid=10001                 #模板ID
groupid=2                             #需要加入的服务器组
zabbixhost='http://www.zabbix.com'     #zabbix主机地址

header='Content-Type:application/json'
request_data='{"jsonrpc" : "2.0","method" : "user.login","params" : {"user" : "admin" ,"password" : "zabbix"} ,"id" : 1 }'
result=$(curl -s -XPOST -H ${header} -d "${request_data}" ${zabbixhost}/api_jsonrpc.php)
token=$(echo $result|sed 's/.\+"result":"\([0-9a-z]\+\)".\+/\1/')

save_request_data='{"jsonrpc": "2.0","method": "host.create","params": {"host": "'${hostname}'","interfaces": [{"type": 1,"main": 1,"useip": 1,"ip": "'${ip}'","dns": "","port": "'${port}'"}],"groups": [{"groupid": "'${groupid}'"}],"templates": [{"templateid": "'${templateid}'"}]},"auth": "'${token}'","id": 1 }'

curl -s -XPOST -H ${header} -d "${save_request_data}" ${zabbixhost}/api_jsonrpc.php

相关内容

热门资讯

终于懂了“来来淮北麻将.怎么开... 有 亲,根据资深记者爆料来来淮北麻将是可以开挂的,确实有挂(咨询软件无需...
【第一财经】“牛魔王牛牛.真的... 家人们!今天小编来为大家解答牛魔王牛牛透视挂怎么安装这个问题咨询软件客服徽9784099的挂在哪里买...
今日重大通报“昆明文山麻将.开... 您好:昆明文山麻将这款游戏可以开挂,确实是有挂的,需要了解加客服微信【9752949】很多玩家在这款...
【第一资讯】“蜀友汇.到底是不... 【第一资讯】“蜀友汇.到底是不是挂?”太坑了果然有挂您好,蜀友汇这个游戏其实有挂的,确实是有挂的,需...
【第一资讯】“牵手跑胡子.是不... 网上科普关于“牵手跑胡子有没有挂”话题很是火热,小编也是针对牵手跑胡子作*弊开挂的方法以及开挂对应的...
终于懂了“白金岛.有没有挂?”... 您好:白金岛这款游戏可以开挂,确实是有挂的,需要了解加客服微信【4282891】很多玩家在这款游戏中...
玩家攻略科普“福州十八扑.辅助... 网上科普关于“福州十八扑有没有挂”话题很是火热,小编也是针对福州十八扑作*弊开挂的方法以及开挂对应的...
【第一消息】“新蛮王牛牛.真的... 【第一消息】“新蛮王牛牛.真的有挂吗?”太坑了原来有挂您好,新蛮王牛牛这个游戏其实有挂的,确实是有挂...
重磅消息“蛮族大厅.到底有挂吗... 重磅消息“蛮族大厅.到底有挂吗?”太坑了果然有挂您好,蛮族大厅这个游戏其实有挂的,确实是有挂的,需要...
最新引进“红豆炸金花.究竟有挂... 网上科普关于“红豆炸金花有没有挂”话题很是火热,小编也是针对红豆炸金花作*弊开挂的方法以及开挂对应的...