Bootstrap

zabbix监控流程

zabbix监控流程

监控流程

  1. 确定监控目标:首先需要确定要监控的目标,可以是服务器、网络设备、应用程序等。
  2. 安装Zabbix代理:在要监控的目标上安装Zabbix代理软件,代理负责收集目标的监控数据并将其发送给Zabbix服务器。
  3. 配置监控项:在Zabbix服务器上配置监控项,用于定义要收集的指标,如CPU使用率、内存使用率、磁盘空间等。
  4. 创建触发器:为每个监控项设置触发器,用于定义何时触发警报。触发器可以基于阈值、时间间隔、事件关联等条件进行配置。
  5. 设置动作:创建动作以响应触发器的警报。可以通过发送电子邮件、短信、执行脚本等方式来通知管理员。
  6. 警报和通知:当触发器条件满足时,Zabbix服务器会发送警报通知给管理员。管理员可以根据警报进行相应的故障排查和修复。

本地邮箱告警配置

在客户端用系统发送邮件

安装所需软件包

[root@node1 ~]# yum -y install mailx postfix
Last metadata expiration check: 13:53:41 ago on Mon 25 Sep 2023 12:35:40 AM CST.
Dependencies resolved.
...
Installed:
  mailx-12.5-29.el8.x86_64                                        postfix-2:3.5.8-2.el8.x86_64                     
Complete!
[root@node1 ~]# 

在windows浏览器中登陆自己的qq邮箱,邮箱地址:mail.qq.com

启动postfix服务,查看端口

[root@node1 ~]# systemctl start postfix
[root@node1 ~]# 
[root@node1 ~]# ss -anlt
State          Recv-Q         Send-Q                  Local Address:Port                    Peer Address:Port         Process         
LISTEN         0              128                           0.0.0.0:22                           0.0.0.0:*                            
LISTEN         0              100                         127.0.0.1:25                           0.0.0.0:*                            
LISTEN         0              128                           0.0.0.0:10050                        0.0.0.0:*                            
LISTEN         0              128                              [::]:22                              [::]:*                            
LISTEN         0              100                             [::1]:25                              [::]:*                            
[root@node1 ~]# 

给自己的邮箱发送邮件

[root@node1 ~]# echo "hello world" | mail -s "这是一个测试邮件" [email protected]                                     
[root@node1 ~]# 

查看qq邮箱
在这里插入图片描述

在服务端通过脚本发送邮件

安装所需软件包

[root@controller ~]# yum -y install mailx postfix
Last metadata expiration check: 16:55:40 ago on Sun 24 Sep 2023 09:51:12 PM CST.
Dependencies resolved.
...
Installed:
  mailx-12.5-29.el8.x86_64                                        postfix-2:3.5.8-2.el8.x86_64                     
Complete!
[root@controller ~]#

设置postfix服务开机自启,并查看端口

[root@controller ~]#  systemctl enable --now postfix
Created symlink /etc/systemd/system/multi-user.target.wants/postfix.service → /usr/lib/systemd/system/postfix.service.
[root@controller ~]# 
[root@controller ~]# ss -anlt
State          Recv-Q         Send-Q                  Local Address:Port                    Peer Address:Port         Process         
LISTEN         0              128                           0.0.0.0:22                           0.0.0.0:*                            
LISTEN         0              100                         127.0.0.1:25                           0.0.0.0:*                            
LISTEN         0              128                           0.0.0.0:10050                        0.0.0.0:*                            
LISTEN         0              128                           0.0.0.0:10051                        0.0.0.0:*                            
LISTEN         0              128                         127.0.0.1:9000                         0.0.0.0:*                            
LISTEN         0              128                              [::]:22                              [::]:*                            
LISTEN         0              100                             [::1]:25                              [::]:*                            
LISTEN         0              80                                  *:3306                               *:*                            
LISTEN         0              128                                 *:80                                 *:*                            
[root@controller ~]# 

在服务端进入告警目录,创建一个存放邮件的脚本

