安装环境及包名

服务器地址:                        192.168.1.10

操作系统:                            CentOS-7-x86_64-Minimal-2207-02.iso

Zabbix 版本:                        zabbix-5.4.12.tar.gz

MySQL 版本:                       mysql-5.7.40-linux-glibc2.12-x86_64.tar.gz

Nginx 版本:                          nginx-1.22.1-1.el7.ngx.x86_64.rpm

PHP 版本:                            php74-php-fpm.x86_64        7.4.33-1.el7.remi        @remi-safe

Nginx 附属配置文件:            fastcgi.conf 、log-format.conf 、nginx.conf 、proxy.conf 、default.conf

字体文件:                             Dengb.ttf

链接:https://pan.baidu.com/s/1nZSenOtTMIDsajHgcrmWzw 
提取码:luwt

一、Zabbix 是什么?

Zabbix 是企业级开源监控解决方案,支持实时监控数万台服务器、虚拟机和网络设备,采集百万级监控指标。

二、将安装包上传到服务器并设置 remi 源

1. 将安装包上传到 zabbix 服务器,例如 /root 家目录,如下图

[root@localhost ~]# rz -be 包名以及Nginx的附属配置文件
[root@localhost ~]# ll
总用量 686876
-rw-------. 1 root root      1595 8月  31 23:32 anaconda-ks.cfg
-rw-r--r--  1 root root       570 12月  2 14:51 default.conf
-rw-r--r--  1 root root      1151 7月  27 2021 fastcgi.conf
-rw-r--r--  1 root root       689 10月 17 16:11 log-format.conf
-rw-r--r--  1 root root 678001736 11月 18 14:45 mysql-5.7.40-linux-glibc2.12-x86_64.tar.gz
-rw-r--r--  1 root root    816272 11月  7 15:38 nginx-1.22.1-1.el7.ngx.x86_64.rpm
-rw-r--r--  1 root root      1845 10月 17 16:39 nginx.conf
-rw-r--r--  1 root root       521 2月  27 2019 proxy.conf
-rw-r--r--  1 root root  24513065 11月 27 13:51 zabbix-5.4.12.tar.gz[root@localhost ~]# ll Dengb.ttf
-rw-r--r-- 1 root root 16218920 12月  4 2017 Dengb.ttf# Nginx 附属配置文件:fastcgi.conf 、log-format.conf 、nginx.conf 、proxy.conf 、default.conf
# MySQL 安装包:mysql-5.7.40-linux-glibc2.12-x86_64.tar.gz
# Nginx 安装包:nginx-1.22.1-1.el7.ngx.x86_64.rpm
# Zabbix 安装包:zabbix-5.4.12.tar.gz
# 字体文件:Dengb.ttf

2. 修改 zabbix 主机名,设置主机名和IP地址映射,完成退出终端重进

[root@localhost ~]# hostnamectl set-hostname zabbix
[root@localhost ~]# vi /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.1.10    zabbix
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@localhost ~]# exit
# 退出终端
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix ~]#
# 再次进入终端,主机名已修改

3. 安装 PHP 的 remi 源

[root@zabbix ~]# yum -y install https://mirrors.aliyun.com/remi/enterprise/remi-release-7.rpm......已安装:remi-release.noarch 0:7.9-4.el7.remi                                                                                                                                作为依赖被安装:epel-release.noarch 0:7-11                                                                                                                                          完毕!
[root@zabbix ~]#

三、安装 MySQL

1. 安装 MySQL 并设置环境变量

