• zabbix邮件报警和微信报警


    配置zabbix邮件报警和微信报警。

    一、邮件报警

    1. 配置报警媒介类型

    在这里插入图片描述
    在这里插入图片描述
    点击更新后,再次点击测试
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述
    测试成功

    2. 创建用户

    创建用户组并设置权限

    在这里插入图片描述
    在这里插入图片描述

    创建用户

    在这里插入图片描述

    添加报警媒介

    在这里插入图片描述

    设置权限

    在这里插入图片描述
    在这里插入图片描述

    3. 配置动作

    1.创建主机组

    在这里插入图片描述

    2.创建模板

    在这里插入图片描述

    3.创建监控项

    客户端

    [root@node1 ~]# vim /etc/zabbix/zabbix_agent2.conf
    ###Option: UnsafeUserParameters
    #Allow all characters to be passed in arguments to user-defined parameters.
    #The following characters are not allowed:
    #\ ' " ` * ? [ ] { } ~ $ ! & ; ( ) < > | # @
    #Additionally, newline characters are not allowed.
    #0 - do not allow
    #1 - allow
    #
    #Mandatory: no
    #Range: 0-1
    #Default:
    #UnsafeUserParameters=0
    UnsafeUserParameters=1
    ###Option: UserParameter
    #User-defined parameter to monitor. There can be several user-defined parameters.
    #Format: UserParameter=,
    #See 'zabbix_agentd' directory for examples.
    #
    #Mandatory: no
    #Default:
    #UserParameter=
    UserParameter=os.login,who | wc -l
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23

    在这里插入图片描述

    5.创建触发器

    在这里插入图片描述

    在这里插入图片描述
    表达式:
    在这里插入图片描述

    6.创建动作

    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述

    操作

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    记得将模板给予node1主机
    在这里插入图片描述

    测试

    复制会话数大于3
    在这里插入图片描述
    用用户zhangsan登录zabbix
    在这里插入图片描述
    邮箱收件
    在这里插入图片描述
    在这里插入图片描述

    删除复制的会话,警报解除
    在这里插入图片描述
    查看Admin用户
    在这里插入图片描述

    二、微信报警

    1. 注册企业微信

    链接: https://work.weixin.qq.com/

    在这里插入图片描述
    自测也可不添加成员

    2. 添加一个部门

    进入通讯录添加
    在这里插入图片描述

    添加成员选择“其他部门导入”

    在这里插入图片描述

    3. 创建一个应用

    进入应用管理
    在这里插入图片描述
    在这里插入图片描述
    创建完记住AgentID和Secret:
    在这里插入图片描述
    记住企业ID:
    在这里插入图片描述

    4. 微信企业号接口调试工具

    https://open.work.weixin.qq.com/wwopen/devtool/interface/combine
    在这里插入图片描述
    在这里插入图片描述
    点击调用接口,显示OK即可

    5. 配置脚本

    服务端操作

    [root@zabbix ~]# dnf provides */pip3
    Last metadata expiration check: 2:32:57 ago on Mon 01 Aug 2022 02:07:36 PM CST.
    python3-pip-9.0.3-22.el8.rocky.0.noarch : A tool for installing and managing Python3 packages
    Repo        : appstream
    Matched from:
    Filename    : /usr/share/bash-completion/completions/pip3
    
    python36-3.6.8-38.module+el8.5.0+671+195e4563.x86_64 : Interpreter of the Python programming language
    Repo        : appstream
    Matched from:
    Filename    : /usr/bin/pip3
    
    python38-pip-19.3.1-5.module+el8.6.0+794+eba84017.noarch : A tool for installing and managing Python3 packages
    Repo        : appstream
    Matched from:
    Filename    : /usr/bin/pip3
    
    python39-pip-20.2.4-7.module+el8.6.0+795+de4edbcc.noarch : A tool for installing and managing Python3 packages
    Repo        : appstream
    Matched from:
    Filename    : /usr/bin/pip3
    
    [root@zabbix ~]# dnf install python36-3.6.8-38.module+el8.5.0+671+195e4563.x86_64
    
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25

    进入指定目录下创建shell脚本

    [root@zabbix ~]# cd /usr/lib/zabbix/alertscripts/
    [root@zabbix alertscripts]# vim webchat.sh
    [root@zabbix alertscripts]# cat webchat.sh
    #!/bin/bash
    CorpID="wwd5931acb806b41890c" # 你的企业id
    Secret="BbUbI_g_4zwvgYjlRinxBu5V_xK8R1VRT-QiNLYW5O0" #你的SecretID
    GURL="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$CorpID&corpsecret=$Secret"
    Token=$(/usr/bin/curl -s -G $GURL |awk -F\": '{print $4}'|awk -F\" '{print $2}')
    # echo $Token
    PURL="https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=$Token"
    function body(){
    local int agentid=1000002 # 你的agentdid
    local UserID="@all" # 发送的用户ID
    local PartyID=1 # 部门ID
    local Msg=$(echo "$@" | cut -d" " -f3-) # 发送给所有人
    printf '{\n'
    printf '\t"touser": "'"$UserID"\"",\n"
    printf '\t"toparty": "'"$PartyID"\"",\n"
    printf '\t"msgtype": "text",\n'
    printf '\t"agentid": "'"$agentid"\"",\n"
    printf '\t"text": {\n'
    printf '\t\t"content": "'"$Msg"\""\n"
    printf '\t},\n'
    printf '\t"safe":"0"\n'
    printf '}\n'
    }
    /usr/bin/curl --data-ascii "$(body $1 $2 $3)" $PURL
    
    [root@zabbix alertscripts]# chmod +x webchat.sh
    [root@zabbix alertscripts]# chown zabbix.zabbix webchat.sh
    [root@zabbix alertscripts]# systemctl restart zabbix-server.service 
    [root@zabbix alertscripts]# ./webchat.sh test123
    {"errcode":60020,"errmsg":"not allow to access from your ip, hint
    [1659346334640291099389903], from ip: 111.19.34.233, more info at
    https://open.work.weixin.qq.com/devtool/query?e=60020"}[root@zabbix alertscripts]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35

    发现错误60020
    复制网址查看
    https://open.work.weixin.qq.com/devtool/query?e=60020
    进入应用管理>zabbix>企业可信IP
    在这里插入图片描述
    解决

    [root@zabbix alertscripts]# ./webchat.sh test123
    {"errcode":0,"errmsg":"ok","msgid":"WpLDpQFMGSE843kRbNhgXXSkwRSv4Pitw4mtejX
    IhGXxyByCLpHVi7TlK_didEkdb87tsQm5phjff8_ueWBWQ"}[root@zabbix alertscripts]# 
    
    • 1
    • 2
    • 3

    6. zabbix web界面中配置微信报警

    进入:管理 > 报警媒介类型 > 创建媒体类型:

    脚本参数
    {ALERT.SENDTO}
    {ALERT.SUBJECT}
    {ALERT.MESSAGE}

    在这里插入图片描述
    在这里插入图片描述

    主题
    故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!
    消息
    告警主机:{HOSTNAME1}
    告警时间:{EVENT.DATE} {EVENT.TIME}
    告警等级:{TRIGGER.SEVERITY}
    告警信息: {TRIGGER.NAME}
    告警项目:{TRIGGER.KEY1}
    问题详情:{ITEM.NAME}:{ITEM.VALUE}
    当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
    事件ID:{EVENT.ID}

    再添加一个恢复
    在这里插入图片描述

    主题
    恢复{TRIGGER.STATUS}, 服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复!
    消息
    告警主机:{HOSTNAME1}
    告警时间:{EVENT.DATE} {EVENT.TIME}
    告警等级:{TRIGGER.SEVERITY}
    告警信息: {TRIGGER.NAME}
    告警项目:{TRIGGER.KEY1}
    问题详情:{ITEM.NAME}:{ITEM.VALUE}
    当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
    事件ID:{EVENT.ID}

    在这里插入图片描述

    7. 用户和报警媒介关联

    在这里插入图片描述

    8.配置动作和操作

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

    9.人为触发测试

    在这里插入图片描述
    在这里插入图片描述
    恢复
    在这里插入图片描述
    邮件
    在这里插入图片描述

  • 相关阅读:
    Java的八大基本数据类型和 println 的介绍
    一文教会你如何在内网搭建一套属于自己小组的在线 API 文档?
    什么是高可用服务?
    工程内分子目录存放源代码的处理(linux cmake)
    ngrok内网穿透【简易实战】
    JavaBean处理器之MapStruct
    Java实现手机验证码登录和SpringSecurity权限控制
    JavaScript系列之FileReader
    动态调试python源码的步骤与案例
    吴恩达《机器学习》8-5->8-6:特征与直观理解I、样本与值观理解II
  • 原文地址:https://blog.csdn.net/zhuangjiu/article/details/126090278