Zabbix 6 详细安装部署教程

目录

一、安装 MySQL 数据库

二、安装 zabbix 监控平台

三、编辑配置文件 

四、启动服务 

五、zabbix-web 安装

zabbix web 出图展示乱码问题解决方案 


 

        zabbix 的安装部署非常简单,官方提供了四种安装途径,分别是二进制 rpm 包安装方式、源码安装方式、容器安装方式和虚拟机镜像安装方式。本次使用 dnf 在线进行安装的方式。

        Zabbix web 端是基于 HTTP 服务器和 PHP 脚本语言进行构建的,HTTP 服务器可以是 nginx或 apache,zabbix 的数据存储支持多种数据库,可以是 MySQL、Oracle、PostgreSQL、SQLite等,这里我们选择 MySQL 数据库作为后端存储。

虚拟机安装环境介绍:

  • 操作系统:Centos 8 Stream
  • 数据库:MySQL 8.0.32
  • Zabbix:Zabbix 6.4

注意:Centos 7 及以下版本不支持 yum 在线安装 zabbix 6 的 web 服务了(zabbix-nginx-conf),只能手动部署 Nginx 和 PHP,所以为了方便快捷本次使用 Centos 8 及以上版本部署 Zabbix 6.4 

一、安装 MySQL 数据库

        这里使用目前 MySQL 8.0.32 版本(下载地址:MySQL :: Download MySQL Community Server (Archived Versions)),采用 MySQL 官方发布的二进制版本进行安装,下载后的二进制版本名称大致为 mysql-8.0.32-linux-glibc2.12-x86_64.tar.xz,下面是安装 MySQL 的过程: 

#1. 解压安装
[root@zabbix ~]# ls
anaconda-ks.cfg  mysql-8.0.32-linux-glibc2.12-x86_64.tar.xz
[root@zabbix ~]# xz -d mysql-8.0.32-linux-glibc2.12-x86_64.tar.xz 
[root@zabbix ~]# tar -xvf mysql-8.0.32-linux-glibc2.12-x86_64.tar -C /usr/local/
[root@zabbix ~]# cd /usr/local/
[root@zabbix /usr/local]# mv mysql-8.0.32-linux-glibc2.12-x86_64 mysql
[root@zabbix /usr/local]# cd mysql/

#2. 创建 mysql 用户
[root@zabbix /usr/local/mysql]# useradd mysql

#3. 创建 my.cnf 配置文件
[root@zabbix /usr/local/mysql]# mkdir etc logs data
[root@zabbix /usr/local/mysql]# ls
bin  data  docs  etc  include  lib  LICENSE  logs  man  README  share  support-files
[root@zabbix /usr/local/mysql]# rm -f /etc/my.cnf
[root@zabbix /usr/local/mysql]# vim etc/my.cnf
[mysqld]
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
log-error=/usr/local/mysql/logs/mysqld.log
pid-file=/usr/local/mysql/logs/mysqld.pid

#4. 更改目录权限
[root@zabbix /usr/local/mysql]# chown -R mysql:mysql /usr/local/mysql

#5. 启动 mysql 服务
[root@zabbix /usr/local/mysql]# bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
[root@zabbix /usr/local/mysql]# /usr/local/mysql/support-files/mysql.server start
Starting MySQL.... SUCCESS! 

        Mysql 启动成功后,需要重置 root 密码,临时密码在上面定义的 mysql 日志文件 /usr/local/mysql/logs/mysqld.log 中可以查到:

[root@zabbix /usr/local/mysql]# tail -100 logs/mysqld.log 

登录 mysql 命令行,并重置密码,执行如下 SQL 命令: 

[root@zabbix /usr/local/mysql]# /usr/local/mysql/bin/mysql -uroot -p
Enter password: # 输入临时密码
mysql> alter user 'root'@'localhost' identified by 'abc123456';
mysql> exit

        如果当你在命令行登录 mysql 的时候,由于二进制版本发布环境的不同,可能会出现依赖库文件问题,下面是错误信息: 

[root@zabbix_server /usr/local/mysql]# /usr/local/mysql/bin/mysql -uroot -p
/usr/local/mysql/bin/mysql: error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directory

这就是二进制文件编译环境不同导致的,解决方法如下:

