CentOS 安装 Zabbix 5.0

博客作者:联系请点击,搬运不易,希望请作者喝咖啡,可以点击联系博客作者

前言

说明:本文介绍CentOS 8.3 搭建 Zabbix5.0 监控平台安装及相关要求

一、安装要求

内存和磁盘

Zabbix同时需要物理内存和磁盘空间。刚开始使用Zabbix,建议128MB物理内存和256MB可用磁盘空间。然而, 具体需要的内存大小和磁盘空间要根据主机数量和监控参数而定。如果你计划对监控的参数进行长期保存,你应该考虑至少在数据库中预留几个GB的空间,以用来保留历史数据。 每个Zabbix的守护进程需要与数据库服务器建立多个连接。分配给连接的内存数量,取决于数据库引擎的配置。

CPU

根据监控参数及选择的数据库引擎,Zabbix,特别是Zabbix数据库,可能需要大量的CPU资源,

其他硬件

如果需要启用短信(SMS)通知功能,需要串行通讯口(serial communication port)和串行GSM调制解调器(serial GSM modem)。USB转串行转接器也同样可以工作。

关闭NFtables和SElinux

1
systemctl disable --now firewalld.service
2
setenforce 0
3
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
Copied!

安装系统常用软件包

1
dnf install -y sysstat traceroute net-tools telnet tree \
2
net-snmp-utils vim lrzsz tcpdump wget git zip tar
Copied!

二、安装 Zabbix 服务端

Zabbix 官方源

1
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/8/x86_64/zabbix-release-5.0-1.el8.noarch.rpm
Copied!

替换为阿里云Zabbix源

1
sed -i '3c baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/8/$basearch/' /etc/yum.repos.d/zabbix.repo
Copied!

安装 Zabbix 服务端

1
dnf -y install zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-agent vim
Copied!

安装Apache和MariaDB并启动

1
dnf install -y @httpd @mariadb
2
systemctl enable --now httpd mariadb
Copied!

数据库根用户添加密码及安全设置

1
mysql_secure_installation
Copied!

步骤如下:

  • 要求你配置VALIDATE PASSWORD component(验证密码组件): 输入y ,回车进入该配置
  • 选择密码验证策略等级, 我这里选择0 (low),回车
  • 输入新密码两次
  • 确认是否继续使用提供的密码?输入y ,回车
  • 移除匿名用户? 输入y ,回车
  • 不允许root远程登陆? 不需要输入y,需要远程登陆输入n ,回车
  • 移除test数据库? 输入y ,回车
  • 重新载入权限表? 输入y ,回车

查询下root是否可以远程登陆,没有就配置一下

1
mysql -uroot -p
2
3
use mysql;
4
select host,user from user;
Copied!

配置远程登陆

1
mysql -uroot -p
2
3
use mysql;
4
update user set host='%' where user='root';
5
flush privileges;
6
exit
Copied!

关闭MySQL主机查询dns

MySQL会反向解析远程连接地址的dns记录,如果MySQL主机无法连接外网,则dns可能无法解析成功,导致第一次连接MySQL速度很慢,所以在配置中可以关闭该功能。

/etc/my.cnf文件,添加配置

1
echo "[mysqld]
2
skip-name-resolve" >> /etc/my.cnf
Copied!

重启服务

1
systemctl restart mysqld
Copied!

创建zabbix数据库,在数据库主机上运行以下内容。

1
mysql -uroot -p
Copied!
1
create database zabbix character set utf8 collate utf8_bin;
2
show databases;
3
create user zabbix@localhost identified by 'password';
4
flush privileges;
5
grant all privileges on zabbix.* to zabbix@localhost;
6
quit;
Copied!

在 Zabbix 服务端主机上导入初始架构和数据。

1
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
Copied!

三、启动Zabbix Server进程