[root@zabbix ~]# yum -y install numactl......正在安装    : numactl-2.0.12-5.el7.x86_64                                                                                                                       验证中      : numactl-2.0.12-5.el7.x86_64                                                                                                      已安装:numactl.x86_64 0:2.0.12-5.el7
# 安装 MySQL 的依赖包
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix ~]# groupadd mysql
[root@zabbix ~]# useradd -g mysql -s /sbin/nologin mysql
# 创建 MySQL 用户和组
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix ~]# tar xf mysql-5.7.40-linux-glibc2.12-x86_64.tar.gz -C /var/lib
# 解压 MySQL 二进制包到 /var/lib 目录
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix ~]# mv /var/lib/mysql-5.7.40-linux-glibc2.12-x86_64 /var/lib/mysql
# 将解压出来的目录改名为 mysql
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix ~]# chown -R mysql.mysql /var/lib/mysql/
# 将 /var/lib/mysql 的下的所有文件和目录的所有者和所属组设置为 mysql
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix ~]# echo "export PATH=$PATH:/var/lib/mysql/bin" >> /etc/profile
[root@zabbix ~]# source /etc/profile
# 设置环境变量,可直接使用 mysql 命令进行登录或其他操作
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix ~]# mysql -V
mysql  Ver 14.14 Distrib 5.7.40, for linux-glibc2.12 (x86_64) using  EditLine wrapper
# 直接输入 mysql 命令可查看版本号,环境变量设置成功

2. 设置 MySQL 配置文件,启动 MySQL

[root@zabbix ~]# mkdir -p /mysql/{data,log,var,tmp}
[root@zabbix ~]# chown -R mysql.mysql /mysql
# 创建 MySQL 的数据目录和日志目录等,可自行根据需求配置 MySQL 的数据目录及其他目录
# 设置 /mysql 目录及子目录的所有者和所属组为 mysql
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix ~]# vi /etc/my.cnf
[client]
port = 3306
socket = /var/lib/mysql/mysql.sock
default-character-set = utf8mb4[mysqld]
user = mysql
port = 3306
socket = /var/lib/mysql/mysql.sock
pid_file = /mysql/var/mysql.pid
basedir = /var/lib/mysql
datadir = /mysql/data
tmpdir = /mysql/tmp
log-error = /mysql/log/mysql_error.log
character-set-server = utf8mb4
collation-server = utf8mb4_general_ci
max_connections = 2048
open_files_limit = 65535[mysql]
default-character-set = utf8mb4
auto-rehash
# my.cnf 可自行根据需求配置,以上是基础 my.cnf 配置
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix ~]# mysqld --initialize --user=mysql --basedir=/var/lib/mysql --datadir=/mysql/data
# 初始化 MySQL ,执行完会在 /mysql/data 生成数据文件
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix ~]# cat /mysql/log/mysql_error.log
......
2022-12-02T07:55:32.637301Z 1 [Note] A temporary password is generated for root@localhost: N#mZvOBfd0fg
# 查看 mysql_error.log 文件,查询 MySQL 的初始密码,初始密码为:N#mZvOBfd0fg
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix ~]# mysqld_safe &
[1] 12445
[root@zabbix ~]# 2022-12-02T08:03:40.784749Z mysqld_safe Logging to '/mysql/log/mysql_error.log'.
2022-12-02T08:03:40.806466Z mysqld_safe Starting mysqld daemon with databases from /mysql/data
# 启动 MySQL
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix ~]# netstat -tlunp | grep 3306
tcp6       0      0 :::3306                 :::*                    LISTEN      12658/mysqld
# 查看 3306 端口,MySQL 已启动

3. 登录 MySQL,创建 zabbix 数据库,将 MySQL 启动添加到 systemd 管理

[root@zabbix ~]# mysql -uroot -p
Enter password:
# 登录 MySQL ,输入日志里的初始密码:N#mZvOBfd0fgmysql> ALTER USER 'root'@'localhost' identified by '123456';
Query OK, 0 rows affected (0.00 sec)
# 修改 MySQL 的 root 密码为:123456 ,正式环境请设置复杂密码mysql> grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
Query OK, 0 rows affected, 1 warning (0.00 sec)
# 授权 root 用户以密码 123456 远程连接,正式环境请设置复杂密码mysql> create database zabbix character set utf8 collate utf8_bin;
Query OK, 1 row affected (0.00 sec)
# 创建 zabbix 数据库,默认字符集为 UTF8,排序方式为 UTF8mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
Query OK, 0 rows affected, 1 warning (0.00 sec)
# 创建用户 zabbix,密码 zabbix,对 zabbix 数据库有完整的权限,正式环境请设置复杂密码mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
# 刷新权限mysql> quit
Bye
# 退出 MySQL
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix ~]# mysqladmin -uroot -p shutdown
Enter password:
# 关闭 MySQL 服务,输入修改后的密码:123456
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix ~]# vi /usr/lib/systemd/system/mysqld.service
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target[Install]
WantedBy=multi-user.target[Service]
User=mysql
Group=mysql
ExecStart=/var/lib/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE=infinity
# 添加 systemd 管理,新增 mysqld.service 配置文件
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix ~]# systemctl daemon-reload
[root@zabbix ~]# systemctl enable mysqld
Created symlink from /etc/systemd/system/multi-user.target.wants/mysqld.service to /usr/lib/systemd/system/mysqld.service.
[root@zabbix ~]# systemctl start mysqld
# 重新加载配置文件,设置 MySQL 开机自启并启动 MySQL ,可用 start|stop|restart 操作 MySQL
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix ~]# netstat -tlunp | grep 3306
tcp6       0      0 :::3306                 :::*                    LISTEN      12754/mysqld
# 端口已重新启动

