摘要: 系统环境: [root@yumserver ~]cat /etc/redhat-release #==》系统版本 CentOS Linux release 7.5.1804 (Core) [root@yumserver ~]uname –r #==》内核版本 3.10.0-862.el7.x86_6 阅读全文
posted @ 2016-08-15 16:07 邹龙彬 阅读(17359) 评论(1) 推荐(1) 编辑

Linux System Environment

[root@nginx01 ~]# cat /etc/redhat-release                   #==》系统版本
CentOS Linux release 7.5.1804 (Core)
[root@nginx01 ~]# uname –r                                  #==》内核版本
3.10.0-862.el7.x86_64
[root@nginx01 ~]# uname -m                                  #==》系统架构
x86_64
[root@nginx01 ~]# echo $LANG                                #==》系统字符集
en_US.UTF-8
[root@zabbix ~]# zabbix_server -V			    #==》zabbix版本
zabbix_server (Zabbix) 4.0.12



一、注册企业微信

注册地址: https://work.weixin.qq.com/wework_admin/loginpage_wx




二、登录企业微信公从号添加账户


1、应用管理 --- 创建应用


2、上传logo填写相应的信息


3、查看创建的启动应用

标注:企业微信在应用管理创建的zabbix应用会自动生成的Agentld(应用代理ID)和Secret(管理组凭证密钥),weixin.py脚本中会使用到。


4、把创建zabbix应用管理进行接口调用测试

调用测试地址: https://work.weixin.qq.com/api/devtools/devtool.php

在企业微信查看的企业ID




三、企业微信添加接收警告信息的成员




四、zabbix配置文件脚本目录路径

[root@zabbix ~]#  grep "^AlertScriptsPath" /etc/zabbix/zabbix_server.conf
AlertScriptsPath=/usr/lib/zabbix/alertscripts



五、编写weixin.py脚本放到zabbix特定目录

[root@zabbix ~]# vim /usr/lib/zabbix/alertscripts/weixin.py
#!/usr/bin/python
#_*_coding:utf-8 _*_

import urllib,urllib2
import json
import sys
import simplejson

reload(sys)
sys.setdefaultencoding('utf-8')

def gettoken(corpid,corpsecret):
    gettoken_url = 'https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=' + corpid + '&corpsecret=' + corpsecret
    print  gettoken_url
    try:
        token_file = urllib2.urlopen(gettoken_url)
    except urllib2.HTTPError as e:
        print e.code
        print e.read().decode("utf8")
        sys.exit()
    token_data = token_file.read().decode('utf-8')
    token_json = json.loads(token_data)
    token_json.keys()
    token = token_json['access_token']
    return token

def senddata(access_token,user,subject,content):

    send_url = 'https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=' + access_token
    send_values = {
        "touser":"13434939203",         #==》企业微信的用户帐号,在zabbix用户Media中配置,如果配置不正常,将按部门发送。
        "toparty":"1",         	        #==》企业微信部门ID
        "msgtype":"text",     		#==》消息类型
        "agentid":"1001234",    	#==》企业微信应用管理中创建zabbix应用代理ID
        "text":{
            "content":subject + '\n' + content
           },
        "safe":"0"
        }
#    send_data = json.dumps(send_values, ensure_ascii=False)
    send_data = simplejson.dumps(send_values, ensure_ascii=False).encode('utf-8')
    send_request = urllib2.Request(send_url, send_data)
    response = json.loads(urllib2.urlopen(send_request).read())
    print str(response)

if __name__ == '__main__':
    user = str(sys.argv[1])     		       #==》zabbix传过来的第一个参数
    subject = str(sys.argv[2])  		       #==》zabbix传过来的第二个参数
    content = str(sys.argv[3])  		       #==》zabbix传过来的第三个参数

    corpid =  'wwds123456dddd'  		       #==》企业ID
    corpsecret = 'Bdfd556o0P546764TBO543lcdf3340'      #==》Secret管理组凭证密钥
    accesstoken = gettoken(corpid,corpsecret)
    senddata(accesstoken,user,subject,content)



六、使用命令发信息测试

提示:yum install python-simplejson –y 使用命令安装python模块simplejson,否则会报错

[root@zabbix ~]# python /usr/lib/zabbix/alertscripts/weixin.py test_message '发送测试' ‘测试信息’
https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=wwca3656191a19ed7e&corpsecret= Bdfd556o0P546764TBO543lcdf3340
{u'invaliduser': u'13434939203', u'errcode': 0, u'errmsg': u'ok'}




