Zabbix的安装(Docker容器安装和编译安装)
1.Docker 容器化安装
-
下载镜像,需要采取一些特殊手段进行:
# 这是网站:https://hub.docker.com/r/zabbix/zabbix-server-mysql docker pull zabbix/zabbix-server-mysql# 这是网站:https://hub.docker.com/r/zabbix/zabbix-web-nginx-mysql docker pull zabbix/zabbix-web-nginx-mysql# 在准备一个mysql镜像 docker pull mysql # 这里我选择一个 mysql8.0-debian 的版本 docker pull mysql8.0:debian -
上传镜像
docker load -i mysql-8.0.tar docker load -i zbx-server-mysql-7.0.9.tar docker load -i zbx-web-ngx-mysql-7.0.9.tar- mysql-8.0.tar:这是 数据库服务镜像 ,Zabbix 服务器将会连接到这个数据库以存储和查询监控数据
- zbx-server-mysql-7.0.9.tar:这是 Zabbix 服务器 的镜像,并且它已经与 MySQL 数据库 配合使用,专门用于与 MySQL 后端连接和管理监控数据。
- zbx-web-ngx-mysql-7.0.9.tar:这是 Zabbix Web 前端 ,使用了 Nginx 作为反向代理服务器,MySQL 作为后端数据库。它提供了一个 Web 界面来管理 Zabbix,显示监控数据、配置和报警等。
-
编写docker-compose.yml进行运行:
mkdir zabbix vim docker-compose.yml # 将一下内容输入到文件中 #version: "3.8" services: db: image: mysql:8.0-debian container_name: zbx_db networks: - zabbix restart: always volumes: - ./zbx_db/:/var/lib/mysql/ environment: MYSQL_ROOT_PASSWORD: "Root123" MYSQL_DATABASE: "zabbix" MYSQL_USER: "zabbix" MYSQL_PASSWORD: "pwd" command: - --character-set-server=utf8 - --collation-server=utf8_bin - --default-authentication-plugin=mysql_native_password zbx_server: image: zabbix/zabbix-server-mysql:7.0.9-ubuntu container_name: zabbix-server-mysql-7.0 networks: - zabbix restart: always ports: - 10051:10051 depends_on: - db environment: DB_SERVER_HOST: "db" MYSQL_ROOT_PASSWORD: "Root123" MYSQL_DATABASE: "zabbix" MYSQL_USER: "zabbix" MYSQL_PASSWORD: "pwd" zbx_web: image: zabbix/zabbix-web-nginx-mysql:7.0.9-ubuntu container_name: zabbix-web-nginx-mysql networks: - zabbix restart: always ports: - 80:8080 depends_on: - db - zbx_server environment: ZBX_SERVER_HOST: "zbx_server" DB_SERVER_HOST: "db" MYSQL_ROOT_PASSWORD: "Root123" MYSQL_DATABASE: "zabbix" MYSQL_USER: "zabbix" MYSQL_PASSWORD: "pwd" networks: zabbix: driver: bridge ipam: config: - subnet: 172.200.0.0/16 ip_range: 172.200.1.0/24 gateway: 172.200.1.1 -
使用
docker-compose启动容器docker-compose up --build -d -
检查容器是否启动
docker ps # 输出: a235290c6927 zabbix/zabbix-web-nginx-mysql:7.0.9-ubuntu "docker-entrypoint.sh" 23 minutes ago Up 23 minutes (healthy) 8443/tcp, 0.0.0.0:80->8080/tcp, :::80->8080/tcp zabbix-web-nginx-mysql 05643d182a53 zabbix/zabbix-server-mysql:7.0.9-ubuntu "/usr/bin/docker-ent…" 23 minutes ago Up 23 minutes 0.0.0.0:10051->10051/tcp, :::10051->10051/tcp zabbix-server-mysql-7.0 f4d04652ade0 mysql:8.0-debian "docker-entrypoint.s…" 23 minutes ago Up 23 minutes 3306/tcp, 33060/tcp zbx_db# 如何看到则启动成功 -
访问 Zabbix Web 前端
# 浏览器输入 http://<服务器IP地址>:8080 # Zabbix 的用户名和密码: 用户名:Admin 密码:zabbix
2.Docker 编译安装
-
清理 YUM 缓存(目前使用的Kylin系统)
yum clean all rm -rf /var/cache/yum yum makecache -
安装 Zabbix 编译安装的依赖
yum install -y --skip-broken gcc gcc-c++ make cmake pcre-devel unixODBC unixODBC-devel httpd fping curl-devel net-snmp net-snmp-devel OpenIPMI-devel ipmitool snmpd libxml2 libxml2-devel bzip2-devel curl-devel libpng-devel libjpeg-devel libXpm-devel freetype-devel libicu-devel libmcrypt-devel libzip-devel libssl-devel libpng-devel libjpeg-devel libxslt-devel openldap-devel -
接下来安装php,但是在安装之前需要安装SQLite,yum安装也可以,但是有可能版本会低,所以建议编译安装,目前我的这个机器yum安装的是低于这个版本的,所以我选择编译安装,如果是高版本则选择跳过这个步骤即可
# 目前我使用的是Kylin V10 SP3的机器,缺的依赖有些多,所以这里在补充一些,与上面的有些冲突,不过不碍事儿 yum install -y gcc libxml2-devel bzip2-devel libpng-devel libjpeg-devel libXpm-devel freetype-devel libicu-devel libmcrypt-devel libcurl-devel aspell-devel autoconf bison re2c libtool libxslt-devel libzip-devel openldap-devel php-ldap openldap openldap-devel # 下载源码包 wget https://www.sqlite.org/2025/sqlite-autoconf-3490100.tar.gz # 解压并进入目录 tar -xzf sqlite-autoconf-3490100.tar.gz cd sqlite-autoconf-3490100 # 编译安装 ./configure --prefix=/usr/local/sqlite3 make -j$(nproc) make install # 手动指定SQLite路径可以避免其他软件编译安装找不到 echo "export PKG_CONFIG_PATH=/usr/local/sqlite3/lib/pkgconfig:$PKG_CONFIG_PATH" >> /etc/profile echo "export LD_LIBRARY_PATH=/usr/local/sqlite3/lib:$LD_LIBRARY_PATH" >> /etc/profile source /etc/profile # 返回上层目录 cd .. -
这里还需要一些依赖,可能是我使用Kylin V10的原因依赖缺的比较多 oniguruma、oniguruma-devel、libxslt、libxslt-devel软件包,可以使用yum安装,如果已经安装则跳过该步骤即可
# 安装依赖软件包 yum install -y oniguruma oniguruma-devel libxslt libxslt-devel # 检查 pkg-config 是否能找到 oniguruma: pkg-config --modversion oniguruma # 检查 pkg-config 是否能找到 libxslt,正确输出版本号(≥1.1.0),说明安装成功。 pkg-config --modversion libxslt # 做一个lib库的软连接和添加环境变量 ln -s /usr/lib64/libldap-2.4.so.2 /usr/lib/libldap.so ln -s /usr/lib64/libldap_r-2.4.so.2 /usr/lib/libldap_r.so echo "export LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH" >> /etc/profile source /etc/profile -
编译安装php,因为zabbix7.0LTS需要PHP8.0版本以上才行,目前yum源中没有需要编译安装
# 下载php的源码包,这是当前事件最新的2025/3/29 wget https://www.php.net/distributions/php-8.0.0.tar.gz # 解压源码包 tar -xzvf php-8.0.0.tar.gz # 进入解压后的源码目录 cd php-8.0.0 # 创建安装目录 mkdir -p /application/php8.0.0 -
开始配置编译选项,前面的依赖都以解决的话,就可以进行配置编译选项了,如果有报错安装相应的软件包即可,别慌~~
# 配置编译选项 ./configure \ --prefix=/application/php8.0.0/ \ --with-config-file-path=/application/php8.0.0/lib \ --with-fpm-user=nginx \ --with-fpm-group=nginx \ --enable-fpm \ --enable-opcache \ --disable-debug \ --disable-rpath \ --enable-shared \ --enable-mysqlnd \ --with-mysqli=mysqlnd \ --with-pdo-mysql=mysqlnd \ --enable-mysqlnd-compression-support \ --with-zlib \ --enable-xml \ --disable-rpath \ --enable-bcmath \ --enable-shmop \ --enable-sysvsem \ --with-curl \ --enable-mbregex \ --enable-mbstring \ --enable-intl \ --enable-ftp \ --enable-gd \ --enable-gd-jis-conv \ --with-jpeg \ --with-freetype \ --with-openssl \ --with-mhash \ --enable-pcntl \ --enable-sockets \ --with-zip \ --enable-soap \ --with-gettext \ --disable-fileinfo \ --with-pear \ --with-ldap=shared \ --without-gdbm # 选项解释: --prefix=/application/php8.0.0/: 安装路径,表示将 PHP 安装到 /usr/local/php。 --with-config-file-path=/application/php8.0.0/lib: 配置文件路径,通常是 PHP 配置文件(如 php.ini)所在的目录。这里一定要指定正确,要不修改起来很麻烦 --enable...: 启用组件 --with...: 选择安装组件 # 其他参数:根据需要启用或禁用 PHP 扩展。 -
检查是否配置编译选项成功
# 编译安装之后会看到如下信息则表示安装成功: +--------------------------------------------------------------------+ | License: | | This software is subject to the PHP License, available in this | | distribution in the file LICENSE. By continuing this installation | | process, you are bound by the terms of this license agreement. | | If you do not agree with the terms of this license, you must abort | | the installation process at this point. | +--------------------------------------------------------------------+ Thank you for using PHP. -
编译 PHP并安装
# 这条命令将 liblber 和 libldap 的库路径添加到 LDFLAGS 环境变量中。 export LDFLAGS="-L/usr/lib64 -llber -lldap" # 编译安装正式开始 make -j$(nproc) && make install # 弹出以下信息表示安装成功: [PEAR] Archive_Tar - installed: 1.4.9 [PEAR] Console_Getopt - installed: 1.4.3 [PEAR] Structures_Graph- installed: 1.1.1 [PEAR] XML_Util - installed: 1.4.5 warning: pear/PEAR dependency package "pear/Archive_Tar" installed version 1.4.9 is not the recommended version 1.4.4 [PEAR] PEAR - installed: 1.10.12 Wrote PEAR system config file at: /application/php8.0.0/etc/pear.conf You may want to add: /application/php8.0.0/lib/php to your php.ini include_path /root/php-8.0.0/build/shtool install -c ext/phar/phar.phar /application/php8.0.0/bin/phar.phar ln -s -f phar.phar /application/php8.0.0/bin/phar Installing PDO headers: /application/php8.0.0/include/php/ext/pdo/ -
检查安装版本
/application/php8.0.0/bin/php -v # 输出一下信息表示安装成功 PHP 8.0.0 (cli) (built: Mar 30 2025 15:31:52) ( NTS ) Copyright (c) The PHP Group Zend Engine v4.0.0-dev, Copyright (c) Zend Technologies -
配置 PHP 和 PHP-FPM
cp ~/php-8.0.0/php.ini-development /application/php8.0.0/lib/php.ini chmod 644 /application/php8.0.0/lib/php.ini ln -sf /application/php8.0.0/lib/php.ini /etc/php-fpm.d/php.ini sed -i 's#^max_input_time = #max_input_time = 300#g' /etc/php-fpm.d/php.ini sed -i 's#^post_max_size = #post_max_size = 16M#g' /etc/php-fpm.d/php.ini sed -i 's#^max_execution_time = #max_execution_time = 300#g' /etc/php-fpm.d/php.ini sed -i 's#^;extension=ldap#extension=ldap#g' /etc/php-fpm.d/php.ini # 复制 PHP-FPM 配置文件 cp /application/php8.0.0/etc/php-fpm.conf.default /application/php8.0.0/etc/php-fpm.conf -
配置php的命令到环境变量
echo "export PATH=$PATH:/application/php8.0.0/bin:/application/php8.0.0/sbin" >> /etc/profile source /etc/profile -
创建 php-fpm.service 文件,让systemctl管理php-fpm服务
vim /etc/systemd/system/php-fpm.service # 写入以下内容 [Unit] Description=PHP FastCGI Process Manager After=network.target [Service] Type=simple Environment="PATH=/application/php8.0.0/bin:/usr/local/bin:/usr/bin:/bin" Environment="LD_LIBRARY_PATH=/usr/local/sqlite3/lib:/root/sqlite-autoconf-3490100" ExecStart=/application/php8.0.0/sbin/php-fpm --fpm-config /application/php8.0.0/etc/php-fpm.conf ExecReload=/bin/kill -USR2 $MAINPID PIDFile=/application/php8.0.0/var/run/php-fpm.pid Restart=always [Install] WantedBy=multi-user.target # 解释参数 ExecStart=/usr/local/php/sbin/php-fpm:以后台模式启动 php-fpm,让 systemd 进行管理。想让前台模式启动的话添加 --nodaemonize 参数即可,例如 ExecStart=/usr/local/php/sbin/php-fpm --nodaemonize ExecReload=/bin/kill -USR2 $MAINPID:当 systemctl reload php-fpm 时,会向 php-fpm 发送 USR2 信号,使其平滑重启。 Restart=always:如果 php-fpm 崩溃,会自动重启。 LimitNOFILE=100000:提高文件句柄数,避免高并发时因文件打开数受限而导致问题。 -
复制一份php-fpm的配置文件
cp /application/php8.0.0/etc/php-fpm.d/www.conf.default /application/php8.0.0/etc/php-fpm.d/www.conf ln -s /application/php8.0.0/etc/php-fpm.d/www.conf /etc/php-fpm.d/www.conf -
重新加载systemd并启用php-fpm
# 重新加载 systemd 配置 systemctl daemon-reload # 设置 php-fpm 开机自启 systemctl enable php-fpm # 启动 php-fpm systemctl start php-fpm # 检查运行状态 systemctl status php-fpm -
安装nginx
yum install -y nginx -
更改php配置文件
# 查看配置文件 cat /etc/php-fpm.d/www.conf | egrep -v "^;|^$|^ " # 修改用户名和用户组 sed -i 's#^user = nobody#user = nginx#g' /etc/php-fpm.d/www.conf sed -i 's#^group = nobody#group = nginx#g' /etc/php-fpm.d/www.conf # 检查是否更改成功 cat /etc/php-fpm.d/www.conf | grep "^group =" # 是否是nginx user = nginx group = nginx -
启动php服务并设置开机自启
systemctl enable php-fpm systemctl start php-fpm systemctl status php-fpm # 查看是否已经running -
安装mysql8.4.4LTS长期支持版数据库
# 进入mysql的网站,注意这里需要登陆账号密码才能下载 https://dev.mysql.com/downloads/mysql/
-
上传到机器中并解压
# 上传的话自己想办法哈,scp也可以,像xshell拖动也可以 mkdir -p ~/mysql-8.4.4 tar xvf mysql-8.4.4-1.el8.x86_64.rpm-bundle.tar -C ~/mysql-8.4.4 cd ~/mysql-8.4.4 # 全部的安装包: mysql-community-client-8.4.4-1.el8.x86_64.rpm mysql-community-client-debuginfo-8.4.4-1.el8.x86_64.rpm mysql-community-client-plugins-8.4.4-1.el8.x86_64.rpm mysql-community-client-plugins-debuginfo-8.4.4-1.el8.x86_64.rpm mysql-community-common-8.4.4-1.el8.x86_64.rpm mysql-community-debuginfo-8.4.4-1.el8.x86_64.rpm mysql-community-debugsource-8.4.4-1.el8.x86_64.rpm mysql-community-devel-8.4.4-1.el8.x86_64.rpm mysql-community-icu-data-files-8.4.4-1.el8.x86_64.rpm mysql-community-libs-8.4.4-1.el8.x86_64.rpm mysql-community-libs-compat-8.4.4-1.el8.x86_64.rpm mysql-community-libs-compat-debuginfo-8.4.4-1.el8.x86_64.rpm mysql-community-libs-debuginfo-8.4.4-1.el8.x86_64.rpm mysql-community-server-8.4.4-1.el8.x86_64.rpm mysql-community-server-debug-8.4.4-1.el8.x86_64.rpm mysql-community-server-debug-debuginfo-8.4.4-1.el8.x86_64.rpm mysql-community-server-debuginfo-8.4.4-1.el8.x86_64.rpm mysql-community-test-8.4.4-1.el8.x86_64.rpm mysql-community-test-debuginfo-8.4.4-1.el8.x86_64.rpm -
安装rpm包(其实可以不全部下载,但是这里为了方便就全部下载了,但是要严格安装顺序才能全部安装)
# 安装基础组件 sudo rpm -ivh mysql-community-common-8.4.4-1.el8.x86_64.rpm sudo rpm -ivh mysql-community-icu-data-files-8.4.4-1.el8.x86_64.rpm sudo rpm -ivh mysql-community-libs-8.4.4-1.el8.x86_64.rpm sudo rpm -ivh mysql-community-libs-compat-8.4.4-1.el8.x86_64.rpm # 安装安装客户端相关 sudo rpm -ivh mysql-community-client-8.4.4-1.el8.x86_64.rpm sudo rpm -ivh mysql-community-client-plugins-8.4.4-1.el8.x86_64.rpm # 安装调试信息(如果需要调试) sudo rpm -ivh mysql-community-client-debuginfo-8.4.4-1.el8.x86_64.rpm sudo rpm -ivh mysql-community-client-plugins-debuginfo-8.4.4-1.el8.x86_64.rpm sudo rpm -ivh mysql-community-libs-debuginfo-8.4.4-1.el8.x86_64.rpm sudo rpm -ivh mysql-community-libs-compat-debuginfo-8.4.4-1.el8.x86_64.rpm # 安装服务器相关包 sudo rpm -ivh mysql-community-server-8.4.4-1.el8.x86_64.rpm # 安装服务器调试包(可选) sudo rpm -ivh mysql-community-server-debug-8.4.4-1.el8.x86_64.rpm sudo rpm -ivh mysql-community-server-debug-debuginfo-8.4.4-1.el8.x86_64.rpm sudo rpm -ivh mysql-community-server-debuginfo-8.4.4-1.el8.x86_64.rpm # 安装测试包(可选) sudo rpm -ivh mysql-community-test-8.4.4-1.el8.x86_64.rpm sudo rpm -ivh mysql-community-test-debuginfo-8.4.4-1.el8.x86_64.rpm # 安装剩余包 sudo rpm -ivh mysql-community-debugsource-8.4.4-1.el8.x86_64.rpm sudo rpm -ivh mysql-community-devel-8.4.4-1.el8.x86_64.rpm -
启动数据库,设置开机自启并查看状态
systemctl enable mysqld
systemctl start mysqld
systemctl status mysqld
# 看到running即安装成功
-
查看root临时密码
grep 'temporary password' /var/log/mysqld.log #显示内容为: 2025-03-29T11:00:55.961479Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: A*bn&qW<g8uu A*bn&qW<g8uu ---> 这个就是临时密码 -
登陆mysql数据库
mysql -uroot -p [临时密码] -
关闭密码复杂性检查
ALTER USER 'root'@'localhost' IDENTIFIED BY 'Wjsw1234!'; SET GLOBAL validate_password.policy = 0; -- 禁用密码策略 SET GLOBAL validate_password.length = 6; -- 设置密码长度要求为5个字符 SET GLOBAL validate_password.mixed_case_count = 0; -- 禁用大小写字母混合检查 SHOW VARIABLES LIKE 'validate_password%'; -
重新修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'wjsw11223344'; FLUSH PRIVILEGES; -
创建 Zabbix 数据库
CREATE DATABASE zabbix CHARACTER SET utf8 COLLATE utf8_bin; CREATE USER 'zabbix'@'localhost' IDENTIFIED BY 'zabbix'; GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost'; FLUSH PRIVILEGES; # 检查是否创建成功 show databases; select user,host from mysql.user; # 退出 EXIT; -
检查mysql数据库服务状态
ss -lntup | grep mysql ps -ef | grep mysql -
zabbix_server安装
cd ~ wget https://cdn.zabbix.com/zabbix/sources/stable/7.0/zabbix-7.0.11.tar.gz tar xf zabbix-7.0.11.tar.gz cd zabbix-7.0.11 mkdir -p /application/zabbix_server7.0.11 -
编译安装
yum install -y libevent libevent-devel ./configure --prefix=/application/zabbix_server7.0.11 --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2 --with-unixodbc && make && make install # 参数说明 --prefix #编译安装路径 --enable-server #启动server端 --enable-agent #启动agent端 --with-mysql #编译连接mysql相关依赖包 --with-net-snmp #启动snmp相关,用于snmp监控设备 --with-libcurl #启动curl相关 --with-libxml2 #启动xml相关 --with-unixodbc #启动odbc相关用于监控数据库 --enable-java #启动java-agent 用于监控java类 # 如果报错应该是mysql的devel的库没有安装,请检查是否安装 which mysql_config # 没有安装则进入刚才压缩的mysql目录进行安装 rpm -ivh mysql-community-devel-8.4.4-1.el8.x86_64.rpm --force --nodeps # 这里报错基本就是依赖库没有安装,缺少什么依赖库安装什么依赖即可,并添加至环境变量即可 -
更改 Zabbix 配置文件内容
cd /application/zabbix_server7.0.11/etc sed -i 's/# DBPassword=/DBPassword=zabbix/g' zabbix_server.conf sed -i 's/# DBHost=localhost/DBHost=localhost/g' zabbix_server.conf -
检查是否成功修改
cat zabbix_server.conf | egrep -v "^#|^$" LogFile=/tmp/zabbix_server.log DBHost=localhost #---->这里 DBName=zabbix DBUser=zabbix DBPassword=zabbix #---->这里 Timeout=4 LogSlowQueries=3000 StatsAllowedIP=127.0.0.1 EnableGlobalScripts=0 -
创建 Zabbix 用户
groupadd --system zabbix useradd --system -g zabbix -s /sbin/nologin -c "Zabbix Monitoring System" zabbix -
添加 Zabbix 所需要的数据到数据库
echo "log_bin_trust_function_creators = 1" >> /etc/my.cnf systemctl restart mysqld mysql -uzabbix -pzabbix zabbix < ~/zabbix-7.0.11/database/mysql/schema.sql mysql -uzabbix -pzabbix zabbix < ~/zabbix-7.0.11/database/mysql/images.sql mysql -uzabbix -pzabbix zabbix < ~/zabbix-7.0.11/database/mysql/data.sql-
这里还有一个警告可以忽略,因为mysql在提醒你警告你别再命令行使用密码来登录数据库传数据
mysql: [Warning] Using a password on the command line interface can be insecure. -
如果之间添加zabbix没有权限,所以要赋予权限,如果没有赋予权限的话会导致失败,失败信息如下:
这里会报一个错误,错误原因是MySQL 开启了 binlog(二进制日志),但 zabbix 账号没有 SUPER 权限。Zabbix 数据库的 SQL 文件中包含存储函数(Stored Function),而创建存储函数时,MySQL 需要 SUPER 权限或启用 log_bin_trust_function_creators 选项。
-
-
启动 Zabbix并查看能否运行
# 进入命令文件目录 cd /application/zabbix_server7.0.11/sbin # 启动zabbix ./zabbix_server -c ../etc/zabbix_server.conf # 查看日志 tail -200f /tmp/zabbix_server.log -
另外开一个窗口检查端口信息
netstat -lntup|grep 10051 # 类似于这样的信息 tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 77119/./zabbix_serv -
检查完成之后杀死关于 Zabbix 的进程
ps -aux | grep zabbix | awk '{print $2}' | xargs kill -9 # kill: 向 124710 发送信号失败: 没有那个进程:这个是成功的 -
配置systemd文件来使用systemctl命令管理zabbix_server进程
vim /usr/lib/systemd/system/zabbix_server.service # 将一下内容添加到文件中: [Unit] Description=Zabbix Server After=syslog.target After=network.target [Service] Environment="CONFFILE=/application/zabbix_server7.0.11/etc/zabbix_server.conf" EnvironmentFile=-/etc/zabbix_server.conf Type=forking Restart=on-failure PIDFile=/tmp/zabbix_server.pid KillMode=control-group ExecStart=/application/zabbix_server7.0.11/sbin/zabbix_server -c $CONFFILE ExecStop=/bin/kill -SIGTERM $MAINPID RestartSec=10s User=zabbix Group=zabbix [Install] WantedBy=multi-user.target -
重新载入服务配置文件
systemctl daemon-reload -
启动 Zabbix 服务
systemctl restart zabbix_server systemctl enable zabbix_server systemctl status zabbix_server -
复制zabbix编译目录下的ui目录到/zabbix/目录下
cp -a ~/zabbix-7.0.11/ui /application/zabbix_server7.0.11 -
编辑nginx配置文件
vim /etc/nginx/conf.d/firewalld.zabbix.cn.conf # 将以下内容写入文件中: server { #监听端口 listen 80; #配置虚拟主机域名 server_name firewalld.zabbix.cn; -------> 写自己的域名 #设置网站的根目录。所有请求的静态文件(如图片、CSS 文件、JavaScript 文件等)都将从该目录中查找 root /application/zabbix_server7.0.11/ui; #设置客户端缓存 client_body_buffer_size 100k; #自定义错误日志位置 error_log /var/log/nginx/zabbix-error.log notice; #自定义连接日志位置 access_log /var/log/nginx/zabbix-access.log main; #当访问根路径 / 时,Nginx 会默认尝试加载 index.php 文件 location / { index index.php; } location ~ .*\.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; fastcgi_read_timeout 300; } } -
检查并修改配置文件,并启动
# 修改 sed -i 's#^;pid = run/php-fpm.pid#pid = run/php-fpm.pid#g' /application/php8.0.0/etc/php-fpm.conf sed -i 's#^;error_log = log/php-fpm.log#error_log = log/php-fpm.log#g' /application/php8.0.0/etc/php-fpm.conf nginx -t systemctl enable nginx systemctl start nginx systemctl status nginx php-fpm -t systemctl enable php-fpm systemctl restart php-fpm systemctl status php-fpm systemctl enable zabbix systemctl restart zabbix systemctl status zabbix systemctl enable mysqld systemctl restart mysqld systemctl status mysqld -
来到zabbix的最后一个安装页面的时候,提示没有配置文件,下载即可,然后导入到/application/zabbix_server7.0.11/ui目录
/application/zabbix_server7.0.11/ui/conf ---> 导入到这个目录中 # 这样的目录结构 [root@binary-kylin /application/zabbix_server7.0.11/ui/conf]$ ll 总用量 12 drwxr-xr-x 2 ren ren 6 3月 27 14:23 certs -rw-r--r-- 1 ren ren 946 3月 24 16:44 maintenance.inc.php -rw------- 1 root root 1738 3月 30 18:42 zabbix.conf.php -rw-r--r-- 1 ren ren 1722 3月 24 16:44 zabbix.conf.php.example -
将页面下载好的文件赋予权限,ui赋予属组属主
chmod 600 zabbix.conf.php chown -R nginx.nginx ui -
赋予权限之后再来一遍第42的步骤就可以了

官网概念:Zabbix 是一款监控众多参数的网络以及服务器、虚拟机、应用程序、服务、数据库、网站、云等的健康和完整性的软件。Zabbix 使用灵活的通知机制,允许用户为几乎任何事件配置基于电子邮件的告警,以实现对服务器问题做出快速反应。嗯...对于初学者的我来说应该是比较难理解,
浙公网安备 33010602011771号