ZABBIX5.0配置

ZABBIX5.0

自动发现主机配置

web页面配置

zabbix5.0中server端配置完成之后,如果新加入的主机,需要配置自动发现功能,那么需要在server的web端配置进行配置

配置——>自动发现——>创建自动发现规则——>填写名称以及IP范围,检查类型添加可选ping,或者zabbix客户端(zabbix客户端可直接进行action)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WCLyOOxE-1599735433265)(C:\Users\zhang\AppData\Roaming\Typora\typora-user-images\image-20200909142203435.png)]

配置——>动作——>Discovery actions——>新建动作——>填写名称以及条件自动发现规则选择刚才创建的规则——>操作——>添加action——>添加主机、添加群组等

新上线主机配置

安装包

wget https://repo.zabbix.com/zabbix/5.0/ubuntu/pool/main/z/zabbix/zabbix-agent_5.0.0-1%2Bfocal_amd64.deb

wget https://repo.zabbix.com/zabbix/5.0/ubuntu/pool/main/z/zabbix/zabbix-sender_5.0.0-1%2Bfocal_amd64.deb

dpkg -i zabbix-sender_5.0.0-1+focal_amd64.deb
dpkg -i zabbix-agent_5.0.0-1+focal_amd64.deb

修改agent配置文件

grep -v ^# /etc/zabbix/zabbix_agentd.conf |grep -v ^$