[root@zabbix_server /usr/local/mysql]# find / -name "libtinfo.so*"
/usr/lib64/libtinfo.so.6
/usr/lib64/libtinfo.so.6.1
/usr/lib64/libtinfo.so

[root@zabbix_server /usr/local/mysql]# ll /usr/lib64/libtinfo.so.6
lrwxrwxrwx 1 root root 15 6月   1 2021 /usr/lib64/libtinfo.so.6 -> libtinfo.so.6.1

[root@zabbix_server /usr/local/mysql]# ln -s /usr/lib64/libtinfo.so.6.1  /usr/lib64/libtinfo.so.5

[root@zabbix_server /usr/local/mysql]# ll /usr/lib64/libtinfo.so.5
lrwxrwxrwx 1 root root 26 11月 28 16:46 /usr/lib64/libtinfo.so.5 -> /usr/lib64/libtinfo.so.6.1

做完软连接之后,就可以顺利登陆 mysql 命令行了。至此,MySQL 部署完成。

二、安装 zabbix 监控平台

参考官方安装文档:下载Zabbix

首先,下载 zabbix 的安装源,执行如下命令: 

[root@zabbix ~]# rpm -Uvh https://repo.zabbix.com/zabbix/6.4/rhel/8/x86_64/zabbix-release-6.4-1.el8.noarch.rpm
[root@zabbix ~]# dnf clean all 
[root@zabbix ~]# dnf module switch-to php:7.4 

接着开始安装 Zabbix server、Web 前端、agent:

[root@zabbix ~]# dnf install -y zabbix-server-mysql zabbix-web-mysql zabbix-nginx-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent

然后,创建初始数据库,在数据库主机上运行以下代码:

[root@zabbix ~]# /usr/local/mysql/bin/mysql -uroot -p
Enter password: 
mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin;
mysql> create user zabbix@localhost identified by 'zabbix';
mysql> grant all privileges on zabbix.* to zabbix@localhost;
mysql> set global log_bin_trust_function_creators = 1;
mysql> quit;

导入初始架构和数据,系统将提示您输入新创建 zabbix 用户的密码:

[root@zabbix ~]# zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | /usr/local/mysql/bin/mysql --default-character-set=utf8mb4 -uzabbix -p zabbix
Enter password:

导入数据库模式后禁用 log_bin_trust_function_creators 选项:

[root@zabbix_server ~]# /usr/local/mysql/bin/mysql -uroot -p
mysql> set global log_bin_trust_function_creators = 0;
mysql> quit

三、编辑配置文件 

首先为 Zabbix server 配置数据库,编辑配置文件 /etc/zabbix/zabbix_server.conf 信息如下: 

[root@zabbix ~]# vim /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBPassword=zabbix
DBSocket=/tmp/mysql.sock
ListenIP=0.0.0.0

        然后是在 zabbix web 配置中,编辑配置文件 /etc/nginx/conf.d/zabbix.conf,去掉下面两行的注释: 

[root@zabbix_server ~]# vim /etc/nginx/conf.d/zabbix.conf 
        listen          8080;
        server_name     example.com;

至此,zabbix 安装和基础配置完成。

zabbix-server 的配置文件中,除了上面给出的配置参数,还需要关注如下几个配置项:

    ListenPort=10051
    LogFile=/var/log/zabbix/zabbix_server.log
    DBHost=localhost
    DBName=zabbix 
    DBUser=zabbix 
    DBPassword=zabbix 
    ListenIP=0.0.0.0
    StartPollers=5
    StartTrappers=10
    StartDiscoverers=10
    AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts
  • ListenPort 是 zabbix server 默认监听端口,LogFile 用来指定 zabbix server 日志输出路径,DBHost 为数据库的地址,如果数据库在本机,可不做修改,DBName 为数据库名称,DBUser 为连接数据库的用户名,DBPassword 为连接数据量对应的用户密码。ListenIP 为zabbix server 监听的 IP 地址,也就是 zabbix server 启动的监听端口对哪些 ip 开放,Agentd为主动模式时,这个值建议设置为 0.0.0.0。

  • StartPollers 用于设置 zabbix serve 服务启动时启动 Pollers(主动收集数据进程)的数量,数量越多,则服务端吞吐能力越强,同时对系统资源消耗越大。

  • StartTrappers 用于设置 zabbix server 服务启动时启动 Trappers(负责处理 Agentd 推送过来的数据的进程)的数量。Agentd 为主动模式时,zabbix server 需要设置这个值大一些。

  • StartDiscoverers 用于设置 zabbix server 服务启动时启动 Discoverers 进程的数量,如果 zabbix 监控报 Discoverers 进程忙时,需要提高该值。

  • AlertScriptsPath 用来配置 zabbix server 运行脚本存放目录,一些供 zabbix server 使用的脚本,都可以放在这里。

