1:实现Zabbix报警功能
2:Zabbix自动发现
3:Zabbix主动监控
4:拓扑图与聚合图形
5:自定义监控案例
一:创建触发器规则
1)创建触发器
创建触发器时强烈建议使用英文的语言环境,通过Configuration–> Templates,找到我们之前创建的count.line.passwd模板,点击模板后面的triggers,
2)触发器表达式
创建触发器时需要定义表达式,触发器表达式(Expression)是触发异常的条件,触发器表达式格式如下:
{:.()}
{主机:key.函数(参数)}<表达式>常数
3)配置触发器设置触发器名称,如图-3所示,点击add添加表达式,填写表达式:监控项为账户数量,最近300秒账户数量大于26(根据系统账户数量实际填写)
选择触发器报警级别,Add创建该触发器
步骤二:设置邮件
1)创建Media
通过Administration(管理)–>Media Type(报警媒体类型)–>选择Email(邮件)
设置邮件服务器信息,设置邮件服务器及邮件账户信息,
为用户添加Media
在Administration(管理)–>Users(用户)中找到选择admin账户
点击Admin账户后,在弹出的界面中选择Media(报警媒介)菜单–>点击Add(添加)报警媒介
点击Add(添加)后,在Meida Type中填写报警类型,收件人,时间等信息
步骤三:创建Action动作
1)Action动作
Action(动作)是定义当触发器被触发时的时候,执行什么行为。
通过Configuration(配置)–>Actions(动作)–>Create action(创建动作)
配置Action动作的触发条件
填写Action动作的名称,配置什么触发器被触发时会执行本Action动作(账户数量大于26)
配置Action动作的具体行为
配置动作的具体操作行为(发送信息或执行远程命令),无限次数发送邮件,60秒1次,发送给Admin用户
测试效果
在被监控主机创建账户(让账户数量大于26),然后登录监控端Web页面,在仪表盘中查看问题报警(需要等待一段时间),
查看报警邮件,在监控服务器上使用mail命令查收报警邮件
Zabbix自动发现
步骤一:自动发现规则
1)创建自动发现规则
通过Configuration(配置)–>Discovery(自动发现)–>Create discovery rule(创建发现规则)
填写规则
填写自动发现的IP范围(逗号隔开可以写多个),多久做一次自动发现(默认为1小时,仅实验修改为1m),如图-19所示。配置检查的方式:Ping、HTTP、FTP、Agent的自定义key等检查
步骤二:创建动作
1)创建Action动作
通过Configuration(配置)–> Actions Event source(事件源):自动发现(Discovery)–>Create action(创建动作)
点击操作(触发动作后要执行的操作指令),操作细节:添加主机到组,与模板链接(HTTP模板)
骤一:添加被监控主机
1)为被监控主机安装部署zabbix agent
注意:前面的实验,我们已经在zabbixclient_web2主机安装部署了zabbix agent,如果已经完成,则如下操作可以忽略。
[root@zabbixclient_web2 ~]# yum -y install gcc pcre-devel
[root@zabbixclient_web2 ~]# tar -xf zabbix-3.4.4.tar.gz
[root@zabbixclient_web2 ~]# cd zabbix-3.4.4/
[root@zabbixclient_web2 ~]#./configure --enable-agent
[root@zabbixclient_web2 ~]# make && make install
2)修改agent配置文件
将agent监控模式修改为主动模式。
root@zabbixclient_web2 ~]# vim /usr/local/etc/zabbix_agentd.conf
#Server=127.0.0.1,192.168.2.5
//注释该行,允许谁监控本机
StartAgents=0
//被动监控时启动多个进程
//设置为0,则禁止被动监控,不启动zabbix_agentd服务
ServerActive=192.168.2.5
//允许哪些主机监控本机(主动模式),一定要取消127.0.0.1
Hostname=zabbixclient_web2
//告诉监控服务器,是谁发的数据信息
//一定要和zabbix服务器配置的监控主机名称一致(后面设置)
RefreshActiveChecks=120
//默认120秒检测一次
UnsafeUserParameters=1
//允许自定义key
Include=/usr/local/etc/zabbix_agentd.conf.d/
[root@zabbixclient_web2 ~]# killall zabbix_agentd //关闭服务
[root@zabbixclient_web2 ~]# zabbix_agentd //启动服务
步骤二:创建主动监控的监控模板
克隆Zabbix自动的监控模板
为了方便,克隆系统自带模板(在此基础上就该更方便)。
通过Configuration(配置)–>Templates(模板)–>选择Template OS Linux
–>全克隆,克隆该模板,新建一个新的模板。
2)修改模板中的监控项目的监控模式
将模板中的所有监控项目全部修改为主动监控模式,通过Configuration(配置)–>Templates(模板)–>选择新克隆的模板,点击后面的Items(监控项)–>点击全选,选择所有监控项目,点击批量更新,将类型修改为:Zabbix Agent(Active主动模式),
3)禁用部分监控项目
批量修改监控项的监控模式后,并非所有监控项目都支持主动模式,批量修改后,会发现有几个没有修改主动模式成功,说明,这些监控项目不支持主动模式,关闭即可。
可以点击类型排序,方便操作,点击状态即可关闭。
步骤三:添加监控主机
1)手动添加监控主机(主动模式监控)
在Zabbix监控服务器,添加被监控的主机(主动模式),设置主机名称:zabbixclient_web2 (必须与被监控端的配置文件Hostname一致),将主机添加到Linux servers组,IP地址修改为0.0.0.0,端口设置为0,
为主机添加监控模板,选择刚刚创建的模板(主动模式),添加链接模板到主机
验证监控效果
查看数据图表,通过Monitoring–>Graphs菜单,选择需要查看的主机组、主机以及图形,查看效果
CPU、内存等其他数据可用正常获取,但是,查看分区图表时并无数据,因为分区数据采用的是自动发现监控,与普通监控项一样,修改为主动模式即可,选择Template OS Linux ServerActive模板,修改Discovery自动发现为主动模式
拓扑图与聚合图形
步骤一:创建拓扑图
1)创建拓扑
绘制拓扑图可以快速了解服务器架构,通过Monitoring(监控中)–>Maps(拓扑图),选择默认的Local network拓扑图,编辑即可(也可以新建一个拓扑图)
Icon(图标),添加新的设备后可以点击图标修改属性
Shape(形状)
Link(连线),先选择两个图标,再选择连线
完成后,点击Update(更新)创建完拓扑图
二创建聚合图形
1)创建聚合图形
聚合图形可以在一个页面显示多个数据图表,方便了解多组数据。
通过Monitoring(监控中)–>Screens(聚合图形)–>Create screen(创建聚合图形)即可创建聚合图形,
Owner:使用默认的Admin用户
Name:名称设置为zabbixclient_web2_host
Columns:列数设置为2列
Rows:行数设置为4行
2)为聚合图形中添加监控图形
选择刚刚创建的聚合图形(zabbixclient_web2_host),点击后面的构造函数(constructor),点击Change(更改),设置每行每列需要显示的数据图表