zabbix_server.conf 配置说明
  • ListenPort 监听端口,默认10051
  • SourceIP 源ip,默认为空,可以写机器ip地址
    SourceIP=机器ip
  • LogType 日志类型,system\file\console,默认file
  • LogFile 日志路径,默认/var/log/zabbix/zabbix_server.log
    LogFile=/var/log/zabbix/zabbix_server.log
  • LogFileSize 日志大小,0-1024MB,0禁用自动日志轮换
    LogFileSize=0
  • DebugLevel 调试级别,0~5,默认为3显示waring信息
  • PidFile pid文件,默认/var/run/zabbix/zabbix_server.pid
    PidFile=/var/run/zabbix/zabbix_server.pid
  • SockerDir socker文件夹,默认/var/run/zabbix
    SocketDir=/var/run/zabbix
  • DBHOst 数据库地址,默认127.0.0.1
  • DBName 数据库名称,默认 zabbix
    DBName=zabbix
  • DBSchema 数据库dschema,默认 空
  • DBUser 数据库用户,默认zabbix
    DBUser=zabbix
  • DBPassword 数据库密码
    DBPassword=zabbixmysql
  • DBSocket DBScoket地址
  • DBPort 数据库端口,默认为空,
  • HistoryStorageURL 历史存储的HTTP地址
  • HistoryStorageTypes 用逗号分隔的类型列表,uint\dbl\str\log\text
  • HistoryStorageDateIndex 是否历史记录预处理 0 disable,1 enable
  • ExportDir 导出路径
  • ExportFileSize 导出文件大小1M~1G,默认1G
  • StartPollers 预分叉的轮询器实例数,默认5
  • StartIPMIPollers IPMI轮询器数量
  • StartPreprocessors 启动预处理器数量,默认3
  • StartPollersUnreachable 无法访问是轮询次数
  • StartTrappers
  • StartPingers ICMP预习处理数
  • StartDiscoverers 发现者预处理数
  • StartHTTPPollers HTTP查询器预处理数
  • StartTimers 计时器数
  • JavaGateway zabbix网关ip地址或主机名,仅在启动java轮询器时需要
    JavaGateway=机器当前ip
  • JavaGatewayPort zabbix网关的监听端口,默认10052
  • StartJavaPollers java轮询器预处理数
    StartJavaPollers=5
  • StartVMwareCollectors 虚拟收集器的数量
  • SNMPTrapperFile SNMPtrapper文件,从snmp守护进程传递到服务器的临时文件
    SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
  • StartSNMPTrapper 为1,启动SNMPTrapper
  • ListenIP trapper监听的端口列表,用逗号分隔
  • CacheSize 缓存
  • Timeout SNMP服务和外部检查超时时间
    Timeout=4
  • AlertScriptsPath 预警脚本位置
    AlertScriptsPath=/usr/lib/zabbix/alertscripts
  • ExternalScripts 外部脚本路径
    ExternalScripts=/usr/lib/zabbix/externalscripts
  • LogSlowQueries 定义数据库慢查询时长,单位毫秒
    LogSlowQueries=3000
  • StatsAllowedIP 允许访问的ip列表,用逗号分隔0.0.0.0/0代表所有ipv4地址
    StatsAllowedIP=0.0.0.0/0

在zabbix_server.conf中编辑配置

1
vim /etc/zabbix/zabbix_server.conf
2
ListenPort=10051
3
DBHost=localhost
4
DBName=zabbix
5
DBUser=zabbix
6
DBPassword=password
Copied!

编辑Zabbix前端的PHP配置

PHP 优化,如有需要可根据相关参数进行优化
1
vim /etc/php.ini
Copied!
  • expose_php = Off # 禁止显示php版本的信息
  • short_open_tag = On # 取消前面的;,修改为On。表示支持php短标签
  • cgi.fix_pathinfo=1 # 将注释去掉,开启PHP的pathinfo伪静态功能。
  • post_max_size = 100M # 单提交的最大数据,此项不是限制上传单个文件的大小,而是针对整个表单的提交数据进行限制的,默认8M
  • upload_max_filesize = 50M #上载文件的最大许可大小 ,默认2M
  • max_execution_time = 600 # 脚本运行的最长时间,默认30秒
  • max_input_time = 600 # 脚本可以消耗的时间,默认60秒
  • memory_limit = 256M # 脚本运行最大消耗的内存,根据你的需求更改数值,默认128M
  • date.timezone = asia/shanghai #设置时区
1
sed -i '$a php_value[date.timezone] = Asia/Shanghai' /etc/php-fpm.d/zabbix.conf
Copied!

启动 Zabbix 服务器和代理进程,并设置开机自启动

1
systemctl restart zabbix-server zabbix-agent httpd php-fpm
2
systemctl enable --now zabbix-server zabbix-agent httpd php-fpm
Copied!

Zabbix前端可以在浏览器中通过 http://localhost/zabbix 进行访问。

配置 Zabbix 前端

  1. 1.
    输入数据库连接端口,zabbix数据库密码,输入名称
  2. 2.
    默认的用户是Admin,密码为zabbix,该用户是超级用户,输入登录信息后,点击Sign In按钮,进行登录 左下角设置可以切换语言