四、安装 Nginx 和 PHP,并测试连通性

1. 安装 Nginx ,将 Nginx 附属配置文件覆盖安装后的源文件,Nginx 端口为 9200,可自行修改 Nginx 的端口。

[root@zabbix ~]# yum -y install nginx-1.22.1-1.el7.ngx.x86_64.rpm
......
已安装:nginx.x86_64 1:1.22.1-1.el7.ngx
作为依赖被安装:pcre2.x86_64 0:10.23-2.el7# 安装 nginx
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
配置文件目录:/etc/nginx/
PID目录:/var/run/nginx.pid
错误日志:/var/log/nginx/error.log
访问日志:/var/log/nginx/access.log
默认站点目录:/usr/share/nginx/html
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix ~]# mv fastcgi.conf /etc/nginx/
[root@zabbix ~]# mv proxy.conf /etc/nginx/
[root@zabbix ~]# mv log-format.conf /etc/nginx/
[root@zabbix ~]# mv nginx.conf /etc/nginx/
mv:是否覆盖"/etc/nginx/nginx.conf"? y
[root@zabbix ~]# mv default.conf /etc/nginx/conf.d/
mv:是否覆盖"/etc/nginx/conf.d/default.conf"? y# 将 nginx 的附属配置文件覆盖安装后的源文件,default.conf 设置 9200 端口,可自行修改端口
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix ~]# systemctl enable nginx
Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service.
[root@zabbix ~]# systemctl start nginx
# 设置 Nginx 开机自启并启动 Nginx
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix ~]# netstat -tlunp | grep nginx
tcp        0      0 0.0.0.0:9200            0.0.0.0:*               LISTEN      12938/nginx: master
# 查看 Nginx 端口,9200 端口已开启

2. 安装 PHP

[root@zabbix ~]# yum -y install php74.x86_64 php74-php-gd.x86_64 php74-php-mysqlnd.x86_64 php74-php-bcmath.x86_64 php74-php-mbstring.x86_64 php74-php-xml.x86_64 php74-php-ldap.x86_64 php74-php-fpm.x86_64# 安装 PHP
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix ~]# vi /etc/opt/remi/php74/php.ini
max_execution_time = 300
max_input_time = 300
post_max_size = 16M
date.timezone = Asia/Shanghai# 修改 php.ini 配置文件,设置时区等信息,设置为上面的配置
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix ~]# systemctl enable php74-php-fpm
Created symlink from /etc/systemd/system/multi-user.target.wants/php74-php-fpm.service to /usr/lib/systemd/system/php74-php-fpm.service.
[root@zabbix ~]# systemctl start php74-php-fpm# 设置 php74-php-fpm 开机自启并启动 php74-php-fpm
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix ~]# netstat -tlunp | grep php
tcp        0      0 127.0.0.1:9000          0.0.0.0:*               LISTEN      13140/php-fpm: mast# 查看端口,PHP 9000 端口已开启

3. 测试 Nginx 、PHP 、MySQL 连通性

[root@zabbix ~]# vi /usr/share/nginx/html/index.php
<?php
phpinfo()
?>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix ~]# vi /usr/share/nginx/html/mysql.php
<?php
$link=mysqli_connect('zabbix','root','123456');
if($link) echo "<h1>Success!!</h1>";else echo "Fail!!";
mysql_close();# 添加 index.php 和 mysql.php 配置文件,测试 Nginx 、MySQL 与 PHP 连通性

