Zabbix 7.0 安装

不屈的铝合金 2024-09-04 15:07:12 阅读 91

在zabbix官网中有着比较完善的安装步骤,针对不同的系统都有。可以直接按照举例说明进行安装。本文只是针对其提供的安装步骤进行一些说明解释补充。

安装环境

安装思路:先在本机安装所有服务,安装测试完成后,再进行一些功能的拆分。

操作系统版本:AlmaLinux 9.4(10.10.20.200)zabbix版本:7.0 LTS数据库版本:8.0.36(10.10.20.235)web服务:nginx

注意:<code>zabbix7.0 LTS版本支持MySQL要达到mysql 8.0.30以上版本。

安装步骤

1. 配置安装zabbix仓库

通过配置zabbix仓库的方式进行安装,对新人友好,而且可以直接使用系统的包管理器(如YUM、APT)来安装和更新Zabbix,自动解决依赖关系,使得安装过程更加简便快捷。是官方推荐的安装方式。

编辑配置文件 /etc/yum.repos.d/epel.repo 并添加以下语句

# 在epel部分最后补充上 excludepkgs=zabbix*

# 如下

[epel]

......

excludepkgs=zabbix* # 补充部分

[epel-debuginfo]

......

如果/etc/yum.repos.d/路径下没有epel源文件,则需要安装。

# 安装命令

dnf install epel-release -y

# 执行下面命令修改成国内清华源

sed -e 's!^metalink=!#metalink=!g' \

-e 's!^#baseurl=!baseurl=!g' \

-e 's!https\?://download\.fedoraproject\.org/pub/epel!https://mirrors.tuna.tsinghua.edu.cn/epel!g' \

-e 's!https\?://download\.example/pub/epel!https://mirrors.tuna.tsinghua.edu.cn/epel!g' \

-i /etc/yum.repos.d/epel{ ,-testing}.repo

安装zabbix仓库

# 执行rpm安装命令

rpm -Uvh https://repo.zabbix.com/zabbix/7.0/alma/9/x86_64/zabbix-release-7.0-5.el9.noarch.rpm

# 安装后,清理一下安装文件和缓存,这一步可选,非必须

dnf clean all && dnf makecache

2. 安装服务

安装好仓库之后,就可以进行服务的安装。命令如下:

dnf install zabbix-server-mysql zabbix-web-mysql zabbix-nginx-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent -y

执行这条命令会一次性安装配置 Zabbix 监控系统的核心组件,包括服务器端、Web 界面、数据库集成、Web 服务器配置、SELinux 支持以及监控代理。

服务说明:

zabbix-server-mysql: 安装 Zabbix 服务器端软件,并配置为使用 MySQL 作为后端数据库来存储配置信息和监控数据。zabbix-web-mysql: 提供 Zabbix 的前端网页界面,也配置为使用 MySQL 数据库。这是管理员和用户用来查看监控数据、配置报警规则等的图形化界面。zabbix-nginx-conf: 安装 Zabbix Web 界面所需的 Nginx 配置文件。Nginx 是一个高性能的 HTTP 和反向代理服务器,常用于部署 Zabbix 前端以提高性能和安全性。zabbix-sql-scripts: 包含用于初始化和升级 Zabbix 数据库结构的 SQL 脚本。这些脚本对于初次安装时创建数据库表结构,以及后续升级时调整数据库结构至关重要。zabbix-selinux-policy: 提供 Zabbix 相关的 SELinux 策略模块。SELinux 是一个强制访问控制安全系统,这个包确保 Zabbix 各个组件能够在符合 SELinux 安全策略的环境中正确运行。zabbix-agent: 是部署在被监控主机上的服务,负责收集主机的性能和状态数据,并根据 Zabbix 服务器的请求返回这些信息,是实现监控功能的关键组件。这里安装是将服务端的状态同样作为被监控的客户端进监控。

3. 数据库配置

这里需要提前准备数据库服务,这里我选择在本机配置部署一套数据库服务进行使用。后续有需求的话,可以进行数据库拆分。数据库安装方法

3.1 初始数据库配置

在数据库服务器端进行如下操作。

# 进入服务器之后,创建zabbix数据库

mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin;

Query OK, 1 row affected (0.00 sec)

# 创建操作zabbix数据库的用户

mysql> create user zabbix@localhost identified by 'zabbix';

Query OK, 0 rows affected (0.01 sec)

# >>> zabbix@localhost: 是创建的用户和允许操作的域,这里指定的是zabbix用户在本地上才能用;

# >>> by 'zabbix': 引号里面的是用户密码

# 对用户进行授权

mysql> grant all privileges on zabbix.* to zabbix@localhost;

Query OK, 0 rows affected (0.01 sec)

# 上述语句的意思是将zabbix库下的所有权限都授予zabbix@localhost用户

# 这个是临时操作,将参数值修改成1的话表示,数据库信任存储函数、触发器和事件的创建者。因为Zabbix数据库中包含了一些存储过程和函数,而这些数据库对象的创建可能会受到MySQL二进制日志(Binary Logging)安全设置的影响。

mysql> set global log_bin_trust_function_creators = 1;

Query OK, 0 rows affected (0.00 sec)

# 执行完这一步后,暂时退出数据库

mysql> quit

Bye