数据库配置,输入数据库连接端口,zabbix数据库密码

Zabbix Server 配置,输入名称

确认配置信息

默认的用户是Admin,密码为zabbix

更换web页面显示语言,切换为zh_CN

解决Zabbix 图形中文乱码

字体文件目录:

1
zabbix 4.0:/usr/share/zabbix/fonts/
2
zabbix 4.2:/usr/share/zabbix/assets/fonts/
3
zabbix5.0:/usr/share/zabbix/assets/fonts
Copied!

php 脚本文件位置:

1
/usr/share/zabbix/include/defines.inc.php
Copied!
我这里安装的是zabbix5.0,进入到/usr/share/zabbix/assets/fonts目录,可以看到一个graphfont.ttf软连接,默认指向/etc/alternatives/zabbix-web-font这个字体文件,由于php配置文件已经配置好了graphfont.ttf,所以这个软连接指向哪个字体文件就使用哪个文件

下载一个微软雅黑字体

1
cd /usr/share/zabbix/assets/fonts
2
wget https://raw.githubusercontent.com/chenqing/ng-mini/master/font/msyh.ttf
3
mv -f msyh.ttf /usr/share/fonts/dejavu/DejaVuSans.ttf
4
systemctl restart zabbix-server
Copied!

四、安装 Zabbix 客户端

关闭NFtables和SElinux

1
systemctl disable --now firewalld.service
2
setenforce 0
3
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
Copied!

安装系统常用软件包

1
dnf install -y sysstat traceroute net-tools telnet tree \
2
net-snmp-utils vim lrzsz tcpdump wget git zip tar
Copied!
注意:这里需要下载和Zabbix Server版本一致的Zabbix Agent 软件包和Yum源

Zabbix 官方源

1
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/8/x86_64/zabbix-release-5.0-1.el8.noarch.rpm
Copied!

替换为阿里云Zabbix源

1
sed -i '3c baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/8/$basearch/' /etc/yum.repos.d/zabbix.repo
Copied!

安装 Zabbix 客户端

1
dnf -y install zabbix-agent zabbix-sender
Copied!

配置zabbix_agent.conf客户端

zabbix_agent.conf配置说明

  • PidFile Pid文件
    PidFile=/var/run/zabbix/zabbix_agentd.pid
  • LogType 日志类型,system\file\console,默认file
  • LogFile 日志文件
    LogFile=/var/log/zabbix/zabbix_agentd.log
  • LogFileSize 日志大小,0-1024MB,0禁用自动日志轮换
    LogFileSize=0
  • DebugLevel 调试级别,0~5,默认为3显示waring信息
  • SourceIP 源IP,默认为空,可以写机器IP地址
    SourceIP=机器IP
  • AllowKey 允许执行的项目键
  • DenyKey
  • Server zabbix-server的IP或名称,列出主机接受传入的连接
    Server=服务端机器IP
  • ListenPort 监听端口,默认10050
  • ListenIP 监听IP,zabbix-agent的IP
    ListenIP=机器IP
  • StartAgents 监听的服务,zabbix-server的IP地址
    ServerActive=服务端机器IP:10051
  • Hostname 主机名zabbix-agent的IP,在zabbix-web上添加hosts时用这个名称
    Hostname=机器的名称
  • UnsafeUserParameters=1 默认为0,不允许使用以下字符 ' " ` * ? [ ] { } ~ $ ! & ; ( ) < > | # @,此外,不允许换行符,修改为1,表示自定义脚本中可以包含特殊字符。
  • HostMetadataItem 主机元数据,默认是system.uname,当Agent程序向服务端发送自动注册请求时,会发送其主机名,在某些情况下,Zabbix服务器的主机名不足以区分发现的主机,主机元数据可将其他信息从Agent发送到服务端。
1
vim /etc/zabbix/zabbix_agentd.conf
2
Server=192.168.186.139 # 服务器IP
3
ServerActive=192.168.186.139 # 服务器IP
4
Hostname=hezhiqiang-agent01 # 客户端主机名
5
UnsafeUserParameters=1 # 默认为0,修改为1,表示自定义脚本中可以包含特殊字符。
6
HostMetadataItem=system.uname # 主机元数据
Copied!

启动 Zabbix 代理进程,并设置开机自启动

1
systemctl enable --now zabbix-agent.service
Copied!

五、Zabbix5.0 监控 Nginx

安装 Nginx