浏览器输入:

http://192.168.1.10:9200/index.php        出现下面的截图,说明 Nginx 和 PHP 已连通

浏览器输入:

http://192.168.1.10:9200/mysql.php        出现下面的截图,说明 MySQL 和 PHP 连通

五、安装配置 Zabbix 服务端和客户端

1. 安装配置 zabbix 服务端、安装 zabbix 客户端

[root@zabbix ~]# yum install -y gcc gcc-c++ libxml2-devel net-snmp-devel libevent-devel libcurl-devel mysql-devel
# 安装依赖包
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix ~]# tar xf zabbix-5.4.12.tar.gz
[root@zabbix ~]# cd zabbix-5.4.12
[root@zabbix zabbix-5.4.12]# ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2
[root@zabbix zabbix-5.4.12]# make install# 解压 zabbix-5.4.12.tar.gz 并编译安装,编译安装过程中若有报错,需安装对应的依赖包
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix zabbix-5.4.12]# useradd zabbix -s /sbin/nologin -M
# 创建 zabbix 账户,zabbix 账户不用登录,因此设置 nologin[root@zabbix zabbix-5.4.12]# cp -af ui /usr/local/zabbix/
[root@zabbix zabbix-5.4.12]# mkdir /usr/local/zabbix/log
[root@zabbix zabbix-5.4.12]# mkdir /usr/local/zabbix/pid
# 将 zabbix 页面拷贝到 /usr/local/zabbix/ 目录
# 新建 log 和 pid 目录,存放日志和 pid 文件[root@zabbix zabbix-5.4.12]# chown zabbix.zabbix -R /usr/local/zabbix
# 将 /usr/local/zabbix 目录及下属目录及文件的所有者和所属组设置为 zabbix[root@zabbix zabbix-5.4.12]# ll /usr/local/zabbix
总用量 4
drwxr-xr-x  2 zabbix zabbix   62 12月  2 17:33 bin
drwxr-xr-x  4 zabbix zabbix  114 12月  2 17:33 etc
drwxr-xr-x  3 zabbix zabbix   21 12月  2 17:33 lib
drwxr-xr-x  2 zabbix zabbix    6 12月  2 17:38 log
drwxr-xr-x  2 zabbix zabbix    6 12月  2 17:38 pid
drwxr-xr-x  2 zabbix zabbix   48 12月  2 17:33 sbin
drwxr-xr-x  4 zabbix zabbix   31 12月  2 17:33 share
drwxr-xr-x 12 zabbix zabbix 4096 4月   4 2022 ui
# 需要保证 /usr/local/zabbix 目录里的 ui、pid、log、share 四个目录的权限为 755
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix zabbix-5.4.12]# cd database/mysql/
[root@zabbix mysql]# mysql -uzabbix -pzabbix zabbix < schema.sql
mysql: [Warning] Using a password on the command line interface can be insecure.
[root@zabbix mysql]# mysql -uzabbix -pzabbix zabbix < images.sql
mysql: [Warning] Using a password on the command line interface can be insecure.
[root@zabbix mysql]# mysql -uzabbix -pzabbix zabbix < data.sql
mysql: [Warning] Using a password on the command line interface can be insecure.# 进入 database/mysql/ 目录,使用 zabbix 账户导入数据
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix mysql]# vi /usr/local/zabbix/etc/zabbix_server.conf
LogFile=/usr/local/zabbix/log/zabbix_server.log
PidFile=/usr/local/zabbix/pid/zabbix_server.pid
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
DBSocket=/var/lib/mysql/mysql.sock# 设置 zabbix 服务端的日志、pid 存放路径,以及设置连接数据库的相关信息
# DBHost 如果 zabbix 数据库不在本机填写远程 MySQL 服务器的 IP 地址,本例设置 localhost
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix mysql]# vi /usr/lib/systemd/system/zabbix-server.service
[Unit]
Description=Zabbix Server
After=syslog.target
After=network.target
After=mysql.service
After=mysqld.service
After=mariadb.service
After=postgresql.service[Service]
Environment="CONFFILE=/usr/local/zabbix/etc/zabbix_server.conf"
Type=forking
Restart=on-failure
PIDFile=/usr/local/zabbix/pid/zabbix_server.pid
KillMode=control-group
ExecStart=/usr/local/zabbix/sbin/zabbix_server -c $CONFFILE
ExecStop=/bin/kill -SIGTERM $MAINPID
RestartSec=10s
TimeoutSec=0[Install]
WantedBy=multi-user.target# 将 zabbix 服务端添加 systemd 管理,可使用 start|stop|restart 启动停止 zabbix 服务端
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix mysql]# echo "/var/lib/mysql/lib/" >> /etc/ld.so.conf
[root@zabbix mysql]# ldconfig
[root@zabbix mysql]# systemctl daemon-reload
[root@zabbix mysql]# systemctl enable zabbix-server
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-server.service to /usr/lib/systemd/system/zabbix-server.service.
[root@zabbix mysql]# systemctl start zabbix-server# 将 MySQL 的 lib 目录添加到 /etc/ld.so.conf 并执行 ldconfig ,否则启动时可能找不到 libmysqlclient.so.20
# 重新加载配置,添加 zabbix 服务端开机自启并启动 zabbix 服务端
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix mysql]# netstat -tlunp | grep zabbix_server
tcp        0      0 0.0.0.0:10051           0.0.0.0:*               LISTEN      1814/zabbix_server
tcp6       0      0 :::10051                :::*                    LISTEN      1814/zabbix_server
# 查看端口,zabbix 服务端的 10051 端口已开启
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix mysql]# vi /etc/nginx/conf.d/default.conf
root  /usr/local/zabbix/ui;[root@zabbix mysql]# systemctl restart nginx
# 修改 Nginx 配置文件,将 zabbix 主页路径替换 Nginx 的默认路径,并重启 Nginx

