linux上配置zabbix并设置企业微信,机器人以及自主告警

配置lamp

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • linux上配置zabbix并设置企业微信,机器人以及自主告警
    • 配置lamp
    • 安装zabbix
    • 设置企业微信监控
    • 设置zabbix企业微信报警步骤
    • 设置机器人告警
    • 设置自主脚本监控
    • 设置微信告警自主汇报固定信息:

(1)配置准备:
Linux服务端一台
IP地址:192.168.12.4Linux客户端一台
IP地址:192.168.12.55(2)配置服务器端:
1.构建lamp架构:
yum install -y httpd mariadb-server mariadb php php-mysql php-gd libjpeg php-ldap php-odbc php-pear php-xml php-xmlrpc php-mhashvi /etc/httpd/conf/httpd.conf //编辑apache配置文件
DirectoryIndex index.html index.php //添加index.phpmysql_secure_installation //初始化数据库配置mysql -u root –p //root用户登录数据库进行配置CREATE DATABASE zabbix character set utf8 collate utf8_bin; //创建zabbix数据库GRANT all privileges ON zabbix.* TO 'zabbix'@'%' IDENTIFIED BY 'zabbix'; //给zabbix用户授权管理zabbix数据库flush privileges; //刷新权限

安装zabbix

Yum install php-mbstring*  php-bcmath* -y
(如果装不上或者报错可以去下面这个地址去找对应版本:
http://buildlogs.cdn.centos.org/c7.01.u/php/20150623210225/5.4.16-36.el7_1.x86_64/)rpm -ivh http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm//网上下载最新版本的zabbix源(自动生成Yum源)yum install zabbix-server-mysql zabbix-web-mysql –yzcat /usr/share/doc/zabbix-server-mysql-4.0.0/create.sql.gz | mysql -uzabbix -p zabbix //生成数据库文件 vi /etc/zabbix/zabbix_server.confDBHost=localhostDBName=zabbixDBUser=zabbixDBPassword=zabbix修改配置文件/etc/httpd/conf.d/zabbix.conf,时区改成 Asia/Shanghai:php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value always_populate_raw_post_data -1
php_value date.timezone Asia/Shanghaisystemctl enable zabbix-server //设置zabbix开机启动
[root@server ~]# systemctl start zabbix-server //启动zabbix服务systemctl restart httpd //重启apache服务
访问http://192.168.12.4/zabbix/去到php.ini下设置timezome
设置zabbix-agent
1.下载zabbix-agent:
wget http://repo.zabbix.com/zabbix/4.0/rhel/5/x86_64/zabbix-agent-4.0.0-2.el5.x86_64.rpm
然后解压如图:配置监控参数:
LogFileSize=0
ListenPort=10050  #启动监听端口
ListenIP=0.0.0.0 #监听所有IP
Server=192.168.12.4 #被动模式下必填,将zabbix-server端的ip填入
#ServerActive=192.168.12.4 #主动模式下填写启动监控服务并查看最后启动服务:service zabbix-agent restart

设置主机,添加主机群组以及agent接口

设置添加现有模板

Zabbix-agent标识会被点亮

设置企业微信监控

企业微信api申请详情看以下地址:
http://blog.51cto.com/wuhf2015/1688614

设置步骤:
下图为调出api发送企业微信调出脚本的位置以及设置:

Vi /etc/zabbix/zabbix_server.conf

AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts/

脚本内容为:
#!/bin/bash
#set -x
CorpID="ww379d02732f0fadd"
Secret="Q9mMPU1RJCwcva-x_NvBaBpdsN45lkJmaW6AlurLKm"
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   应用的id号local UserID=$1                 local PartyID=2            应用位置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

设置zabbix企业微信报警步骤

设置操作:

设置恢复操作:

设置机器人告警

和微信告警一样,微信机器人告警也是通过传入url数据来获取信息,如下是脚本设置在
/usr/lib/zabbix/alertscripts/zabbix.py:#!/usr/bin/python
#-*- coding: utf-8 -*-
import requests
import json
import sys
import osheaders = {'Content-Type': 'application/json;charset=utf-8'}
api_url = https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=790a8c81-e134-44cc-a139-f0d2045f2f1a
#api_url是通过webhook协议设置的机器人的api接口
def msg(text):json_text= {"msgtype": "text","text": {"content": test},}print(requests.post(api_url,json.dumps(json_text)).content)if __name__ == '__main__':test = sys.argv[1]
msg(test)因为脚本里只要求输入一个参数,所以改下zabbix里传入的参数设置:

其它和设置企业微信告警一样不用变。

设置自主脚本监控

在zabbix_agentd.conf修改:UnsafeUserParameters=1(这个设置原本是0,并去掉#)接着添加脚本地址到设置中:UserParameter=degree,/bin/bash /etc/zabbix/scripts/degree.sh(前面的degree是标识号,也是zabbix里监控项的键值,后面是路径)如下是监控脚本内容:#!/bin/bash
i=`ipmitool sensor get "01-Inlet Ambient" |grep "Sensor Reading" |awk -F [":("] '{print $2}'`
echo $i随后修改zabbix设置:

设置监控项和触发器完成之后就可以试验了 如果要使用ipmitool,需要给/dev/ipmi0添加rw的权限,不然zabbix无法调用

设置微信告警自主汇报固定信息:

修改脚本使脚本不接收参数,自主输入参数请求url即可,路径在/usr/lib/zabbix/alertscripts/zabbix.sh:

#!/bin/bash
a_1=`sh /etc/zabbix/scripts/degree.sh`
a="IP:10.2.2.107\nTemperature:$a_1"CorpID="ww07bb4b5dba065e5"
Secret="JFJT0DOscBakUVH4lExdOHAC8XHbjNRZyXXRfQB5Pc"
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=1000003local UserID=$11. List itemlocal PartyID=21local 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 $a)" $PURL

linux上配置zabbix并设置企业微信,机器人以及自主告警相关推荐

  1. 企业微信机器人推送mysql_Zabbix.5.0设置企业微信群机器人推送告警信息

    一.企业微信端配置 1.创建微信群机器人 在需要接收告警信息的企业微信群上右键(注意群里成员至少要3人以上),选择"添加群机器人",设置机器人名称,系统自动生成此机器人的webho ...

  2. PowerShell 实现企业微信机器人推送消息

    前言企业微信机器人 在ARMS告警管理中创建企业微信机器人后,您可以在通知策略中指定对应的企业微信群用于接收告警.当通知策略的匹配规则被触发时,系统会自动向您指定的企业微信群发送告警通知.企业微信群收 ...

  3. 封装Python脚本:使用企业微信机器人发送消息至企业微信

    官方文档地址:https://developer.work.weixin.qq.com/document/path/91770#%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8 ...

  4. 企业微信应用设置可信域名_怎么设置企业微信朋友圈功能?企业微信朋友圈功能有哪些限制?...

    文丨 @语鹦企服私域管家 原创,本文为<企业微信私域流量玩法>专栏第24篇 有小伙伴给小企留言说:企业微信朋友圈功能开放了,请问怎么设置企业微信朋友圈功能?企业微信朋友圈功能有哪些限制? ...

  5. linux没有jre文件夹,linux上配置jdk时,java命令提示没有此文件或文件夹的解决方法...

    linux上配置jdk时,java命令提示没有此文件或文件夹的解决方法 出现这个问题可能有以下几种原因: 1.对该文件没有执行的权限. 2.我们的机器是64位的,而下载的jdk是32位的. 我就是后一 ...

  6. Linux 上配置网络设备命令举例

    Linux 上配置网络设备命令举例 PS:本来内容来自http://www.ibm.com/developerworks/cn/linux/1310_xiawc_networkdevice/ 以 Re ...

  7. jenkins配置企业微信机器人通知,自定义通知内容

    1.企业微信的配置 1.1 进入企业微信群 创建一个群 -> 右击群标签,添加群机器人 1.2 填写机器人信息 创建机器人,填写机器人信息 1.3 复制Hook地址 复制WebHook地址,此处 ...

  8. 在R语言下配置企业微信机器人

    在R语言下配置企业微信机器人 企业微信机器人设置 在微信机器人的官方开发文档中,配置企业机器人使用了curl工具.本文意在使用R语言,实现企业微信机器人的推送. 如果需要使用钉钉机器人,可以参考din ...

  9. 在LINUX上配置oracle ASMLib的多路径磁盘

    在LINUX上配置oracle ASMLib的多路径磁盘 适用于: Oracle Server - Enterprise Edition - Version: 10.2.0.1 Linux Kerne ...

最新文章

  1. uniapp自定义顶部导航组件
  2. scala学习笔记-基础语法(1)
  3. project设置6天工作制日历
  4. 华为关于gvrp 的配置,一般步骤以及应用。
  5. python语言实现医院管理系统
  6. CA认证过程及https实现方法
  7. git 基础命令大全
  8. 数据结构 | 时间复杂度与空间复杂度
  9. 程序员应该如何做才能更好的实现自我价值?
  10. 中小企业如何做全网营销推广?常见的网络营销推广技巧和策略
  11. 傻白入门芯片设计,盘点计算机体系结构顶会
  12. 【经典算繁体08题】字串核对
  13. 数据质量测试:测试数据有效性和准确性的方法
  14. linux内核panic
  15. label 标签属性的总结归纳
  16. 包载羟基喜树碱的聚乙二醇化聚十六烷基氰基丙烯酸酯(PEG-PHDCA)纳米囊泡
  17. 哇噻,这个 IoT 物联网智能灯也太炫酷了吧!
  18. 计算机能力[置顶] 论计算机专业毕业生的人文素养
  19. Google帝国的接班人,凭什么是他?
  20. 哪位能推荐一下广州比较好的IT公司啊,不尽感激

热门文章

  1. linux locale设置
  2. Win10电脑一直循环重启进不了系统桌面怎么办
  3. ESP32-CAM、ESP8266、WIFI、蓝牙、单片机、热点创建嵌入式DNS服务器
  4. eNSP华为模拟器安装
  5. 计算机凭据分配在哪里,电脑策略没有凭据分配怎么办
  6. 量子能--下一代能源革命
  7. Unix环境高级编程 笔记
  8. asp.net监听输入框值的即时变化onpropertychange、oninput
  9. int 和 Integer
  10. 20.创新与企业家精神——结论,企业家社会