目录
前言
实验环境
:server1、2、3三台虚拟机,server1为zabbix-server主机,server2、3为zabbix-agent主机。
一、云报警
1.宿主机:设置火墙
2.server1检测能上网
3.打开浏览器,进入睿象云,注册账号并绑定邮箱
CA ---->集成---->监控工具
进入此页面
4.生成Appkey
5.进入报警文件读取目录
(1) 解压云报警插件,进入解压目录
cd /usr/lib/zabbix/alertscripts
(2) 执行安装./install.sh
脚本,后跟AppKey
输入账号Admin,初始密码为zabbix进行认证
(3) zabbix web应用中禁用报警媒介类型
管理---->报警媒介类型----> 禁用
(4) 进入配置---->动作, 进入Cloud Alert Action 启用并更新动作
(5) 睿象云配置通知策略, 选择新建通知策略。设置通知策略为微信,邮箱和短信,并绑定微信,点击保存
(6) server3禁用一个触发器
6.server2关闭agent服务
7.在web端zabbix查看
8.睿象云报警认领
9.收到报警(微信,邮箱,短信)
10.重启服务server2 agent服务
web端问题状态显示 已解决
11.收到报警 (短信,邮件和微信)
12.睿象云查看,也可查看新奇事件
二、API调用
zabbix api 官方参考文档:https://www.zabbix.com/documentation/4.0/zh/manual/api
api可批量对zabbix进行操作,此处只演示单点操作
1.获取身份验证令牌
[root@server1 ~]# curl -s -XPOST http://172.25.28.1/zabbix/api_jsonrpc.php -H 'Content-Type: application/json-rpc' -d '
> {
> "jsonrpc": "2.0",
> "method": "user.login",
> "params": {
> "user": "Admin",
> "password": "zabbix"
> },
> "id": 1,
> "auth": null
> }
> ' |python -m json.tool
2.检索主机
[root@server1 ~]# vim zabbix.api
curl -s -XPOST http://172.25.28.1/zabbix/api_jsonrpc.php -H 'Content-Type: application/json-rpc' -d '
{
"jsonrpc": "2.0",
"method": "host.get",
"params": {
"output": [
"hostid",
"host"
],
"selectInterfaces": [
"interfaceid",
"ip"
]
},
"id": 2,
"auth": "dd2e8acadb0966d0ec4a762057adeda2"
}' | python -m json.tool
[root@server1 ~]# sh zabbix.api
3.删除主机
[root@server1 ~]# vim Zabbix.api
curl -s -XPOST http://172.25.28.1/zabbix/api_jsonrpc.php -H 'Content-Type: application/json-rpc' -d '
{
"jsonrpc": "2.0",
"method": "host.delete",
"params": [
"10270" #web端查看server3
],
"id": 2,
"auth": "dd2e8acadb0966d0ec4a762057adeda2"
}' | python -m json.tool
响应
web查看 server3已经被删除
4.添加主机
[root@server1 ~]# vim Zabbix.api
curl -s -XPOST http://172.25.28.1/zabbix/api_jsonrpc.php -H 'Content-Type: application/json-rpc' -d '
{
"jsonrpc": "2.0",
"method": "host.create",
"params": {
"host": "server3",
"interfaces": [
{
"type": 1,
"main": 1,
"useip": 1,
"ip": "172.25.28.3",
"dns": "",
"port": "10050"
}
],
"groups": [
{
"groupid": "2"
}
],
"templates": [
{
"templateid": "10001"
}
]
},
"id": 2,
"auth": "dd2e8acadb0966d0ec4a762057adeda2"
}' | python -m json.tool
响应
web查看 server3已经建立