2. 打开浏览器,输入 http://192.168.1.10:9200/zabbix 进入设置页面

默认语言选择中文,可根据自己需求更改语言,点“下一步”

 必要条件检测,全部 OK ,继续点“下一步”

数据库端口填写:3306

密码填写 zabbix 数据库的密码:zabbix

继续“下一步”

Name 填写描述,例如填写:xx系统或平台监控,继续点“下一步”

这一步保持默认即可,继续点“下一步”

信息汇总,继续点“下一步”

 点“1.下载配置文件”,将配置文件 zabbix.conf.php 下载到自己的 Windows 电脑上

[root@zabbix mysql]# cd /usr/local/zabbix/ui/conf/
[root@zabbix conf]# rz -be# 进入 /usr/local/zabbix/ui/conf/ 目录,将下载下来的 zabbix.conf.php 文件上传到这个目录下
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix conf]# ll
总用量 12
drwxr-xr-x 2 zabbix zabbix    6 4月   4 2022 certs
-rw-r--r-- 1 zabbix zabbix 1036 4月   4 2022 maintenance.inc.php
-rw-r--r-- 1 root   root   1670 12月  2 21:53 zabbix.conf.php
-rw-r--r-- 1 zabbix zabbix 1638 4月   4 2022 zabbix.conf.php.example
[root@zabbix conf]# chown zabbix.zabbix zabbix.conf.php
[root@zabbix conf]# ll zabbix.conf.php
-rw-r--r-- 1 zabbix zabbix 1670 12月  2 21:53 zabbix.conf.php
# 上传到 /usr/local/zabbix/ui/conf/ 目录后,将这个文件的所有者和所属组修改为 zabbix

继续点击“完成”,出现下图:

最后再次点击“完成”,进入输入用户名和密码的界面,如下图:

用户名称:Admin

密码:zabbix

第一次进去,默认密码就是:zabbix,进入后再修改为复杂密码

点击“登录”进入 zabbix 主页面,zabbix 服务端安装完毕

 3. 配置 zabbix 客户端