注意:此处创建用户使用的是本地用户设置,为了方便下一步导入架构操作,等后面会进行处理调整。

3.2 导入数据

这一步的目的实际上就是把zabbix的数据库表结构和数据导入到本地数据库中。

初始化文件

存放路径:/usr/share/zabbix-sql-scripts/mysql/server.sql.gz

将初始化文件先上传到数据库服务商,然后再解压导入。

# 解压导入命令

zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix

# /usr/share/zabbix-sql-scripts/mysql/server.sql.gz:表示文件路径,本地安装服务器的,可以直接套用上面的命令,如果是在其他位置安装的,需要根据文件上传的位置进行替换。

执行命令后,会提示输入zabbix数据库用户密码,之后开始导入,该过程没有提示且不会马上完成,请耐心等待。可以进入数据库中查验一下。

关闭日志安全设置

将之前临时放开的log_bin_trust_function_creators禁用,改回log_bin_trust_function_creators = 0

mysql> set global log_bin_trust_function_creators = 0;

Query OK, 0 rows affected (0.00 sec)

mysql> quit;

Bye

4. Zabbix server配置数据库

Zabbix server配置文件:/etc/zabbix/zabbix_server.conf

主要查看这四个参数:DBHost(数据库地址)、DBName(数据库名)、DBUser(数据库用户)、DBPassword(数据库密码) 。

进入配置文件之后,找到这四个参数的位置,其中前三个是默认的

DBHost=localhost # 这个默认就是本地,需要修改成数据库IP

DBName=zabbix

DBUser=zabbix

DBPassword= # 数据库zabbix用户的密码

修改完成后进行查验。

[root@zabbix ~]# egrep ^DB /etc/zabbix/zabbix_server.conf

DBHost=localhost

DBName=zabbix

DBUser=zabbix

DBPassword=zabbix

5. 配置前端

编辑配置文件:/etc/nginx/conf.d/zabbix.conf,将 listenserver_name 参数取消注释并进行设置。

# 默认样式

# listen 8080;

# server_name example.com;

# 设置样式

listen 8080;

server_name example.com;

6. 起服务

启动Zabbix server和agent服务,并为它们设置开机自启。

systemctl restart zabbix-server zabbix-agent nginx php-fpm

systemctl enable zabbix-server zabbix-agent nginx php-fpm

7. 进入 web UI 进行设置

7.1 输入10.10.20.200:8080进入UI配置界面

在这里插入图片描述

这里可以把配置语言切换到【中文】。这里应该是根据部署系统的默认语言来的。点击下一步。

在这里插入图片描述

检查部署的必要条件,一般没什么问题,直接下一步

在这里插入图片描述

配置数据库连接界面进行配置相关信息,比较独特的是端口这里0表示数据库的默认端口。下一步

在这里插入图片描述

补充一下:

我在安装的时候,这里提示报错,提示无法连接到数据库跟着一堆问号乱码,我检查确认都没问题后,试着在数据库主机的localhost换成127.0.0.1就没有报错了。

设置界面的设置内容主要是主机名称和默认时区,这里的主机名称是指在浏览器的页面标题那里显示的内容,默认时区选择【亚洲/上海】,主题的话,根据爱好来,下一步。

在这里插入图片描述

这一步是对之前配置信息的确认。没问题就下一步安装。

在这里插入图片描述

安装,完成。

在这里插入图片描述

安装完成后,进入登录界面。默认的登录账号密码信息:<code>用户名:Admin,密码:zabbix。登录成功后,直接进入主界面。

在这里插入图片描述

8. 修正乱码

在调整成中文后,部分地方会出现乱码,如下

在这里插入图片描述

解决的方法就是在windows中找一个常见的字体进行替换。

在Windows系统中<code>C:\Windows\Fonts\找到一个合适的字体文件。(选择常见的一些字体,我选择的黑体)上传到/usr/share/fonts/dejavu-sans-fonts/并改名。(实际上就是替换原来的字体)

[root@zabbix ~]# cd /usr/share/fonts/dejavu-sans-fonts

[root@zabbix dejavu]# ll

total 5288

-rw-r--r-- 1 root root 611212 Feb 27 2011 DejaVuSans-BoldOblique.ttf

-rw-r--r-- 1 root root 672300 Feb 27 2011 DejaVuSans-Bold.ttf

-rw-r--r-- 1 root root 580168 Feb 27 2011 DejaVuSansCondensed-BoldOblique.ttf

-rw-r--r-- 1 root root 631992 Feb 27 2011 DejaVuSansCondensed-Bold.ttf

-rw-r--r-- 1 root root 576004 Feb 27 2011 DejaVuSansCondensed-Oblique.ttf

-rw-r--r-- 1 root root 643852 Feb 27 2011 DejaVuSansCondensed.ttf

-rw-r--r-- 1 root root 345204 Feb 27 2011 DejaVuSans-ExtraLight.ttf

-rw-r--r-- 1 root root 611556 Feb 27 2011 DejaVuSans-Oblique.ttf

-rw-r--r-- 1 root root 720012 Feb 27 2011 DejaVuSans.ttf

# 上传

[root@zabbix dejavu]# rz -E

rz waiting to receive.

# 替换成默认的

[root@zabbix dejavu]# mv simhei.ttf DejaVuSans.ttf

浏览器刷新查看效果。

在这里插入图片描述



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。