PidFile=/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
DenyKey=system.run[*]
Server=192.168.142.178
StartAgents=1    #0表示禁用被动模式
ServerActive=192.168.142.178  #server主机IP
Hostname=Zabbix server  #server端创建时的server名
Include=/etc/zabbix/zabbix_agentd.d/*.conf

zabbix-proxy配置

zabbix-proxy是zabbix-server的代理程序,以减轻zabbix-server的负担,zabbix-proxy去收集agent端的数据,然后反馈给server。

设置zabbix-proxy主机

安装数据库

apt install mysql-server mysql-client

进行数据库初始化

mysql_secure_installation

进行数据库授权

mysql> create database zbxproxydb character set 'utf8';   #创建数据库
mysql> create user 'zbxproxyuser'@'192.168.142.%' identified by 'zbxproxypass';#创建用户
mysql>grant all on zbxproxydb.* to 'zbxproxyuser'@'192.168.142.%';  #授权用户及主机

导入数据库结构

gzip -d /usr/share/doc/zabbix-proxy-mysql/schema.sql.gz
mysql -Dzbxproxydb < /usr/share/doc/zabbix-proxy-mysql/schema.sql

安装包

 wget https://repo.zabbix.com/zabbix/5.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_5.0-1+focal_all.deb
 dpkg -i zabbix-release_5.0-1+focal_all.deb
 apt update 
 apt install -y zabbix-proxy-mysql zabbix-get zabbix-sender zabbix-agent

编辑proxy配置文件

grep -v ^# /etc/zabbix/zabbix_proxy.conf |grep -v ^$

Server=192.168.142.178       #server的ip地址
ServerPort=10051             #监听的server的端口
Hostname=zabbix4.zhang.com   #proxy的主机名(确保和server端配置的一样)
ListenPort=10051             #proxy监听自身
LogFile=/var/log/zabbix/zabbix_proxy.log
LogFileSize=0
EnableRemoteCommands=1
LogRemoteCommands=1
PidFile=/run/zabbix/zabbix_proxy.pid
SocketDir=/run/zabbix
DBHost=192.168.142.181        #数据库地址(proxy本机ip)
DBName=zbxproxydb             #数据库名
DBUser=zbxproxyuser           #数据库用户名
DBPassword=zbxproxypass       #数据库密码
ConfigFrequency=60            #每隔多久获取一次数据
DataSenderFrequency=1
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
ExternalScripts=/usr/lib/zabbix/externalscripts
FpingLocation=/usr/bin/fping
Fping6Location=/usr/bin/fping6
LogSlowQueries=3000      
StatsAllowedIP=0.0.0.0          #允许的IP地址

启动zabbix-proxy程序

systemctl restart zabbix-proxy.service

在server的web端配置代理主机

管理——>agent代理程序——>创建代理——>填写名称(必须与上面配置文件中的名称一样)

被proxy管理的主机在添加主机的时候使用agent代理程序,在被代理的主机中,server和Acticeserver填写代理主机的IP地址。

设置微信告警通知

企业微信后端配置

这里微信告警通知采用的是企业微信,首先进入企业微信后端管理页面https://work.weixin.qq.com/,创建企业。

应用管理——>创建应用——>上传logo,填写应用名称,选择成员

创建成功后会有一个AgentId和一个Secret。

zabbix-server配置

找到alertscripts文件夹,一般在/usr/lib/zabbix/alertscripts/。之后编辑配置文件使其可以在web端获取到脚本。

vim /etc/zabbix/zabbix_server.conf

#AlertScriptsPath=${datadir}/zabbix/alertscripts
AlertScriptsPath=/usr/lib/zabbix/alertscripts

下载并设置脚本

cd /usr/lib/zabbix/alertscripts/
wget https://raw.githubusercontent.com/OneOaaS/weixin-alert/master/weixin_linux_amd64
mv weixin_linux_amd64 wechat
chmod 755 wechat

之后进行测试

./wechat --corpid=xxx --corpsecret=xxx --msg="您好,告警测试" --user=用户账号 --agentid=xxx
-corpid= 企业微信中我的企业——>企业ID
--corpsecret= 企业微信中刚创建的应用中Secret
-msg= 内容
-user=  企业微信中刚创建的应用中进行人物账号的选择
agentid= 企业微信中刚创建的应用中AgentId
./wechat --corpid=ww74e6f8818b755231 --corpsecret=-LTX8xRYfF3uv87TfLW6BdW6vvqS0Zw6kDb8Vw-lX4w --msg="您好,告警测试" --user=ZhangXueChao --agentid=1000003
{
    
    "errcode":0,"errmsg":"ok","invaliduser":""}

zabbix-web页面进行配置

管理——>报警媒介类型——>创建媒体类型——>名称:wechat,类型:脚本,脚本名称:wechat,脚本参数

--corpid=ww74e6f8818b755231
--corpsecret=-LTX8xRYfF3uv87TfLW6BdW6vvqS0Zw6kDb8Vw-lX4w
--agentid=1000003
--user={ALERT.SENDTO}
--msg={ALERT.MESSAGE}

最后点击确定;之后进行用户的添加

管理——>用户——>Admin——>报警媒介——>类型:wechat,收件人:与企业微信收件人一致——>添加

之后在报警媒介类型界面进行测试即可。

配置告警动作

配置——>动作——>左上角选择Trigger actions——>创建动作——>填写名称,条件:触发器——>操作——>添加操作,选择群组、用户admin,选择发送方式wechat,勾选custom message定制消息

主题:
故障告警:{TRIGGER.STATUS}: {TRIGGER.NAME} 

消息:
告警主机:{HOST.NAME} 
主机地址:{HOST.IP} 
告警时间:{EVENT.DATE} {EVENT.TIME} 
告警等级:{TRIGGER.SEVERITY} 
告警信息:{TRIGGER.NAME} 
问题详情:{ITEM.NAME}:{ITEM.VALUE} 
事件代码:{EVENT.ID} 

添加恢复操作——>选择群组、用户admin,选择发送方式wechat,勾选custom message定制消息

主题:
故障解除:{TRIGGER.STATUS}: {TRIGGER.NAME} 

消息:
恢复主机:{HOST.NAME} 
主机地址:{HOST.IP} 
恢复时间:{EVENT.DATE} {EVENT.TIME} 
恢复等级:{TRIGGER.SEVERITY} 
恢复信息:{TRIGGER.NAME} 
问题详情:{ITEM.NAME}:{ITEM.VALUE} 
事件代码:{EVENT.ID}

添加监控项和触发器进行测试

选择一台主机,我这里选择zabbix3_2,在主机上安装redis

apt install -y redis

修改配置文件

vim /etc/redis/redis.conf
bind 0.0.0.0       #不做认证操作

启动服务并检查端口

systemctl start redis
ss -tnlp|grep redis

LISTEN    0         511                0.0.0.0:6379             0.0.0.0:*        users:(("redis-server",pid=137804,fd=6))                       

之后在web页面端进行监控项和触发器的添加

配置——>主机——>zabbix3_2——>监控项——>创建监控项——>名称:redis status,类型:zabbix客户端,键值:net.tcp.listen[6379] ,查看值:service state 应用集:status——>添加

配置——>主机——>zabbix3_2——>触发器——>新建触发器——>名称:redis service down,严重性:严重,表达式:添加>监控项redis status>功能last()>间隔1>结果0——>添加

触发器的添加

配置——>主机——>zabbix3_2——>监控项——>创建监控项——>名称:redis status,类型:zabbix客户端,键值:net.tcp.listen[6379] ,查看值:service state 应用集:status——>添加

配置——>主机——>zabbix3_2——>触发器——>新建触发器——>名称:redis service down,严重性:严重,表达式:添加>监控项redis status>功能last()>间隔1>结果0——>添加

之后进行测试。

猜你喜欢

转载自blog.csdn.net/professorman/article/details/108520749