使用zabbix实现邮箱/钉钉告警

这篇具有很好参考价值的文章主要介绍了使用zabbix实现邮箱/钉钉告警。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录
  • 一、zabbix部署
    • 1、安装zabbix服务端
    • 2、准备数据库(mariadb简单点)
    • 3、修改服务的配置
  • 二、登录zabbix
  • 三、客户端配置
    • 1、安装软件包
    • 2、修改配置文件
    • 3、启动客户端服务
  • 四、报错解决
  • 五、添加监控主机
    • 1、安装软件包
    • 2、修改配置文件
    • 3、启动客户端服务
    • 4、回到zabbix添加主机
    • 5、添加模板
  • 六、添加mysql自定义监控项
    • 1、被监控主机上安装mariadb做测试
    • 2、编写客户端监控项配置文件
    • 3、验证自定义的监控项是否生效
    • 4、web端添加监控项对应键值
    • 5、添加图形可视化(选做)
    • 6、添加对应的触发器
    • 7、小问题
  • 七、zabbix实现邮件告警
    • 1、配置告警媒介
    • 2、获取qq邮箱授权码
    • 3、添加接收报警邮件的邮箱
    • 4、配置动作发送给用户群组
    • 5、测试(关闭被监测主机mariadb)
  • 八、zabbix通过钉钉/企业微信告警
    • 1、钉钉群聊
    • 2、添加群机器人(PC端创建)
    • 3、到服务端/usr/lib/zabbix/alertscripts下准备python脚本
    • 4、测试脚本
    • 5、添加告警媒介
    • 6、添加动作
    • 7、绑定用户,用户收件人写电话号码
    • 8、手动测试(关闭mariadb)
    • 效果呈现:

一、zabbix部署

1、安装zabbix服务端

  • 准备yum源,安装服务的组件

    [root@server1 ~]# rpm -Uvh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-2.el7.noarch.rpm
    [root@server1 ~]# yum install zabbix-server-mysql zabbix-web-mysql  -y
    

    使用zabbix实现邮箱/钉钉告警

  • 关闭selinux、防火墙

    [root@server1 ~]# setenforce 0
    setenforce: SELinux is disabled
    [root@server1 ~]# systemctl stop firewalld
    

2、准备数据库(mariadb简单点)

  • 安装数据库

    [root@server1 ~]# yum install -y mariadb-server
    [root@server1 ~]# systemctl start mariadb
    [root@server1 ~]# systemctl enable mariadb
    Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.
    
  • 创建zabbix用户

    [root@server1 ~]# mysql -uroot
    MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;
    MariaDB [(none)]> create user zabbix@localhost identified by '000000';
    MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost;
    MariaDB [(none)]> \q
    

    使用zabbix实现邮箱/钉钉告警

3、修改服务的配置

  • 导入初始架构数据

    [root@server1 ~]# zcat /usr/share/doc/zabbix-server-mysql-4.0.50/create.sql.gz | mysql -uzabbix -D zabbix -p000000
    
  • 为zabbix配置数据库

    sed -i '/^# DBPassword=/a DBPassword=000000' /etc/zabbix/zabbix_server.conf
    
  • 编辑前端php配置

    sed -i '/php_value always_populate_raw_post_data -1/a\php_value date.timezone Asia/Shanghai' /etc/httpd/conf.d/zabbix.conf
    
  • 启动服务

    [root@server1 ~]# systemctl restart zabbix-server httpd
    [root@server1 ~]# systemctl enable zabbix-server httpd
    

zabbix服务端部署完成,可以通过http://ip地址/zabbix访问,初始化完成之后使用用户Admin 密码zabbix登录

二、登录zabbix

使用zabbix实现邮箱/钉钉告警

Next step

使用zabbix实现邮箱/钉钉告警

Next step

使用zabbix实现邮箱/钉钉告警

Next step

使用zabbix实现邮箱/钉钉告警

Next step

使用zabbix实现邮箱/钉钉告警

Next step

使用zabbix实现邮箱/钉钉告警

完成,登录

使用zabbix实现邮箱/钉钉告警

简单汉化一下

使用zabbix实现邮箱/钉钉告警

使用zabbix实现邮箱/钉钉告警

三、客户端配置

1、安装软件包

[root@server1 ~]# rpm -Uvh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-2.el7.noarch.rpm
[root@server1 ~]# yum install -y zabbix-agent

2、修改配置文件

[root@server1 ~]# vim /etc/zabbix/zabbix_agentd.conf
#主要修改以下三个参数
Server=192.168.112.60
ServerActive=192.168.112.60
Hostname=server1

3、启动客户端服务

