zabbix报警机制的实现
一飞信的实现:
首先下载飞信客户端:这里提供一个在附件里可以下载:
1
安装测试飞信机器人
测试
#/usr/local/feixin/fetion --mobile=159009XXXXX --pwd=XXXXX --to=15900959XXXXX --msg-utf8="
这是一条测试消息
"
检查手机是否收到消息
2
创建
sendsms.sh
短信发送脚本
#vim /usr/bin/sendsms.sh
文件内容为如下
:
#!/bin/sh
#send sms by fetion
#$1, $2, $3 mean Recipient, Subject and Message
/usr/local/fx/fetion --mobile=138176XXXXX --pwd=risghdhdn1 --to=$1 --msg-utf8="$2, $3"
保存后测试脚本
:
# chmod +x /usr/bin/sendsms.sh
# /usr/bin/sendsms.sh 138176XXXXX hello world
检查手机是否收到消息
3
、新增
zabbix
的
Media Type
登录到
zabbix
,进入“
Administration" >>
”
Media types"
,点击右上角“
Create Media Type"
。
Description
填
"Fetion"
或其它名称,
Type
选择
"Script"
,
Script
填”
sendsms.sh"
。
点击
"Save"
保存配置。
# vim /etc/zabbix/zabbix_server.conf
找到
AlertScriptsPath
参数并修改成
AlertScriptsPath=/usr/bin/
重启
zabbix-server
服务
4
、新增
zabbix
的
Actions
配置
登录到
zabbix
,进入
"Configation" >> "Actions"
,点击右上角
"Create Actions"
。
输入”
Name"
,其它都默认
点击右侧“
Action Operations"
下的
"New"
按钮,
"Operation Type"
选择
"Send message"
,
"Send Message to"
选择一个或多个要发送消息的用户组,”
Send only to"
选择我们之前新增的
Fetion
。
点击
"Save"
保存配置。
5
、
zabbix
用户配置
登录到
zabbix,
进入
"Adimistration" >> "Users"
,在之前选定要发送消息的组里的
Members
栏位里选择一个用户,例如选择
Admin
用户。
在用户信息修改界面最下方的”
Media"
处点击
"Add"
按钮。
Type
选择
"Fetion"
,
Send to
填入收信手机号码,其它参数按需修改,点击
Add
添加。
点击
"Save"
保存配置。
至此配置完成,触发一个警报试下手机是否收到讯息。
二:邮件的实现
一使用
msmtp
这个命令行
MUA
(1)./configure --prefix=/usr/local/msmtp
(2)make
(3)make install
(4)mkdir /usr/local/msmtp/etc
(5)touch /usr/local/msmtp/etc/msmtprc
(6)
在
/usr/local/msmtp/etc/msmtprc
中写入如下内容:
defaults
account 126
host smtp.126.com
domain 126.com
auth login
user test2126.com
password your_password
account default:126
logfile /var/log/maillog
二、在实际测试中发现直接使用
msmtp
命令发出去的邮件会看不到发件人和主题,只能看到邮件内容,所以我使用
mutt
挂接在
msmtp
上,
mutt
默认会安装,如果没有安装请
yum install mutt*
(1)
修改
mutt
的配置文件
/etc/Muttrc,
不是
/etc/muttrc
,
M
要大写
1
.
set sendmail="/usr/local/msmtp/bin/msmtp"
2
.
set use_from=yes
4
.
set editor="vi"
5
.保存退出
三创建
zabbix
用于发送邮件的脚本
,
脚本放在什么位置随便,但是要保证
zabbix
能找到!
(1)vim /usr/bin/baojing,
并写入如下内容:
#!/bin/bash
echo "$3" | mutt -s "$2" $1 # $3
表示邮件内容、
$2
表示邮件标题、
$1
表示收件人
(2)chmod a+x /usr/bin/baojing
四、
zabbix
配置
(1)
创建
meida types
1
.登录到
zabbix
,进入“
Administration" >>
”
Media types"
,点击右上角“
Create Media Type"
。
Description
填
"mediatype-baojing"
或其它名称,
Type
选择
"Script"
,
Script
填”
baojing
”。
2
.点击
save
保存
(2)
创建
actions
1.
登录到
zabbix
,进入
"Configation" >> "Actions"
,点击右上角
"Create Actions"
。输入
Name
“
action-baojing
”
,其它都默认点击右侧“
Action Operations"
下的
"New"
按钮,
"Operation Type"
选择
"Send message"
,
"Send Message to"
选择一个或多个要发送消息的用户组,”
Send only to"
选择我们之前新增的
mediatype-baojing
。
2.
点击
save
保存
(3) zabbix
用户配置
登录到
zabbix,
进入
"Adimistration" >> "Users"
,在之前选定要发送消息的组里的
Members
栏位里选择一个用户,例如选择
Admin
用户
在用户信息修改界面最下方的”
Media"
处点击
"Add"
按钮。
Type
选择
"mediatype-baojing"
,
Send to
填入收件人地址,点击
Add
添加。
点击
"Save"
保存配置。
至此配置完成,测试!
不光是
zabbix,nagios
等监控平台的邮件报警都可以这样配置。当然转到
139
邮箱的话可以收到短信的,会更加及时的收到报警
三:公司内部短信通道的设置:
这里只用定义个脚本触发脚本向短信服务器发送短信:其他的部分不变