zabbix4.4对接阿里云短信告警

zabbix短信告警配置

开启阿里云短信服务

添加签名

zabbix4.4对接阿里云短信告警_第1张图片

申请模板

zabbix4.4对接阿里云短信告警_第2张图片

获取AccessKey

zabbix4.4对接阿里云短信告警_第3张图片
创建完成之后一定要记录AccessKeySecret,之后不会再显示,除非新建一个AccessKeyID

配置Python脚本

#!/usr/bin/python
#coding=utf-8


from aliyunsdkcore.client import AcsClient
from aliyunsdkcore.request import CommonRequest
import sys
client = AcsClient('', '', 'cn-hangzhou') #注:在输入AK时需要将<>符号去掉,否则会报AK错误

request = CommonRequest()
request.set_accept_format('json')
request.set_domain('dysmsapi.aliyuncs.com')
request.set_method('POST')
request.set_protocol_type('https') # https | http
request.set_version('2017-05-25')
request.set_action_name('SendSms')
string = sys.argv[2]
phone_number = sys.argv[1]
message = string.split(";")
print(message)
dict1 = { }
dict1['host'] = message[0]
dict1['time'] = message[1]
dict1['item'] = message[2][0:18]
request.add_query_param('RegionId', 'cn-hangzhou')
request.add_query_param('PhoneNumbers', phone_number)
request.add_query_param('SignName', '签名名称')
request.add_query_param('TemplateCode', '模板code')
request.add_query_param('TemplateParam', dict1)

response = client.do_action(request)
# python2:  print(response)
print(str(response, encoding='utf-8'))

配置完脚本后,需赋予执行权限并修改所属用户和组为zabbix

配置web端

添加新报警类型
{ALERT.SENDTO}
{ALERT.MESSAGE}

zabbix4.4对接阿里云短信告警_第4张图片

为用户设定报警媒介

zabbix4.4对接阿里云短信告警_第5张图片

配置动作

触发条件根据需求配置
zabbix4.4对接阿里云短信告警_第6张图片
配置动作和消息模板

默认标题:
服务器:{HOST.IP}发生:{TRIGGER.NAME}故障!
消息内容:
{HOST.IP};{EVENT.TIME};{ITEM.NAME}

zabbix4.4对接阿里云短信告警_第7张图片
这里就不进行测试了,最简单的方式就是重启服务器,手机便可收到短信通知

你可能感兴趣的:(zabbix)