[root@server1 ~]# systemctl start zabbix-agent.service

四、报错解决

配置->主机->替换IP地址->更新

使用zabbix实现邮箱/钉钉告警

[root@server1 ~]# systemctl restart zabbix-server

大概会等十分钟

使用zabbix实现邮箱/钉钉告警

五、添加监控主机

1、安装软件包

[root@server2 ~]# rpm -Uvh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-2.el7.noarch.rpm
[root@server2 ~]# yum install -y zabbix-agent

2、修改配置文件

[root@server2 ~]# vim /etc/zabbix/zabbix_agentd.conf

# 主要修改以下三个参数
Server=192.168.112.60	#上报给服务端
ServerActive=192.168.112.60		#服务端
Hostname=server2	#和server1不一样即可

3、启动客户端服务

[root@server2 ~]# systemctl restart zabbix-agent
[root@server2 ~]# ss -tnl		#看到端口10050起来了就行
State       Recv-Q Send-Q Local Address:Port               Peer Address:Port             
LISTEN      0      128              *:22                           *:*
LISTEN      0      100      127.0.0.1:25                           *:*
LISTEN      0      128              *:10050                        *:*
LISTEN      0      128           [::]:22                        [::]:*
LISTEN      0      100          [::1]:25                        [::]:*
LISTEN      0      128           [::]:10050                     [::]:*

4、回到zabbix添加主机

配置->主机->创建主机

使用zabbix实现邮箱/钉钉告警

5、添加模板

配置->主机->server2->模板添加->更新

使用zabbix实现邮箱/钉钉告警

正常到这一步主机已经变为绿色,并且模板自动添加了应用集与监控项

使用zabbix实现邮箱/钉钉告警

六、添加mysql自定义监控项

1、被监控主机上安装mariadb做测试

[root@server2 ~]# yum install -y mariadb-server
[root@server2 ~]# systemctl start mariadb

2、编写客户端监控项配置文件

[root@server2 ~]# vim /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf
UserParameter=mariadb_status,mysqladmin ping 2>/dev/null|grep -c alive	#判断mariadb状态
UserParameter=mariadb_connections,mysql -e "show processlist;" 2>/dev/null | sed -n '2,$'p | wc -l			#mariadb连接数
UserParameter=mariadb_max_connections,mysql -e 'show variables like "%max_connections%"' 2>/dev/null|tail -1|awk '{print $2}'
	#mariadb最大连接数

[root@server2 ~]# systemctl restart zabbix-agent.service

使用zabbix实现邮箱/钉钉告警

注意,添加到监控项配置文件里的命令需结合自身情况合理编写

3、验证自定义的监控项是否生效

[root@server1 zabbix]#  yum install zabbix-get.x86_64 -y
[root@server1 zabbix]# zabbix_get -s 192.168.112.50 -k mariadb_status
1
[root@server1 zabbix]# zabbix_get -s 192.168.112.50 -k mariadb_max_connections
151

4、web端添加监控项对应键值

配置->主机->server2->监控项->创建监控项

使用zabbix实现邮箱/钉钉告警

5、添加图形可视化(选做)

配置->主机->server2->图形->创建图形

使用zabbix实现邮箱/钉钉告警

使用zabbix实现邮箱/钉钉告警

6、添加对应的触发器

配置->主机->server2->创建触发器

使用zabbix实现邮箱/钉钉告警


使用zabbix实现邮箱/钉钉告警

7、小问题

使用zabbix实现邮箱/钉钉告警

如果出现了这个警告问题不大,毕竟我们刚才安装了mariadb数据库,自然在/etc/passwd上添加了用户

使用zabbix实现邮箱/钉钉告警

七、zabbix实现邮件告警

1、配置告警媒介

管理->报警媒介类型->Email

使用zabbix实现邮箱/钉钉告警

使用zabbix实现邮箱/钉钉告警

2、获取qq邮箱授权码

登录qq邮箱->设置->账号->POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务->

使用zabbix实现邮箱/钉钉告警

短信验证

使用zabbix实现邮箱/钉钉告警

将生成好的授权码作为密码填入

使用zabbix实现邮箱/钉钉告警

3、添加接收报警邮件的邮箱

管理->用户->Admin->添加报警媒介->更新

使用zabbix实现邮箱/钉钉告警

4、配置动作发送给用户群组

配置->动作->启用->Report problems to Zabbix administrators

使用zabbix实现邮箱/钉钉告警


使用zabbix实现邮箱/钉钉告警


使用zabbix实现邮箱/钉钉告警

5、测试(关闭被监测主机mariadb)