七、zabbix web添加微信报警


1、创建发送媒休类型


2、设置发送报警媒介类型


3、创建接收信息用户(可以自定义用户)



4、报警媒介设置



5、创建触发器动作

报警提示

报警提示:{TRIGGER.STATUS}: {TRIGGER.NAME} 

告警主机:{HOST.NAME} 
主机IP: {HOST.IP} 
告警时间:{EVENT.DATE} {EVENT.TIME} 
告警等级:{TRIGGER.SEVERITY} 
告警信息:{TRIGGER.NAME} 
问题详情:{ITEM.NAME}:{ITEM.VALUE} 
当前状态: {TRIGGER.STATUS}:{ITEM.VALUE1} 
事件ID: {EVENT.ID}

恢复提示

恢复提示:{TRIGGER.STATUS}: {TRIGGER.NAME}

告警主机:{HOST.NAME} 
主机IP: {HOST.IP} 
告警时间:{EVENT.DATE} {EVENT.TIME} 
告警等级:{TRIGGER.SEVERITY} 
告警信息:{TRIGGER.NAME} 
问题详情:{ITEM.NAME}:{ITEM.VALUE} 
当前状态: {TRIGGER.STATUS}:{ITEM.VALUE1} 
事件ID: {EVENT.ID}

更新提示

更新提示:{TRIGGER.STATUS}: {TRIGGER.NAME}

告警主机:{HOST.NAME} 
主机IP: {HOST.IP} 
告警时间:{EVENT.DATE} {EVENT.TIME} 
告警等级:{TRIGGER.SEVERITY} 
告警信息:{TRIGGER.NAME} 
问题详情:{ITEM.NAME}:{ITEM.VALUE} 
当前状态: {TRIGGER.STATUS}:{ITEM.VALUE1} 
事件ID: {EVENT.ID}




八、测试微信警告发送

标注:主动触发相关的警告,查看微信的接收信息