1
vim /etc/yum.repos.d/nginx.repo
Copied!
1
[nginx-stable]
2
name=nginx stable repo
3
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
4
gpgcheck=1
5
enabled=1
6
gpgkey=https://nginx.org/keys/nginx_signing.key
7
module_hotfixes=true
8
9
[nginx-mainline]
10
name=nginx mainline repo
11
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
12
gpgcheck=1
13
enabled=0
14
gpgkey=https://nginx.org/keys/nginx_signing.key
15
module_hotfixes=true
Copied!
1
dnf makecache timer
2
dnf info nginx
3
dnf install -y nginx
Copied!
1
rm -rf /etc/nginx/conf.d/default.conf
Copied!

查看当前Nginx是否已安装内置运行状态模块

1
nginx -V
Copied!
从命令返回值中出现“--with-http_stub_status_module”这一个模块即代表内置运行状态模块已开启

开启运行状态模块,编辑Nginx配置文件

注意:stub_status模块只能应用在server或者location下
1
vim /etc/nginx/nginx.conf
2
3
参考以下内容进行修改:
4
server {
5
location /status { #定义运行状态页面名称,页面为status
6
stub_status on; #开启模块
7
access_log off; #不开启访问日志记录
8
allow 127.0.0.1; #运行127.0.0.1地址访问此网页
9
allow 192.168.186.0/24; #只运行192.168.186.0网段的主机访问此网页
10
deny all; #其余网段主机不允许访问
11
}
12
}
Copied!

检查配置文件语法是否正确,然后重启nginx服务

1
nginx -t
2
systemctl restart nginx
Copied!

浏览器访问运行状态页面

页面内容解析:
1
Active connections: 2
2
server accepts handled requests
3
2 2 1
4
Reading: 0 Writing: 1 Waiting: 1
Copied!
  • Active connections:当前活动的客户端连接数有多少(包括在等待阶段的)
  • accepts:接受的客户端连接总数
  • handled:已处理的连接总数(通常与accepts数量一致,但存在某些资源限制的情况导致数量不一致)
  • requests:客户端请求总数(包括接受请求或拒绝请求的)
  • Reading:nginx正在读取请求标头的当前连接数。
  • Writing:nginx正在将响应写回到客户端的当前连接数。
  • Waiting:当前等待请求的空闲客户端连接数。

编写监控脚本

1
mkdir /etc/zabbix/script
2
vim /etc/zabbix/script/nginx_status.sh
3
4
#!/bin/bash
5
6
#function: monitor nginx1.16 for zabbix5.0
7
#blog: he.zhiqiang.cloud
8
#version: 1.0
9
#date: 2021/6/22
10
11
#定义Nginx status页面
12
ngx_status="http://127.0.0.1/status"
13
14
#判断status页面是否存活
15
ngx_status_code() {
16
http_code=`curl -o /dev/null -s -w %{http_code} ${ngx_status}`
17
if [ ${http_code} == "200" ];then
18
return 1
19
else
20
echo "Nginx status is not running."
21
fi
22
}
23
24
#获取当前活动的客户端连接数
25
active() {
26
ngx_status_code || curl -s ${ngx_status} | grep "Active" | awk '{print $NF}'
27
}
28
29
#获取接收客户端连接的总数量
30
accepts() {
31
ngx_status_code || curl -s ${ngx_status} | awk NR==3 | awk '{print $1}'
32
}
33
34
#获取已处理的连接总数量
35
handled() {
36
ngx_status_code || curl -s ${ngx_status} | awk NR==3 | awk '{print $2}'
37
}
38
39
#获取客户端请求总数量
40
requests() {
41
ngx_status_code || curl -s ${ngx_status} | awk NR==3 | awk '{print $3}'
42
}
43
44
#获取正在读取请求标头的当前连接数量
45
reading() {
46
ngx_status_code || curl -s ${ngx_status} | grep "Reading" | awk '{print $2}'
47
}
48
49
#获取正在将响应写回到客户端的当前连接数量
50
writing() {
51
ngx_status_code || curl -s ${ngx_status} | grep "Writing" | awk '{print $2}'
52
}
53
54
#获取当前正在等待响应的客户端连接数量
55
waiting() {
56
ngx_status_code || curl -s ${ngx_status} | grep "Waiting" | awk '{print $2}'
57
}
58
59
#使用位置变量控制脚本输出
60
case $1 in
61
active)
62
active;;
63
accepts)
64
accepts;;
65
handled)
66
handled;;
67
requests)
68
requests;;
69
reading)
70
reading;;
71
writing)
72
writing;;
73
waiting)
74
waiting;;
75
*)
76
echo "Unknown options"
77
esac
78
Copied!
1
chmod +x /etc/zabbix/script/nginx_status.sh
Copied!

