Zabbix实战--Zabbix基于邮件告警配置
参考样例:http://www.roncoo.com/course/view/fb3050a5b34b42f39ccad83ebebc89c1
龙果运维平台开源地址:https://github.com/roncoo/roncoo-cmdb
一、软件版本
操作系统:CentOS-6.5-x86_64
zabbix版本:3.0.3
二、zabbix执行告警动作流程:
Item ---》触发器--》动作--》(邮件还是命令)--》媒介(脚本还是第三方)-->发送邮件
监控第一步骤,我们从最底层开始-->先添加媒介(因为没有邮件服务器,所以我们选择脚本):
三、添加脚本、测试是否能够发送邮件:
1、修改zabbx_server.conf文件,指定脚本路径,没有则添加:
AlertScriptsPath=/usr/local/zabbix/alertscripts
2、在/usr/local/zabbix/alertscripts下创建发送邮件脚本:
[root@BJ-monitor-h-01 alertscripts]# cat zabbix_sendmail.py
#!/usr/bin/python
#coding:utf-8
import smtplib
from email.mime.text import MIMEText
import sys
#邮箱服务器地址
mail_host = 'smtp.163.com'
#邮箱用户名
mail_user = 'xxx'
#邮箱密码
mail_pass = 'xxxx'
mail_postfix = '163.com'
def send_mail(to_list,subject,content):
me = mail_user+"
msg = MIMEText(content)
msg['Subject'] = subject
msg['From'] = me
msg['to'] = to_list
try:
s = smtplib.SMTP()
s.connect(mail_host)
s.login(mail_user,mail_pass)
s.sendmail(me,to_list,msg.as_string())
s.close()
return True
except Exception,e:
print str(e)
return False
if __name__ == "__main__":
send_mail(sys.argv[1], sys.argv[2], sys.argv[3])
3、测试看脚本是否能够发送成功邮件:
python zabbix_sendmail.py '942729042@qq.com' 'TEST' 'TEST FOR MALL'
不出意外应该是能够收到邮件的:
四、添加媒介类型:
1、添加脚本为媒介类型:
管理--》示警媒介--》新建示警媒介:
备注:
名称:python_sendmail (名称可以随意指定,后期调用)
类型:脚本
脚本名称:zabbix_sendmail.py
添加脚本参数(在3.0版本之前默认传值不用添加):
{ALERT.SENDTO} ####发送地址
{ALERT.SUBJECT} ###主题
{ALERT.MESSAGE} ###发送内容
五、添加用户操作命令,发送给谁,什么时间发送:
1、步骤:
管理--》用户--》admin-->报警示警媒介--》创建示警媒介:
2、添加用户操作:
备注:
类型选择添加的示警媒介名称,
收件人表示要发送到哪个地方:
启用时间:表示可以发送邮件的时间段。
六:添加要执行的动作:
1、步骤:
配置--》动作--》添加触发器动作:
2、动作选择项:
定义动作名称、使用默认选项,然后勾选恢复通知和已启用。
条件选择默认即可
操作主要定义发送步骤,选择发送用户和发送脚本:
操作步骤定义(时间假如我定义为60s):然后操作不走选择1-2说明前面120两次发送的告警都会发送到zabbix这个用户,要是再添加一个用户发送邮件到不同的人,步骤可以选择3-4,这样就实现了告警升级。
3、操作图:
4、备注:操作类型:可以是发送命令或者邮件。例如操作命令可以在监控服务的适合发送一条restart命令重启服务(LogRemoteCommands=1要agent开启这个)。
总结:到此一个简单的告警邮件已经完成,大家可以做一下扩展测试。
关注公众号:
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Spring Boot入门
Spring官方网站本身使用Spring框架开发,随着功能以及业务逻辑的日益复杂,应用伴随着大量的XML配置文件以及复杂的Bean依赖关系。随着Spring 3.0的发布,Spring IO团队逐渐开始摆脱XML配置文件,并且在开发过程中大量使用“约定优先配置”(convention over configuration)的思想来摆脱Spring框架中各类繁复纷杂的配置(即时是Java Config)。 Spring Boot正是在这样的一个背景下被抽象出来的开发框架,它本身并不提供Spring框架的核心特性以及扩展功能,只是用于快速、敏捷地开发新一代基于Spring框架的应用程序。也就是说,它并不是用来替代Spring的解决方案,而是和Spring框架紧密结合用于提升Spring开发者体验的工具。同时它集成了大量常用的第三方库配置(例如Jackson, JDBC, Mongo, Redis, Mail等等),Spring Boot应用中这些第三方库几乎可以零配置的开箱即用(out-of-the-box),大部分的Spring Boot应用都只需要非常少量的配置代码,开发者能够更加专注...
- 下一篇
基于Spring Boot和Spring Cloud实现微服务架构
前言: 首先,最想说的是,当你要学习一套最新的技术时,官网的英文文档是学习的最佳渠道。因为网上流传的多数资料是官网翻译而来,很多描述的重点也都偏向于作者自身碰到的问题,这样就很容易让你理解和操作出现偏差,最开始我就进入了这样误区。官网的技术导读真的描述的很详细,虽然对于我们看英文很费劲,但如果英文不是很差,请选择沉下心去读,你一定能收获好多。我的学习是先从Spring boot开始的,然后接触到微服务架构,当然,这一切最大的启迪还是感谢我的一个老师,是他给我指明了新的道路,让我眼前一亮,再次感谢。 Spring 顶级框架 谈及微服务,作为当前主流的企业框架Spring,它提供了一整套相关的顶级项目,能让开发者快速的上手实现自己的应用,今天就介绍下Spring旗下各个顶级项目: Spring IO platform:用于系统部署,是可集成的,构建现代化应用的版本平台,具体来说当你使用maven dependency引入spring jar包时它就在工作了。 Spring Boot:旨在简化创建产品级的 Spring 应用和服务,简化了配置文件,使用嵌入式web服务器,含有诸多开箱即用微服...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8编译安装MySQL8.0.19
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Windows10,CentOS7,CentOS8安装Nodejs环境
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- 设置Eclipse缩进为4个空格,增强代码规范
- MySQL8.0.19开启GTID主从同步CentOS8