posted @ 2020-11-10 16:40 邹龙彬 阅读(1663) 评论(1) 推荐(0) 编辑
摘要: zabbix键值简介: zabbix监控项是从主机收集的数据信息,zabbix监控项都是基于键值进行监控,键值有包含zabbix自带的内置键值,通过shell/python等脚本抓取的参数自定义的键值,推荐使用zabbix自带的内置键值,功能丰富且强大。 Zabbix 官网提供内置的各种键值说明: 阅读全文
posted @ 2020-11-09 09:57 邹龙彬 阅读(2729) 评论(0) 推荐(0) 编辑
摘要: 本教程只是大概讲解zabbix MySQL分区分表操作,若读者想了解更多关于表分区的详细知识,可以访问以下地址: MySQL官网说明:https://dev.mysql.com/doc/refman/5.7/en/partitioning.html Zabbix 官网说明:https://www.z 阅读全文
posted @ 2020-11-06 15:27 邹龙彬 阅读(2423) 评论(0) 推荐(0) 编辑
摘要: zabbix Proxy是一款代理zabbix Server服务器只负责收集zabbix Agent/SNMP/IPMI等被监控的客户端的数据,并统一把数据发送给zabbix Server服务器处理。帮助zabbix Server分担了服务器压力,提升zabbix Server服务器的性能。 提示: 阅读全文
posted @ 2020-11-06 10:51 邹龙彬 阅读(777) 评论(0) 推荐(0) 编辑
摘要: ###引言: zabbix-agent安装配置几台客户端是非常简单的操作,但如果遇到上百台的zabbix-agent客户端要安装及配置就显得相当费时间。目前自动化部署软件包、管理配置文件等开源的软件有许多,例如:SaltStack、Puppet、Ansible等,本教程就使用Ansible+shel 阅读全文
posted @ 2020-11-04 15:11 邹龙彬 阅读(1075) 评论(0) 推荐(0) 编辑
摘要: Linux System Environment [root@nginx01 ~]# cat /etc/redhat-release CentOS Linux release 7.5.1804 (Core) [root@nginx01 ~]# uname –r 3.10.0-862.el7.x86_ 阅读全文
posted @ 2020-11-04 10:05 邹龙彬 阅读(2588) 评论(0) 推荐(0) 编辑
摘要: 一、用户基础了解 Linux是一个多任务、多用户的操作系统,每个用户和进程都需要对应一个用户和用户组,用户名相当于姓名, 用户UID相当于身份证号,用户组GID相当于公司的工号。用户与用户组的关系一对一、多对一、一对多、多对多。 Linux系统用户分类: 1、 超级用户root root(超级管理员 阅读全文
posted @ 2019-03-25 17:49 邹龙彬 阅读(818) 评论(0) 推荐(0) 编辑
摘要: ***Linux 系统文件除了9位基本权限,还有额外3位特殊权限,分别是SUID(setuid),SGID(setgid),SBIT(sticky bit) 一、Linux 系统文件3位特殊权限位说明 标注:这3位特殊权限不建议使用(除系统默认的特殊权限可以使用以外),除非有特殊需求 特殊权限 特殊 阅读全文
posted @ 2019-03-13 15:37 邹龙彬 阅读(1887) 评论(0) 推荐(0) 编辑
摘要: 一、 umask介绍 Linux 系统用户创建一个新的目录或文件时,系统会默认会分配相应的权限。目录或文件的权限是如何产生的呢? 1、这就是umask的功能,umask设置了用户创建文件或目录的默认权限。Linux 系统umask设置的默认权限属于安全权限的临界点,如果高于这个临界点,文件的权限就太 阅读全文
posted @ 2019-03-11 18:20 邹龙彬 阅读(4149) 评论(0) 推荐(1) 编辑
摘要: 一、文件权限10个字符对应类型和权限 二、Linux普通文件和Linux目录读、写、执行权限说明 标注:Linux 中的文件名是存在于父目录的block里面,并指向这个文件的inode节点 1、linux 普通文件读、写、执行权限说明 权限 描述 范例 可读 r 表示具有读取文件内容的权限 范例1 阅读全文
posted @ 2019-03-11 18:04 邹龙彬 阅读(2991) 评论(0) 推荐(0) 编辑
摘要: Linux 正则表达式 标注:本教程只针对linux运维的三剑客命令awk,sed,grep正则表达式 什么是正则表达式? 简单的说,正则表达式就是为处理大量的字符串而定义的一套规则和方法通过定义的这些特殊符号的辅助, 系统管理员就可以快速过滤,替换或输出需要的字符串,linux正则表达式一般以行为 阅读全文
posted @ 2019-03-06 17:19 邹龙彬 阅读(399) 评论(0) 推荐(0) 编辑
摘要: ***了解Linux文件删除原理先了解一下文件inode索引节点,每个文件在Linux系统里都有唯一的索引节点(身份证号) inode。如果文件存在硬链接,那这个文件和这个文件的硬链接的inode是相同的,并且可以创建许多硬链接。 参照了解inode索引节点 博客 https://www.cnblo 阅读全文
posted @ 2019-03-05 14:30 邹龙彬 阅读(1255) 评论(0) 推荐(0) 编辑
摘要: Linux 特殊字符用于用户命令行bash环境处理数据,达到一种命令简化使用的功能 通配符 符号 功能 备注 * 代表所有(0到多个)字符 ? 代表任意一个字符 [ ] 匹配[ ]任意一个字符,写法[abcd]或[a-d] [! ] 匹配不含[ ]里任意一个字符的字符,写法[!abcd]或[!a-d 阅读全文
posted @ 2019-03-04 11:31 邹龙彬 阅读(688) 评论(0) 推荐(0) 编辑
摘要: Linux一切皆文件: Llinux系统的文件或目录的属性主要包括:索引节点、文件类型、文件权限、链接数、所属的用户和用户组、最近修改时间等。 Llinux文件属性及权限图形说明: Linux文件属性及权限补充说明: 第一列:inode索引结点 inode (index node)概述 一个硬盘需要 阅读全文
posted @ 2019-03-01 14:39 邹龙彬 阅读(6644) 评论(0) 推荐(0) 编辑
摘要: ***Linux 环境变量指系统运行程序或命令的能快速找到其位置等其它功能,不用输入复杂命令。以$PATH环境变量为例子, $PATH决定了shell指定寻找命令或程序的路径,比较执行ls命令,如果没有$PATH环境变量,执行ls命令需要绝对路径执行/bin/ls, 如果设置了$PATH环境变量,只 阅读全文
posted @ 2019-02-28 13:54 邹龙彬 阅读(760) 评论(0) 推荐(0) 编辑

喜欢请打赏

扫描二维码打赏

了解更多

点击右上角即可分享
微信分享提示