Zabbix分布式开源监控系统(五)——通过API接口管理Zabbix所监控主机(实践篇)

API常用接口:

user.login,用户登录
host.get(create|delete|update),主机操作
hostgroup.get(create|delete|update),主机组操作
item.get(create|delete|update),监控项目操作
history.get,历史数据查询
event.get,事件查询
trigger.get,触发器查询

具体实现

1.获取身份令牌

在访问Zabbix内部的任何数据之前,需要登录并获得身份验证令牌。可以使用user.login方法来完成

如果以标准ZabBix的Admin用户登录。那么JSON请求将是这样的:

[root@server1 ~]# vim zabbix-api
[root@server1 ~]# cat zabbix-api 
curl  -s -XPOST -H 'Content-Type: application/json-rpc' -d '     
  ##-s 静默模式,不输出任何东西;curl默认的HTTP动词是GET,使用`-X`参数可以支持其他动词
{
    "jsonrpc": "2.0",        ##标准的JSON RPC参数以标示协议版本
    "method": "user.login",  ##获取接口方法名
    "params": {
        "user": "Admin",      
        "password": "zabbix"  ##zabbix系统监控的用户名和密码
    },
    "id": 1,
    "auth": null              ##用户的身份令牌,因为还没有获取所以为null。
}' http://192.168.122.101/zabbix/api_jsonrpc.php | python -m json.tool
 ###python..将其标准化输出  
 ##使用post方法向该网址发送此json对象,api_jsonrpc.php是调用api的php脚本,可以安装可视化前端目录查看
[root@server1 ~]# chmod +x zabbix-api 
[root@server1 ~]# ./zabbix-api      

在这里插入图片描述
Zabbix分布式开源监控系统(五)——通过API接口管理Zabbix所监控主机(实践篇)_第1张图片
2.检索被检控的主机(通过名称获取数据)
使用host.get方法来获取主机。
利用刚才获取的身份令牌,访问zabbix中的数据,下面实现host.get方法检索所有已配置主机的ID,主机名及其接口。

[root@server1 ~]# cat zabbix-api 
curl  -s -X POST -H 'Content-Type: application/json-rpc' -d '     
{
    "jsonrpc": "2.0",
    "method": "host.get",
    "params": {
        "output": ["host"]
    },
    "auth": "9seaa58668b47oc994856904c5f04c5f04d19",
    "id": 1
}' http://192.168.122.101/zabbix/api_jsonrpc.php | python -m json.tool
[root@server1 ~]# ./zabbix-api 

Zabbix分布式开源监控系统(五)——通过API接口管理Zabbix所监控主机(实践篇)_第2张图片
3 删除监控中的主机
使用host.delete方法来删除主机。

curl  -s -X POST -H 'Content-Type: application/json-rpc' -d '     
{
    "jsonrpc": "2.0",
    "method": "host.delete",
    "params": [
        "10264"
    ],
    "auth": "9seaa58668b47oc994856904c5f04c5f04d19",
    "id": 1
}' http://192.168.122.101/zabbix/api_jsonrpc.php | python -m json.tool

上篇实验我们最后不是做了个自动注册嘛,要先停用它,不然删除了又注册上去了!!

xxxx

xxxxx

你可能感兴趣的:(Zabbix分布式开源监控系统(五)——通过API接口管理Zabbix所监控主机(实践篇))