zabbix小结(十)zabbix告警与维护配置

zabbix的告警通知非常灵活,支持的通知类型有Email、Jabber、sms、script 。其在设备需要修护时,同样可以提供同nagios 一样的设备维护期间,暂停告警的功能有,而且其相对于nagios 更加灵活。本篇就针对zabbix的告警和设备维护功能进行下说明。

一、media types 告警通知

本篇以脚本通知为例进行说明

1、配置AlertScriptsPath

 # vim /etc/zabbix/zabbix_server.conf
找到# AlertScriptsPath=${datadir}/zabbix/alertscripts 行,增加如下内容
AlertScriptsPath=/etc/zabbix/alertscripts

配置完成后,需要重启zabbix_server服务生效,在后面media type 写入的脚本名称就会从上面的配置目录中查找并执行。

2、创建media type

步骤为:登录 zabbix web 页面------Administration--------Media types--------Create Media Type(右上角)  ,如下图:

mediatype

配置完成后,save保存即可。

3、创建Action

步骤为:登录 zabbix web 页面---- Configuration ---- Actions ---- Create action , 如下图

createaction

subject为发送主题,message为发送内容(通过message内容的自定义,可以例如在告警时,将其他相关信息也进行通知,可以从侧面了解整个主机的运行情况---某次面试时面试官曾提过的需求),这两者的内容都可以很方便的进行更改。勾选了Recovery message 选项,会在监控项恢复时也会给一个恢复的提示。

conditions

condeitions 选项中设置的是触发通知的条件,默认情况下只有A、B两项 ,这里可以设置触发级别、主机组、主机、触发值、应用等 。举例说明下:

1、可以根据告警级别进行通知,如severity 级别大于等于average时,通知OPS运维人员,级别为Disater时通知部门经理或者BOSS (这需要配置两个action);

2、也可以根据时间进行定义,如只在工作时间进行告警通知;

3、如果你喜欢的话,也可以指定不同主机组通知到不同的人;

而且所有条件之间的关系可以是AND或者OR ,默认情况下都是AND,即所有条件都满足时,触发通知

注:个别主机,如DB主机,晚上有备份任务导致晚上某段时间过载(同时又不是所有主机都这样,又不想增大触发条件的话),可以在configuation ---hosts 里的items 选项里配置通知的时间范围,那里也有 time period 配置选项(从另一方面也反映了zabbix的灵活,有宏观调控,也有微观调控,适用性很强) 。不过要尽可能的都在actions 里进行配置,因为这一般查看具体条件都是在这里 。

下图是action的Operations部分,该项是必填项: 

operations

Operation details 是一个比较强的配置项,这里主要有三个知识点---Escalations、remote command 和 event acknowledged,其中Escalations、remote command比较重要 。

operation details 的 step部分主要和escalations 相关,在监控场景中,如果你一天收到100+的短信告警,真有一天“狼”真来了估计你也不会注意到。有了escalations功能,可以实现如下配置(需配置多条operation):

1、在单位时间内(step duration)发送的总的通知次数(to - from +1  次),并通知到相应的组或人;

2、假如条件1中设置的是1800秒内发送1-5 次给OPS运维人员,结果运维人员在该时间段未能处理;我们就可以再增加一个Operations,指定from 5 to 10 (第5到10条告警)通知给 运维经理 ;我们还可以再增加,第11-15条给BOSS ,第16-20条告警时执行一个远程命令。

escalations部分,可以参看官方文档

第二个知识点就是Operation type部分,类型可以是send message进行通知,也可以是remote command :

remote command 可以支持的操作有IPMI、Custom script、ssh、telnet、Global script (其中前两者只能在zabbix server 或 zabbix proxy上操作),该功能是相当牛B的。如,检测到一个tomcat 服务404,我们就可以利用该功能重启tomcat 服务 。

remote command部分可以查看官方页面

第三个功能主要是为有值班人员或上班时间准备的一个功能,当设置这个条件时,如果一个告警的状态被设置为ACK ,则本次告警的后续通知就会停止 。

ack

在一线运维人员接到告警信息时,在zabbix 的首页上,移到相应告警提示的部分,选择主机的ACK 部分 ,点选 NO ,会跳出一个message的窗口,在message里输入相关信息 ,如:误报、因什么什么原因在调试、已通知到相关责任人等 ,并点击Acknowledge 提交,此时的ACK 状态会变成YES 。本次告警也将停止不再进行。直到本次告警解决,下次再次出现同样告警时,该项又会重新变成ACK 。

Acknowledge部分,可以参看官文页面

二、maintenance 维护

在线场景中,经常会遇到这样的情况:在线产品需要进行升级或其他操作,此时又不想将监控系统的完整告警功能进行全部关闭,只临时关闭在线升级主机的告警。这就可以使用zabbix的maintenance功能。具体配置方式如下:

创建maintenance的步骤为:登录 zabbix web 页面---- Configuration-----Maintenance ----- create maintenance period ,如下图所示:

maintenance

第一选项卡配置的是任务名和一个大范围的时间值,其指定了维护所在的磊的时候段在什么范围。maintenance type 指定在维护期间是否仍进行数据搜集。 

periods

periods指定的时间段具体的维护时间段,和maintenace中的范围为包含关系。而period type指定了执行的类型,其类型有one time only 一次执行,也有按日、星期或月定期执行 ,如果是后三种方式,date项会变成具体的间隔、开始时间 。无论是何种类型,都有maintenance period length型 ,其指定了具体每次维护的持续时间,如2小时。

hosts & groups 项太多内容,就是选择某组主机或某个主机在维护期间不进行告警通知。




本站的发展离不开您的资助,金额随意,欢迎来赏!

You can donate through PayPal.
My paypal id: itybku@139.com
Paypal page: https://www.paypal.me/361way

分类: 开源软件 标签:
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.