[root@zabbix conf]# vi /usr/local/zabbix/etc/zabbix_agentd.confPidFile=/usr/local/zabbix/pid/zabbix_agentd.pid
LogFile=/usr/local/zabbix/log/zabbix_agentd.log
EnableRemoteCommands=1
Server=192.168.1.10
ServerActive=192.168.1.10
Hostname=192.168.1.10# 设置 zabbix 客户端的日志、pid 文件存放路径,打开允许执行远程命令功能(根据自身需求是否开启)
# Server 设置为 zabbix 服务器 IP 地址:192.168.1.10
# ServerActive(主动提交方式)设置为 zabbix 服务器 IP 地址:192.168.1.10
# Hostname 设置 zabbix 客户端 IP 地址,本机是:192.168.1.10,其他服务器设置为:192.168.1.xx
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix conf]# vi /usr/lib/systemd/system/zabbix-agentd.service[Unit]
Description=Zabbix Agent
After=syslog.target
After=network.target[Service]
User=zabbix
Environment="CONFFILE=/usr/local/zabbix/etc/zabbix_agentd.conf"
Type=forking
Restart=on-failure
PIDFile=/usr/local/zabbix/pid/zabbix_agentd.pid
KillMode=control-group
ExecStart=/usr/local/zabbix/sbin/zabbix_agentd -c $CONFFILE
ExecStop=/bin/kill -SIGTERM $MAINPID
RestartSec=10s[Install]
WantedBy=multi-user.target# 将 zabbix 客户端添加 systemd 管理,可使用 start|stop|restart 启动停止 zabbix 客户端
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix conf]# systemctl daemon-reload
[root@zabbix conf]# systemctl enable zabbix-agentd
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-agentd.service to /usr/lib/systemd/system/zabbix-agentd.service.
[root@zabbix conf]# systemctl start zabbix-agentd# 重新加载配置文件,将 zabbix 客户端设置开机自启并启动 zabbix 客户端
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix conf]# netstat -tlunp | grep zabbix_agentd
tcp        0      0 0.0.0.0:10050           0.0.0.0:*               LISTEN      2015/zabbix_agentd
tcp6       0      0 :::10050                :::*                    LISTEN      2015/zabbix_agentd# 查看端口,zabbix 客户端 10050 端口已开启
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@zabbix conf]# netstat -tlunp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:9200            0.0.0.0:*               LISTEN      1905/nginx: master
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      898/sshd
tcp        0      0 0.0.0.0:10050           0.0.0.0:*               LISTEN      2015/zabbix_agentd
tcp        0      0 0.0.0.0:10051           0.0.0.0:*               LISTEN      1814/zabbix_server
tcp        0      0 127.0.0.1:9000          0.0.0.0:*               LISTEN      894/php-fpm: master
tcp6       0      0 :::22                   :::*                    LISTEN      898/sshd
tcp6       0      0 :::10050                :::*                    LISTEN      2015/zabbix_agentd
tcp6       0      0 :::10051                :::*                    LISTEN      1814/zabbix_server
tcp6       0      0 :::3306                 :::*                    LISTEN      893/mysqld# 查看最终所有服务端口
# MySQL:3306    Nginx:9200    PHP:9000    zabbix 服务端:10051    zabbix 客户端:10050

4. 解决图形中文字符乱码问题

[root@zabbix ~]# mv Dengb.ttf /usr/local/zabbix/ui/assets/fonts/
[root@zabbix ~]# vi /usr/local/zabbix/ui/include/defines.inc.phpdefine('ZBX_GRAPH_FONT_NAME',           'Dengb'); // font file name# 将字体文件移动到 /usr/local/zabbix/ui/assets/fonts/ 目录
# 修改 defines.inc.php 配置文件
# 第 78 行,将 DejaVuSans 修改为 Dengb ,修改完成后保存退出即可

图形已正常显示中文

总结

以上就是今天要讲的内容,本文介绍了zabbix 最新 5.4.12 版本的编译安装,以及使用 Nginx 作为 web 页面展示。

