使用微信来配置Zabbix报警

Zabbix IT敢客 4周前 (10-19) 465次浏览 未收录 0个评论 扫描二维码
文章目录[隐藏]

第 1 章 环境搭建

1.1 环境说明

本次实战需要两台电脑(或者vmware下的两个虚拟机),操作系统都是CentOS7.4,它们的身份、配置、地址等信息如下:

Hostname

IP地址

身份说明

配置

zabbix-server

10.0.0.120

负责分析监控数据展示和问题报警

2G内存

zabbix-agent

10.0.0.121

采集被管理端机器的数据信息

2G内存

监控原理简单说明

使用微信来配置 Zabbix 报警

1.2 安装部署 Zabbix

1.2.1 Zabbix 生产环境 server 端的安装

1,配置 zabbix

rpm -ivh https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-1.el7.centos.noarch.rpm

2,安装服务软件

yum install -y zabbix-server-mysql zabbix-web-mysql

3,安装 mariadb数据库、启动、安全初始化

yum install -y  mariadb-server
systemctl start mariadb.service
mysql_secure_installation

4,创建 zabbix数据库

mysql -e 'create database zabbix character set utf8 collate utf8_bin;'
mysql -e 'grant all privileges on zabbix.* to zabbix@localhost identified by "zabbix";'

5,导入数据

cd /usr/share/doc/zabbix-server-mysql-3.4.14/
zcat create.sql.gz |mysql -uzabbix -pzabbix zabbix

6,配置 zabbix-server连接到 mariadb的密码

sed -i.ori '115a DBPassword=zabbix' /etc/zabbix/zabbix_server.conf

7,添加时区

sed -i.ori '18a php_value date.timezone  Asia/Shanghai' /etc/httpd/conf.d/zabbix.conf

8,登陆测试

systemctl start httpd
systemctl  start  zabbix-server
sys

打开浏览器输入:http://10.0.0.120/zabbix/setup.php

使用微信来配置 Zabbix 报警使用微信来配置 Zabbix 报警使用微信来配置 Zabbix 报警使用微信来配置 Zabbix 报警使用微信来配置 Zabbix 报警

1.2.2 Zabbix 生产环境 agent 端的安装

  • 配置 zabbix源(等同 server端)
  • 安装客户端软件
yum install zabbix-agent -y
  • 修改配置文件指定可以索要 key值的主机 IP
vim /etc/zabbix/zabbix_agentd.conf

使用微信来配置 Zabbix 报警

  • 启动程序并设置开机自启动
systemctl start  zabbix-agent.service
systemctl enable  zabbix-agent.service

1.3 添加监控主机及链接模板

1,添加监控主机

使用微信来配置 Zabbix 报警使用微信来配置 Zabbix 报警使用微信来配置 Zabbix 报警

2,链接模板

使用微信来配置 Zabbix 报警使用微信来配置 Zabbix 报警使用微信来配置 Zabbix 报警使用微信来配置 Zabbix 报警使用微信来配置 Zabbix 报警使用微信来配置 Zabbix 报警

第 2 章 微信报警

2.1 企业微信设置

  • 注册登陆企业微信号

使用微信来配置 Zabbix 报警

  • 关注企业微信号

使用微信来配置 Zabbix 报警使用微信来配置 Zabbix 报警

  • 添加相关工作人员

使用微信来配置 Zabbix 报警

  • 创建应用小程序

使用微信来配置 Zabbix 报警 使用微信来配置 Zabbix 报警 使用微信来配置 Zabbix 报警

2.2 创建媒体类型

使用微信来配置 Zabbix 报警 使用微信来配置 Zabbix 报警

2.3 编辑 weixin.py 脚本

1,查看脚本内容

cat  weixin.py
 
#!/usr/bin/env python
#-*- coding: utf-8 -*-
#author: yanggd
#date: 2018-04-20
#comment: zabbix 接入微信报警脚本

import requests
import sys
import os
import json
import logging

logging.basicConfig(level = logging.DEBUG, format = '%(asctime)s, %(filename)s, %(levelname)s, %(message)s',
                datefmt = '%a, %d %b %Y %H:%M:%S',
                filename = os.path.join('/tmp','weixin.log'),
                filemode = 'a')

corpid='wwf5f8e869f655c219'
appsecret='tCB_pIfjiOr-JmDCk2J_FDa0wtuVp9cetRuq_M7bSgM'
agentid=1000002
#获取 accesstoken
token_url='https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=' + corpid + '&corpsecret=' + appsecret
req=requests.get(token_url)
accesstoken=req.json()['access_token']

#发送消息
touser=sys.argv[1]
subject=sys.argv[2]
#toparty='3|4|5|6'
message=sys.argv[2] + "\n\n" +sys.argv[3]

params={
        "touser": touser,
#       "toparty": toparty,
        "msgtype": "text",
        "agentid": agentid,
        "text": {
                "content": message
        },
        "safe":0
}

req=requests.post(msgsend_url, data=json.dumps(params))

logging.info('sendto:' + touser + ';;subject:' + subject + ';;message:' + message)  

2,脚本相关修改

  • 设置企业 ID 号、微信报警应用程序授权码及 agentid 号
corpid='wwf5f8e869f655c219'
appsecret='tCB_pIfjiOr-JmDCk2J_FDa0wtuVp9cetRuq_M7bSgM'
agentid=1000002
  • 复制脚本到目录/usr/lib/zabbix/alertscripts 下并赋予可执行权限
chmod +x weixin.py

使用微信来配置 Zabbix 报警

  • 创建并修改脚本中微信日志文件的属者、组
touch /tmp/weixin.log
chown zabbix.zabbix  /tmp/weixin.log

使用微信来配置 Zabbix 报警

  • 测试脚本可用性(报错如下)使用微信来配置 Zabbix 报警
  • 安装 python 脚本依赖的 requests 模块
yum install -y python2-pip
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package requests
  • 脚本可用性再次测试
./weixin.py  WuQi  test  test

使用微信来配置 Zabbix 报警

2.4 开启动作设置报警信息

  • 开启报警动作使用微信来配置 Zabbix 报警
  • 报警信息的设置

报警信息我们可以安装系统默认的去使用,也可以调用 zabbix 自带的变量值来个性化设置报警信息

使用微信来配置 Zabbix 报警

使用微信来配置 Zabbix 报警

2.5 设置报警媒介

使用微信来配置 Zabbix 报警 使用微信来配置 Zabbix 报警 使用微信来配置 Zabbix 报警

说明:收件人:WuQI 名字需要查询企业微信通讯录中的显示账号名称

使用微信来配置 Zabbix 报警 使用微信来配置 Zabbix 报警

第 3 章 报警测试

为了尽快看到效果,我们需要将监控项取值时间间隔设置尽量小写,触发报警的条件设置更简单易触发些

3.1 创建触发器

使用微信来配置 Zabbix 报警 使用微信来配置 Zabbix 报警 使用微信来配置 Zabbix 报警 使用微信来配置 Zabbix 报警

3.2 设置监控项取值间隔

使用微信来配置 Zabbix 报警

3.3 测试

  • 手动开启 4 个终端使用微信来配置 Zabbix 报警
  • 查看 zabbix 是否报警使用微信来配置 Zabbix 报警
  • 查看微信是否报警使用微信来配置 Zabbix 报警


IT 敢客 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:使用微信来配置 Zabbix 报警
喜欢 (2)
[313176056@qq.com]
分享 (0)
IT敢客
关于作者:
“我所做的一切都是为了方便我的生活~~~“
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址