四、启动服务 

启动 Zabbix server 和 agent 进程,并为它们设置开机自启: 

[root@zabbix_server ~]# systemctl restart zabbix-server zabbix-agent nginx php-fpm
[root@zabbix_server ~]# systemctl enable zabbix-server zabbix-agent nginx php-fpm

五、zabbix-web 安装

访问 http://ip:8080 端口,即可访问 zabbix 的 web 界面。

选择简体中文:
配置数据库连接:
设置时区:
登录 zabbix,默认账号 Admin(注意是大写的 A),密码 zabbix:

仪表盘界面:

zabbix web 出图展示乱码问题解决方案 

安装完成后,在出图界面,会无法显示汉字,如下图所示:

因此,还需要修正字体,zabbix出图界面对应的字体文件在 /usr/share/zabbix/assets/fonts 目录下,默认是 graphfont.ttf 文件,但此文件在 almalinux9 下是不存在的,所以出图界面中文无法显示,解决的方法是:下载需要的中文字体文件,然后拷贝到 /usr/share/zabbix/assets/fonts 目录下,重命名为 graphfont.ttf 即可。 

        我们可以从本地 windows 电脑中拷贝出字体文件,拷贝的目录为 C:\Windows\Fonts,找到 Microsoft YaHei UI 文件:

[root@zabbix_server ~]# cd /usr/share/zabbix/assets/fonts
[root@zabbix_server /usr/share/zabbix/assets/fonts]# mv graphfont.ttf graphfont.ttf.backup
[root@zabbix_server /usr/share/zabbix/assets/fonts]# ls
graphfont.ttf.backup  msyh.ttc
[root@zabbix_server /usr/share/zabbix/assets/fonts]# mv msyh.ttc graphfont.ttf
[root@zabbix_server /usr/share/zabbix/assets/fonts]# ls
graphfont.ttf  graphfont.ttf.backup

重新刷新 zabbix 界面即可:

至此,zabbix 监控平台安装完成。 

上一篇文章:Zabbix 6.0 详细基础介绍-CSDN博客 

  • 18
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 15
    评论
感谢您的提问!以下是关于Zabbix 6的安装部署的一般步骤: 1. 确保满足系统要求:Zabbix 6需要运行在支持的操作系统(如CentOS、Ubuntu等)上,并且需要安装所需的依赖软件包(如Apache、MySQL/MariaDB、PHP等)。 2. 安装数据库:使用MySQL或MariaDB作为Zabbix的数据库。您可以按照官方文档提供的步骤进行数据库的安装和配置。 3. 下载和解压Zabbix软件包:您可以从Zabbix官方网站下载最新版本的Zabbix软件包,并将其解压到适当的目录中。 4. 配置Zabbix服务器:编辑Zabbix服务器配置文件(通常是zabbix_server.conf),指定数据库连接信息和其他必要的配置选项。确保您已经正确配置了Zabbix服务器。 5. 导入数据库模式:使用提供的SQL文件导入Zabbix数据库模式和数据。这些文件通常在Zabbix软件包的"database"目录中。 6. 配置Web服务器:根据所选的Web服务器(如Apache或Nginx),配置Web服务器以运行Zabbix Web界面。确保与Zabbix服务器的通信正常。 7. 启动服务:启动Zabbix服务器和相关服务,并配置它们在系统启动时自动启动。 8. 访问Zabbix Web界面:在浏览器中输入Zabbix Web界面的URL,并按照安装向导进行初始配置。您需要提供数据库连接信息和一些基本设置。 9. 完成安装:按照安装向导的指示完成Zabbix安装过程。在完成后,您将能够登录到Zabbix Web界面并开始监控和管理您的设备和应用程序。 请注意,这只是一个一般的指南,实际安装过程可能会因环境和操作系统的不同而有所差异。建议参考官方文档以获取更详细安装说明和配置细节。祝您成功部署Zabbix 6!如有任何问题,请随时提问。
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Stars.Sky

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值