[root@server2 ~]# ss -tnl
State       Recv-Q Send-Q Local Address:Port               Peer Address:Port             
LISTEN      0      128              *:22                           *:*
LISTEN      0      100      127.0.0.1:25                           *:*
LISTEN      0      128              *:10050                        *:*
LISTEN      0      50               *:3306                         *:*
LISTEN      0      128           [::]:22                        [::]:*
LISTEN      0      100          [::1]:25                        [::]:*
LISTEN      0      128           [::]:10050                     [::]:*
[root@server2 ~]# systemctl stop mariadb

使用zabbix实现邮箱/钉钉告警

八、zabbix通过钉钉/企业微信告警

1、钉钉群聊

手机端直接拉个普通群,PC端 不好操作

使用zabbix实现邮箱/钉钉告警

2、添加群机器人(PC端创建)

群设置->机器人->添加机器人->自定义机器人->保管好Webhook

使用zabbix实现邮箱/钉钉告警


使用zabbix实现邮箱/钉钉告警


使用zabbix实现邮箱/钉钉告警

3、到服务端/usr/lib/zabbix/alertscripts下准备python脚本

[root@server1 alertscripts]# pwd
/usr/lib/zabbix/alertscripts
[root@server1 alertscripts]# yum install -y python-requests		#下载requests模块
#!/usr/bin/python
# -*- coding: utf-8 -*-
# Author: xxxxxxxx
import requests
import json
import sys
import os

headers = {'Content-Type': 'application/json;charset=utf-8'}
api_url = "https://oapi.dingtalk.com/robot/send?access_token=7b7f9820e221a6a6ecca0944622275ab9c53394cc66145e58156e95e319fc30e"	#写自己的Webhook
def msg(text):
    json_text= {
    "msgtype": "text",
    "at": {
        "atMobiles": [
            "13333333333"
        ],
            "isAtAll": True
     },
     "text": {
        "content": text
     }
    }
    print requests.post(api_url,json.dumps(json_text),headers=headers).content

if __name__ == '__main__':
     text = "zabbix-test"	#测试一下文本
     #text = sys.argv[1]
     msg(text)

4、测试脚本

[root@server1 alertscripts]# chmod a+x zabbix-ding.py
[root@server1 alertscripts]# ./zabbix-ding.py
{"errcode":0,"errmsg":"ok"}

使用zabbix实现邮箱/钉钉告警

没问题回到代码进行修改

[root@server1 alertscripts]# vim zabbix-ding.py
#!/usr/bin/python
# -*- coding: utf-8 -*-
# Author: xxxxxxxx
import requests
import json
import sys
import os

headers = {'Content-Type': 'application/json;charset=utf-8'}
api_url = "https://oapi.dingtalk.com/robot/send?access_token=7b7f9820e221a6a6ecca0944622275ab9c53394cc66145e58156e95e319fc30e"
def msg(text):
    json_text= {
    "msgtype": "text",
    "at": {
        "atMobiles": [
            "13333333333"
        ],
            "isAtAll": True
     },
     "text": {
        "content": text
     }
    }
    print requests.post(api_url,json.dumps(json_text),headers=headers).content

if __name__ == '__main__':
     #text = "zabbix-test"
     text = sys.argv[1]
     msg(text)

5、添加告警媒介

管理->报警媒介类型->创建媒体类型->添加名称,脚本名称,脚本参数

使用zabbix实现邮箱/钉钉告警

6、添加动作

配置->动作->创建动作

使用zabbix实现邮箱/钉钉告警


使用zabbix实现邮箱/钉钉告警

7、绑定用户,用户收件人写电话号码

管理->用户->Admin->报警媒介->添加报警媒介->更新

使用zabbix实现邮箱/钉钉告警


使用zabbix实现邮箱/钉钉告警

8、手动测试(关闭mariadb)

[root@server2 ~]# systemctl stop mariadb
[root@server2 ~]# ss -tnl
State       Recv-Q Send-Q Local Address:Port               Peer Address:Port             
LISTEN      0      128              *:10050                        *:*
LISTEN      0      128              *:22                           *:*
LISTEN      0      100      127.0.0.1:25                           *:*
LISTEN      0      128           [::]:10050                     [::]:*
LISTEN      0      128           [::]:22                        [::]:*
LISTEN      0      100          [::1]:25                        [::]:*

效果呈现:

使用zabbix实现邮箱/钉钉告警文章来源地址https://www.toymoban.com/news/detail-840800.html