创建自定义监控项

说明:自定义监控项,格式为:UserParameter=<键值>,<命令>。

比如第一个自定义键值为:nginx.active,要执行的命令为执行nginx_status.sh这个脚本。
1
vim /etc/zabbix/zabbix_agentd.d/userparameter_nginx.conf
2
3
UserParameter=nginx.active,bash /etc/zabbix/script/nginx_status.sh active
4
UserParameter=nginx.accepts,bash /etc/zabbix/script/nginx_status.sh accepts
5
UserParameter=nginx.handled,bash /etc/zabbix/script/nginx_status.sh handled
6
UserParameter=nginx.requests,bash /etc/zabbix/script/nginx_status.sh requests
7
UserParameter=nginx.reading,bash /etc/zabbix/script/nginx_status.sh reading
8
UserParameter=nginx.writing,bash /etc/zabbix/script/nginx_status.sh writing
9
UserParameter=nginx.waiting,bash /etc/zabbix/script/nginx_status.sh waiting
Copied!

说明:添加完成以后,重启zabbix_agentd才会生效。

六、Zabbix Server Web界面添加被监控主机

配置——主机群组——创建主机群组——输入组名

要在Zabbix页面创建主机组,请执行以下步骤:
  • 进入: 配置 → 主机组
  • 单击页面右上角的创建主机群组
  • 在表单中输入组的相关参数

配置——主机——创建主机

按照以下步骤在Zabbix前端创建一台主机:
  • 进入: 配置 → 主机
  • 单击页面右上角 创建主机 (或者在主机名上单击以编辑一台已有的主机)
  • 在表单中输入主机的相关参数

配置——模板——创建模板

要创建模板,请执行以下操作:
  • 转到配置→模板
  • 点击创建模板
  • 编辑模板属性

主机——监控项——创建监控项

要在Zabbix管理页面创建一个监控项,请执行以下操作:
  • 进入到: 配置 → 主机
  • 在主机所在的行单击 监控项
  • 点击屏幕右上角的创建监控项
  • 输入表单中监控项的参数

主机——触发器——创建触发器

配置一个触发器,进行下面步骤:
  • 进入:配置 → 主机
  • 点击主机一行的 触发器
  • 点击右上角的 创建触发器(或者点击触发器名称去修改一个已存在的触发器)
  • 在窗口中输入触发器的参数

主机——图形——创建图形

  • 前往 配置 → 主机 (或模板) 页;
  • 点击所要创建图的主机或模板旁的 图形链接;
  • 在跳转的图表页的上,点击创建图表按钮;
  • 编辑图表的属性。

七、在Zabbix Server 中添加告警媒介

添加企业微信机器人告警脚本

zabbix_server.conf 文件中定义脚本目录,这里就选择了默认的目录

AlertScriptsPath=/usr/lib/zabbix/alertscripts

进入该定义的脚本存放路径下,创建用来推送告警消息的脚本

1
vim /usr/lib/zabbix/alertscripts/wechat.py
2
3
#!/usr/bin/python3
4
# -*- coding: utf-8 -*-
5
# zabbix企业微信报警
6
import requests, json, sys, os, datetime
7
8
#微信钩子机器人地址
9
webhook = "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxxxxxxxxxxxxxxx"
10
11
#zabbix传过来的三个变量
12
user = sys.argv[1]
13
title = sys.argv[2]
14
text = sys.argv[3]
15
16
#每发送一次报警,就记一次日志
17
file = r"/var/log/zabbix/send2wechat.log"
18
19
#报警的信息
20
data = {
21
"msgtype": "markdown",
22
"markdown": {
23
"content": title + "\n" + text
24
}
25
}
26
27
#请求这个钩子机器人
28
headers = {'Content-Type': 'application/json'}
29
x = requests.post(url=webhook, data=json.dumps(data), headers=headers)
30
if os.path.exists(file):
31
f = open(file, "a+")
32
else:
33
f = open(file, "w+")
34
f.write(" " + " - -" * 30)
35
f.write("\n")
36
37
#记录日志
38
if x.json()["errcode"] == 0:
39
f.write(" "+ str(datetime.datetime.now()) + " " + str(user) + " " + "发送成功" + " " + str(title) + "\n")
40
f.close()
41
else:
42
f.write(" "+ str(datetime.datetime.now()) + " " + str(user) + " " + "发送失败" + " " + str(title) + "\n")
43
f.close()
Copied!
接口文档 - 企业微信开发者中心

