利用Zabbix部署onealert云告警平台
当我们部署好zabbix监控,为监控主机添加各种监控项完毕之后,如果一个主机出了问题,我们又怎么能在第一时间获得报警信息,然后及时处理问题呢?one alter云告警,是一种很不错的选择
实验环境
(一)使虚拟机可以联网
1.在真机上进行如下操作:
#试验连接baidu
[root@foundation66 zabbix]# ping www.baidu.com
#查看一下内核路由功能是否成功开启
[root@foundation66 zabbix]# sysctl -a | grep ip_forward
#查看一下防火墙是否成功开启
[root@foundation66 zabbix]# systemctl status firewalld
#开启防火墙
[root@foundation66 zabbix]# systemctl start firewalld
#开启路由功能
[root@foundation66 zabbix]# firewall-cmd --add-masquerade
(2)在server1上进行如下操作:
可以尝试ping www.baidu.com
#尝试访问www.baidu.com,发现成功访问
[root@server1 ~]# ping www.baidu.com
(二)配置云告警平台(注意:做此实验时,虚拟机要联网)
在浏览器中输入以下网址:http://www.onealert.com/并进行登陆,如果有则直接登陆,如果没有,注册一个,登陆即可
点击CA
点击集成,添加zabbix(点右上角的+号添加)
在Zabbix配置中填写应用名称后保存并获取应用key
之后会发现得到了应用KEY
在zabbix server上配置告警软件
在zabbix的监控告警目录下安装告警软件,官网下载相应的压缩包,需要联网,安装在该指定目录下,可以在zabbix-server的配置文件中查到报警的目录,如果不是该目录下会报错,警告不能及时到达。
[root@server1 zabbix]# vim /etc/zabbix/zabbix_server.conf
[root@server1 zabbix]# cd /usr/lib/zabbix/alertscripts
[root@server1 alertscripts]# tar zxf ca_zabbix_release-2.1.0.tar.gz
[root@server1 alertscripts]# ls
ca_zabbix_release-2.1.0.tar.gz cloudalert
[root@server1 alertscripts]# cd cloudalert/
[root@server1 cloudalert]# ls
[root@server1 cloudalert]# cd bin
[root@server1 bin]# ls
[root@server1 bin]# ./install.sh 95370abf-6b79-5cf7-141d-c8a530eea783
./log.sh: line 6: /usr/lib/zabbix/alertscripts/cloudalert/bin/cloudalert.conf: No such file or directory
start to create config file...
Zabbix管理地址: http://172.25.15.1/zabbix
Zabbix管理员账号: Admin
Zabbix管理员密码: (这里是隐藏的密码,默认是zabbix)
在web界面添加相应的告警媒介
- 步骤如下:
- 将其它消息介质类型都禁用掉,只留onealert
触发器启动告警条件
查看出现问题时的报警操作
onealert官网添加通知策略
测试报警接收
- 关闭server3主机的zabbix-agent服务,等待5分钟左右会出发报警。
[root@server3 ~]# systemctl stop zabbix-agent
- 在web界面查看server3的状态
认领之前,待处理
我选择的是报警微信提醒,所以微信公众号有给我发消息,我可以选择认领
认领之后,处理中
server3再次开启服务之后,web界面查看。
[root@server3 ~]# systemctl start zabbix-agent
之后就可以关闭警告