[root@controller ~]# cd /usr/local/share/zabbix/alertscripts/
[root@controller alertscripts]# 
[root@controller alertscripts]# vim sendmail.sh
[root@controller alertscripts]# 
[root@controller alertscripts]# cat sendmail.sh 
#!/bin/bash

echo $1 | mail -s $2 $3
[root@controller alertscripts]# 

给脚本加上执行权限,并向邮箱发送邮件

[root@controller alertscripts]# chmod +x sendmail.sh 
[root@controller alertscripts]# ll
total 4
-rwxr-xr-x 1 root root 37 Sep 25 14:57 sendmail.sh
[root@controller alertscripts]# 
[root@controller alertscripts]# ./sendmail.sh "mhy\nop" "这是一个测试邮件" [email protected]        
[root@controller alertscripts]# 

查看qq邮箱
在这里插入图片描述

定义媒介

修改脚本文件

[root@controller alertscripts]# vim sendmail.sh 
[root@controller alertscripts]# cat sendmail.sh 
#!/bin/bash

a=$(echo $1 | tr "\r\n" "\n" )
b=$(echo $2 | tr "\r\n" "\n" )
c=$3

echo $a | mail -s $b $c
[root@controller alertscripts]# 
创建媒介

在这里插入图片描述

name后面填写自定义名称
script name后面填写你创建的脚本名称
script parameters后面添加三个参数,分别是正文、主题和收件人,对应脚本中的$1,$2,$3。
在这里插入图片描述点击Add

媒介创建成功,发送邮件测试
在这里插入图片描述
在这里插入图片描述
查看qq邮箱
在这里插入图片描述

给admin用户添加媒介
在这里插入图片描述

send后面填写你接收邮件的邮箱
在这里插入图片描述
在这里插入图片描述

配置动作

创建动作

在这里插入图片描述
在这里插入图片描述

设置时间间隔,添加动作
在这里插入图片描述

选择发送方式,并添加组
在这里插入图片描述

update后面也添加一个动作
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

动作添加成功
在这里插入图片描述

为媒介添加信息模板

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

由于之前添加的触发器显示有问题,需要重新添加
将有问题的触发器选中删除
在这里插入图片描述

重新添加触发器

在这里插入图片描述
添加成功
在这里插入图片描述

将之前弹出的告警关闭
在这里插入图片描述

修改客户端testfile文件

[root@node1 ~]# echo '#' >> /tmp/testfile
[root@node1 ~]# 

告警已触发
在这里插入图片描述

查看qq邮箱
在这里插入图片描述

第三方邮箱网页配置告警

需求:
zabbix服务用的邮箱
个人邮箱

登录网易邮箱 mail.126.com,也可以选择其他邮箱

点击设置选择POP3/SMTP/IMAP
在这里插入图片描述
可以看到邮箱的服务器地址
在这里插入图片描述

修改Email媒介

在这里插入图片描述

SMTP server后面添加SMTP服务器地址
Email后面添加网易邮箱
Authentication后面选择username and password
username后面填写网易邮箱
在这里插入图片描述

获取授权密码

开启POP3/SMTP服务
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述授权密码只显示一次,建议复制到文本里

password后面填写获取到的授权密码
在这里插入图片描述

Email媒介开启成功,测试向qq邮箱发送邮件
在这里插入图片描述
在这里插入图片描述
查看qq邮箱
在这里插入图片描述

修改触发器动作

在这里插入图片描述

将send only to后面改成Email
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

修改admin用户媒介

将之前添加的媒介删除
在这里插入图片描述
在这里插入图片描述

重新添加媒介
在这里插入图片描述可以选择添加多个媒介,这样在配置动作时选择哪一种都可以

先将之前触发的告警关闭
在这里插入图片描述

再次修改客户端文件触发告警

[root@node1 ~]# echo '#' >> /tmp/testfile
[root@node1 ~]# 

在这里插入图片描述

查看qq邮箱
在这里插入图片描述

;