赋予脚本执行权限

1
chmod +x /usr/lib/zabbix/alertscripts/wechat.py
Copied!

安装python3.9版本

1
dnf -y install python39
Copied!

Python3安装requests模块

1
pip3 install requests
Copied!

测试脚本,告警推送

1
python3 /usr/lib/zabbix/alertscripts/wechat.py 您好,监控测试
Copied!

管理——报警媒介类型——创建媒介类型

新建一个企业微信的报警,脚本名称就是我们脚本名 wechat.py
参数:
  • {ALERT.SENDTO}
  • {ALERT.SUBJECT}
  • {ALERT.MESSAGE}

管理——报警媒介类型——Message templates

自定义消息模板, 参考宏使用

故障模板:
1
主题:# 服务故障: <font color="warning">{EVENT.NAME}</font>
2
消息:
3
{
4
> 告警主机: **{HOST.NAME}**
5
> 主机地址: **{HOST.IP}**
6
> 监控项目: {ITEM.NAME}
7
> 当前取值: {ITEM.LASTVALUE}
8
> 告警等级: {TRIGGER.SEVERITY}
9
> 告警时间: {EVENT.DATE}-{EVENT.TIME}
10
> 事件ID: {EVENT.ID}
11
}
Copied!

效果:

恢复故障模板
1
主题:# 故障恢复: <font color="info">{EVENT.NAME}</font>
2
消息:
3
{
4
> 主机名称: **{HOST.NAME}**
5
> 主机地址: **{HOST.IP}**
6
> 告警名称: {EVENT.NAME}
7
> 持续时长: {EVENT.DURATION}
8
> 恢复时间: {EVENT.RECOVERY.DATE}-{EVENT.RECOVERY.TIME}
9
> 当前状态: {TRIGGER.STATUS}
10
> 当前取值: {ITEM.LASTVALUE}
11
> 事件ID: {EVENT.ID}
12
}
Copied!
效果:
管理 --> 报警 --> 媒介类型 --> 企业微信报警 --> Message templates --> 编辑 --> 更新

用户设置——报警媒介——添加媒介类型

更新告警媒介

配置——动作——创建动作——添加触发器

配置动作

修改操作 --> 步骤 1-0(无穷大)

八、测试故障,查看报表是否已经推送成功

1
systemctl stop nginx
Copied!

报表——动作日志

复制链接
内容
前言
一、安装要求
内存和磁盘
CPU
其他硬件
具体配置参考官方文档
关闭NFtables和SElinux
安装系统常用软件包
二、安装 Zabbix 服务端
Zabbix 官方源
替换为阿里云Zabbix源
安装 Zabbix 服务端
安装Apache和MariaDB并启动
数据库根用户添加密码及安全设置
三、启动Zabbix Server进程
在zabbix_server.conf中编辑配置
编辑Zabbix前端的PHP配置
启动 Zabbix 服务器和代理进程,并设置开机自启动
Zabbix前端可以在浏览器中通过 http://localhost/zabbix 进行访问。
配置 Zabbix 前端
解决Zabbix 图形中文乱码
四、安装 Zabbix 客户端
关闭NFtables和SElinux
安装系统常用软件包
Zabbix 官方源
替换为阿里云Zabbix源
安装 Zabbix 客户端
配置zabbix_agent.conf客户端
启动 Zabbix 代理进程,并设置开机自启动
五、Zabbix5.0 监控 Nginx
安装 Nginx
查看当前Nginx是否已安装内置运行状态模块
开启运行状态模块,编辑Nginx配置文件
编写监控脚本
创建自定义监控项
六、Zabbix Server Web界面添加被监控主机
配置——主机群组——创建主机群组——输入组名
配置——主机——创建主机
配置——模板——创建模板
主机——监控项——创建监控项
主机——触发器——创建触发器
主机——图形——创建图形
七、在Zabbix Server 中添加告警媒介
添加企业微信机器人告警脚本
管理——报警媒介类型——创建媒介类型
管理——报警媒介类型——Message templates
用户设置——报警媒介——添加媒介类型
配置——动作——创建动作——添加触发器
八、测试故障,查看报表是否已经推送成功
报表——动作日志