zabbix使用之打造邮件报警
前言:
报警信息很重要,它能使我们最快的知道故障内容,以便于及时处理问题。zabbix如果没配置报警功能,则完全不能体现zabbix的优势了
配置详情如下:
1.编写发送邮件脚本:
cat /usr/local/zabbix/share/zabbix/alertscripts/sendEmail.sh
#!/bin/bash to=$1 subject=$2 body=$3 /usr/local/bin/sendEmail -f xxxxx@163.com -t "$to" -s smtp.163.com -u "$subject" -o message-content-type=html -o message-charset=utf8 -xu xxxx@163.com -xp xxxxxxxxx -m "$body"
sendEmail说明:
#安装 #sendEmail是一个轻量级,命令行的SMTP邮件客户端。如果你需要使用命令行发送邮件,那么sendEmail是非常完美的选择:使用简单并且功能强大.这个被设计用在php、bash perl和web站点使用。 #1.下载软件 #wget http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz #2.创建目录 #mkdir /usr/local/bin #3.解压软件 #tar zxf sendEmail-v1.56.tar.gz -C /usr/src #4.进入目录 #cd /usr/src/sendEmail-v1.56 #5.复制文件,并设置权限 #cp -a sendEmail /usr/local/bin #chmod +x /usr/local/bin/sendEmail #6.安装组件 #yum install perl-Net-SSLeay perl-IO-Socket-SSL -y #7.配置环境变量或者做软连接 #命令说明: #/usr/local/bin/sendEmail 命令主程序 #-f from@163.com 发件人邮箱 #-t to@163.com 收件人邮箱 #-s smtp.163.com 发件人邮箱的smtp服务器 #-u "我是邮件主题" 邮件的标题 #-o message-content-type=html 邮件内容的格式,html表示它是html格式 #-o message-charset=utf8 邮件内容编码 #-xu from@163.com 发件人邮箱的用户名 #-xp 123456 发件人邮箱密码 #-m "我是邮件内容" 邮件的具体内容 #-l /var/log/sendMyEmail.log 非必输项,邮件发送日志记录到日志文件 #-a /root/sss.jpg 添加附件 #-o tls=no 由于在CentOS 7下perl的版本为5.16,而centos6.5的是5.10,版本不兼容,增加参数-o tls=no 选项,解决问题
2.修改zabbix_server配置文件
cat /usr/local/zabbix/etc/zabbix_server.conf | grep -Ev "^#|^$"
LogFile=/tmp/zabbix_server.log DBHost=127.0.0.1 DBName=xxx DBUser=root DBPassword=xxxx DBPort=xxxx StartPollers=10 StartDiscoverers=5 Timeout=4 AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts LogSlowQueries=3000
3.重启zabbix_server
4.配置zabbix web界面