到了这里,关于使用zabbix实现邮箱/钉钉告警的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • zabbix 钉钉&微信&企微告警(动作&操作&消息内容模板)

    1、配置zabbix服务端 2、配置监控主机监控项监控模板 zabbix配置安装_this page is used to test the proper operation of _疯飙的蜗牛的博客-CSDN博客 触发器的本质就是一个条件判断,对于不同的监控数据来说,我们要设置不同的触发器。如一个监控项不关联触发器,将不会提示错误,也不

    2024年02月07日
    浏览(38)
  • zabbix4.0配置钉钉机器人告警详细教程

            在钉钉中创建群聊,然后在设置中创建钉钉机器人。             机器人名字随便,安全设置我选择【自定义】,并设置内容为zabbix,即机器人收到的每条消息内容均需要带“zabbix”才可以发出。         复制保留Webhook的内容,以便后面使用。         在

    2024年02月11日
    浏览(43)
  • zabbix监控mysql容器主从同步状态并告警钉钉/企业微信

    前言:被监控的主机已经安装和配置mysql主从同步,和zabbix-agent插件。 mysql创建主从同步:http://t.csdn.cn/P4MYq centos安装zabbix-agent2:http://t.csdn.cn/fx74i  mysql主从同步,主要监控这2个参数指标: Slave_IO_Running: Yes Slave_SQL_Running: Yes 进入zabbix目录, cd /etc/zabbix 创建目录: mkdir scrip

    2024年02月14日
    浏览(37)
  • 提高错误日志处理效率!使用Python和钉钉机器人实现自动告警聚合

    日志是非常重要的信息资源。它们记录了应用程序的运行状态、错误和异常情况,帮助我们了解系统的健康状况以及发现潜在的问题。为了高效地管理和分析日志数据,许多组织采用了Elasticsearch、Logstash和Kibana(ELK)堆栈作为日志收集和分析的解决方案。 开发一个实时监控和

    2024年02月11日
    浏览(42)
  • 【Elastic (ELK) Stack 实战教程】11、使用 ElastAlert 实现 ES 钉钉群日志告警

    目录 一、ElastAlert 概述 二、安装 ElastAlert 2.1 安装依赖 2.2 安装 Python 环境 2.3 安装 ElastAlert 2.4 ElastAlert 配置文件 2.5 创建 ElastAlert 索引 2.6 测试告警配置是否正常 三、ElastAlert 集成钉钉 3.1 下载 ElastAlert 钉钉报警插件 3.2 创建钉钉机器人 3.3 请求 nginx 频繁出现 401 场景 3.3.1 配

    2023年04月23日
    浏览(52)
  • (保姆级)服务器-Zabbix6.0使用Python脚本实现带图片的邮箱的报警

    近期在琢磨Zabbix邮箱报警的功能,但是网上的教程通常是4.0或5.0版本Zabbix,并使用Python2.7环境,运行在新版本Zabbix6.0上有颇多问题,为此我基于原先教程修改基于Zabbix6.0并使用Python3+的解决方案。期间遇到不少坑,特此分享。 Zabbix是自带的邮箱的报警功能有限,比如不能实现诸

    2024年01月24日
    浏览(44)
  • grafana使用邮箱发告警接口脚本

    1.先在邮箱获取密码,qq或者163都可以在那个smtp那边页面获取或者设置。 2.后台运行下面脚本。 3.grafana添加告警通道,设置告警。

    2024年02月10日
    浏览(37)
  • shell脚本实现告警消息推送钉钉机器人

    一、准备钉钉机器人         钉钉创建群聊                  群设置、智能群助手、添加机器人         机器人类型选择 自定义 (通过webhook接入自定义服务)         添加到刚才创建的群组、安全设置选择自定义 ( 将设置为告警二字,有用),配

    2024年02月14日
    浏览(45)
  • Prometheus+Alertmanager+webhook-dingtalk实现钉钉告警

    1、服务端口规划: 服务 端口 Prometheus 59090 Node_exporter 59100 Alertanager 9093 Webhook-dingtalk 8060 2、本次实验架构调用图如下: 3、钉钉创建机器人保存Webhook地址: 总共需要保存两项,我们后续会用到: 1、加签后的秘钥 2、webhook地址 安装配置只涉及到安装及正常启动无误,并不涉及

    2024年02月11日
    浏览(28)
  • 实操教程 | 触发器实现 Apache DolphinScheduler 失败钉钉自动告警

    作者 | sqlboy-yuzhenc 在实际应用中,我们经常需要将特定的任务通知给特定的人,虽然 Apache DolphinScheduler 在安全中心提供了告警组和告警实例,但是配置起来相对复杂,并且还需要在定时调度时指定告警组。通过这篇文章,你将学到一个简单的方法,无需任何配置,只需要在用

    2024年02月11日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包