先安装宝塔最新版,环境选择centos7,nginx1.16+,mysql5.7+,php5.6+
安装相关的依赖
yum -y install mysql-devel libcurl-devel net-snmp-devel php-bcmath php-ldap php-mbstring php-gd php-xmlwriter libevent-devel libevent fping pcre*
添加用户
groupadd zabbix
useradd -g zabbix -s /sbin/nologin zabbix
下载zabbix-4.2.4
wget https://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/4.2.4/zabbix-4.2.4.tar.gz
tar -zxvf zabbix-4.2.4.tar.gz
cd zabbix-4.2.4
./configure --prefix=/usr/local/zabbix --enable-server --enable-proxy --enable-agent --enable-ipv6 --with-mysql --with-net-snmp --with-libcurl --with-openssl --with-libcurl --with-libxml2
宝塔中创建zabbix数据库,密码默认为zabbix 导入数据库sql 备份
mysql -uzabbix -pzabbix -hlocalhost zabbix < /root/zabbix-4.2.4/database/mysql/schema.sql
mysql -uzabbix -pzabbix -hlocalhost zabbix < /root/zabbix-4.2.4/database/mysql/images.sql
mysql -uzabbix -pzabbix -hlocalhost zabbix < /root/zabbix-4.2.4/database/mysql/data.sql
vim /usr/local/zabbix/etc/zabbix_server.conf
检查 DBName DBUser DBPasswd 是否正确
关闭firewalld
将zabbix 的前端文件拷贝到站点目录
cp -r frontends/php/* /www/wwwroot/zab.***.top/
php配置修改,max_input_time = 300
/usr/local/zabbix/sbin/zabbix_server
/usr/local/zabbix/sbin/zabbix_agentd
启动服务和代理
访问url 进入安装zab.***.top ,数据库账号密码是之前设置的zabbix,安装时会提示缺少文件,根据页面连接打开之后,复制配置,写入到/www/wwwroot/zab.***.top/conf/zabbix.conf.php 文件中保存。
安装完 默认的账号admin 密码zabbix
排错日志/tmp/zabbix_server.log
ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock
建立软连接
中文乱码的问题,看下zabiix 程序中php调用的字体文件路径,从windows 系统拷贝一个过来,替换掉即可。
微信告警
#!/usr/bin/env python3 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='wwdaecbec3f199c8b1' appsecret='egATgOiZ5G6e4zr_kG9PBFB6hciseaf58PdAJ2B_bmc' agentid=1000002 token_url='https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=' + corpid + '&corpsecret=' + appsecret req=requests.get(token_url) accesstoken=req.json()['access_token'] msgsend_url='https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=' + accesstoken touser=sys.argv[1] #toparty=sys.argv[1] subject=sys.argv[2] message=sys.argv[2] + " " +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)
坑***
再服务器内使用脚本可以正常发送消息到微信,但是zabbix 提示找不断哦requests模块
yum install python3-requests 解决
数据采集频率:1分钟采集一次 >> (监控项——更新时间间隔)
警告次数和警告频率 >>>默认操作步骤持续时间”即是告警频率,“步骤”即为告警次数