Zabbix 5.4.12 源码编译安装相关推荐

  1. zabbix源码编译安装以及添加第一台host监控

    基础准备 硬件需求 数据库需求 软件需求 其他软件需求 安装 安装方式 source code 编译好的二进制包 rpm或者deb 源码编译安装部署zabbix以及附件 前提准备 最小化安装操作系统 ...

  2. postgresql 12.0 源码编译安装

    postgresql 12.0 源码编译安装 1.安装相关软件包 su - root yum install -y cmake gcc gcc-c++ perl readline readline-d ...

  3. mono和monodevelop源码编译安装

    之所以用源码编译的方式安装mono和monodevelop,是因为通过yum安装的mono不是最新版本,而且monodevelop不能建 asp.net MVC3的工程. 而且通过源码安装,可以进一步 ...

  4. CentOS 7上源码编译安装和配置LNMP Web+phpMyAdmin服务器环境

    什么是LNMP? LNMP(别名LEMP)是指由Linux, Nginx, MySQL/MariaDB, PHP/Perl/Python组合成的动态Web应用程序和服务器,它是一组Web应用程序的基础 ...

  5. mysql+PHP源码编译安装

    mysql源码编译安装 环境redhat6.5 安装依赖包: yum install cmake-2.8.12.2-4.el6.x86_64.rpm gcc-c++ ncurses-devel gcc ...

  6. 源码 linux下编译_Linux云服务器软硬链接及源码编译安装python3.8的一些备注

    推荐一个简书作者写的从零开始学习Linux,非常细,授人以鱼不如授人以渔. https://www.jianshu.com/p/54c0e6a1da99 正文:看一下服务器的版本 cat /proc/ ...

  7. linux下源码安装vim,ubuntu 源码编译安装最新的vim 8.0

    为什么要源码编译安装VIM? 因为我要安装ycm,但是ubuntu14.04仓库vim版本低 教程步骤: 1, 核对系统版本 2, 删除系统自带的vim 3, 编译安装vim 4, 检验vim的安装 ...

  8. LNMP架构环境搭建之PHP、Nginx源码编译安装及其简单配置应用

    LNMP架构中的Mysql见上一篇博文"LNMP架构环境搭建之mysql源码编译安装" 一.PHP简介 PHP(外文名:PHP: Hypertext Preprocessor,中文 ...

  9. LNMP架构环境搭建之mysql源码编译安装

    Mysql MySQL是一个开源的数据库,在互联网行业应用的很广泛,下面来记录一下从源码编译安装的步骤,当然,MySQL也有其他安装方式,比如,使用yum下载安装rpm包,或者二进制方式安装,如果机器 ...

最新文章

  1. 基于CAP模型设计企业级真正高可用的分布式锁
  2. 12v电流表的正确接法_难点分析 | 电表的内外接法
  3. python 十进制与二进制以及位运算
  4. qt.pro转成vs程序
  5. 详解MRS CDL整体架构设计
  6. select for update作用
  7. 你的个人信息真的被偷走了?——那些过分“精准”的广告推荐的背后
  8. Ubuntu安装报错E: Could not get lock /var/lib/dpkg/lock-frontend
  9. oracle系统AP对应的凭证编号,AP主要账户及会计分录
  10. 剑指offer python版 剪绳子
  11. 计算机专业答辩网站怎么保证安全性,答辩(计算机专业答辩题目选集)
  12. C语言 | 进制转换
  13. Cisco Packet Tracer---链路聚合简单配置
  14. 禅宗公案 艾舍尔的画与哥德尔定理——哥德尔逻辑与哲学之2
  15. win10电脑部分软件不能连接网络,只有QQ和微信可以连接网络,浏览器不能上网
  16. 高质量 Go 进阶图书,它来了
  17. 计算机实战项目、毕业设计、课程设计之[含论文+辩论PPT+源码等]微信小程序社区疫情防控+后台管理|前后分离VUE[包运行成功
  18. Dubbo项目消费者调用提供者报cannot be cast to com.baomidou.mybatisplus.core.metadata.IPage
  19. R 语言 apply 系列函数
  20. 简明图解冯·诺依曼计算机体系

热门文章

  1. 解决选择困难症,有哪些常用的营销手段?
  2. Spring,SpringBoot,Springcloud都是干嘛的?
  3. 普京签署法案禁止美公民收养俄儿童
  4. 把EXCEL用程序导入到ORACLE中(SpringMVC+MyBatis)
  5. 小型元器件介绍:瓷片电容
  6. 微信答题赚钱每题5元,搞兼职还不如做项目!
  7. Competing-Consumers模式
  8. 百人会20年华盛顿之行随感
  9. 水生生物学类毕业论文文献包含哪些?
  10. Cobalt编译流程分析