如何使用API自动增加Zabbix监控主机-创新互联
背景
创新互联-专业网站定制、快速模板网站建设、高性价比资溪网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式资溪网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖资溪地区。费用合理售后完善,十余年实体公司更值得信赖。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
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
当前文章:如何使用API自动增加Zabbix监控主机-创新互联
网站网址:http://ybzwz.com/article/cospod.html