1.查看zabbix监控系统的api接口
在可以访问Zabbix内部的任何数据之前,需要登录并获得身份验证令牌。这可以使用user.login
方法来完成。假想以标准Zabbix的Admin用户登录。那么JSON请求将是这样的:
[root@server5 ~]# vim zabbix-api.sh
curl -s -X POST -H 'Content-Type:application/json' -d '
{
"jsonrpc": "2.0",
"method": "user.login",
"params": {
"user": "Admin",
"password": "westos"
},
"id": 1,
"auth": null
}' http://172.25.0.121/zabbix/api_jsonrpc.php | python -m json.tool
[root@server5 ~]# chmod +x zabbix-api.sh
[root@server5 ~]# ./zabbix-api.sh
2.查看主机信息
现在,我们有一个有效的用户认证令牌,可以用来访问Zabbix中的数据。例如,让我们使用host.get
方法检索所有配置主机的ID、主机名和接口:
[root@server5 ~]# vim zabbix-api.sh
curl -s -X POST -H 'Content-Type:application/json' -d '
{
"jsonrpc": "2.0",
"method": "host.get",
"params": {
"output": ["host"]
},
"id": 1,
"auth": "b3ea43722fa8791102d844e4a9e4fe71"
}' http://172.25.0.121/zabbix/api_jsonrpc.php | python -m json.tool
[root@server5 ~]# ./zabbix-api.sh
3.删除zabbix监控中的主机
通过host.delete
方法
[root@server5 ~]# vim zabbix-api.sh
curl -s -X POST -H 'Content-Type:application/json' -d '
{
"jsonrpc": "2.0",
"method": "host.delete",
"params": [
"10256"
],
"id": 1,
"auth": "b3ea43722fa8791102d844e4a9e4fe71"
}' http://172.25.0.121/zabbix/api_jsonrpc.php | python -m json.tool
[root@server5 ~]# ./zabbix-api.sh
4.在zabbix监控中创建被监控主机
通过host.create
方法
[root@server5 ~]# vim zabbix-api.sh
curl -s -X POST -H 'Content-Type:application/json' -d '
{
"jsonrpc": "2.0",
"method": "host.create",
"params": {
"host": "server4",
"interfaces": [
{
"type": 1,
"main": 1,
"useip": 1,
"ip": "172.25.0.119",
"dns": "",
"port": "10050"
}
],
"groups": [
{
"groupid": "2"
}
],
"templates": [
{
"templateid": "10001"
}
]
},
"id": 1,
"auth": "b3ea43722fa8791102d844e4a9e4fe71"
}' http://172.25.0.121/zabbix/api_jsonrpc.php | python -m json.tool
[root@server5 ~]# ./zabbix-api.sh
打开zabbix管理界面,发现server4添加成功
1.添加http模块
2.zabbix-server添加mysql模块
[root@server5 ~]# cd /var/lib/
[root@server5 lib]# mkdir zabbix
[root@server5 lib]# cd zabbix/
[root@server5 zabbix]# vim .my.cnf
[mysql]
user=root
password=westos
socket=/var/lib/mysql/mysql.scok
[mysqladmin]
user=root
password=westos
socket=/var/lib/mysql/mysql.scok
[root@server5 zabbix]# systemctl restart zabbix-agent
添加完成