Zabbix 7.0 安装

news2025/2/28 20:15:49

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

安装环境

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

注意: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

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 初始数据库配置

需要提前准备数据库服务,此次我使用的是之前部署的一台(10.10.20.235),也可以选择在本机配置部署一套数据库服务进行使用。在数据库服务器端进行入下操作。

# 进入服务器之后,创建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

针对之前的用户创建和授权都是使用的zabbix@localhost,因为我的数据库和zabbix不在同一台设备上,所以按照权限最小化原则,需要添加zabbix@10.10.20.200用户并授权,或者直接对原来的用户进行修改,这里选择直接修改原用户:

mysql> update mysql.user set host='10.10.20.200' where user='zabbix' and host='localhost';
Query OK, 1 row affected (0.00 sec)

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=10.10.20.235
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.235:8080进入UI配置界面
    在这里插入图片描述
  • 这里可以把配置语言切换到【中文】。这里应该是根据部署系统的默认语言来的。点击下一步。
    在这里插入图片描述
  • 检查部署的必要条件,一般没什么问题,直接下一步
    在这里插入图片描述
  • 配置数据库连接界面进行配置相关信息,比较独特的是端口这里0表示数据库的默认端口。下一步
    在这里插入图片描述
  • 设置界面的设置内容主要是主机名称和默认时区,这里的主机名称是指在浏览器的页面标题那里显示的内容,默认时区选择【亚洲/上海】,主题的话,根据爱好来,下一步。
    在这里插入图片描述
  • 这一步是对之前配置信息的确认。没问题就下一步安装。
    在这里插入图片描述
  • 安装,完成。
    在这里插入图片描述
  • 安装完成后,进入登录界面。默认的登录账号密码信息:用户名:Admin密码:zabbix。登录成功后,直接进入主界面。
    在这里插入图片描述

8. 修正乱码

在调整成中文后,部分地方会出现乱码,如下
在这里插入图片描述

  • 解决的方法就是在windows中找一个常见的字体进行替换。
  1. 在Windows系统中C:\Windows\Fonts\找到一个合适的字体文件。(选择常见的一些字体,我选择的黑体)
  2. 上传到/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 
  1. 浏览器刷新查看效果。
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1968811.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

A股震荡前行,3000点指日可待?

今天的A股,让人瞬间呆住了,你知道是为什么吗?盘面上出现2个耐人寻味的重要信号,一起来看看: 1、今天A股小幅洗盘,涨了一天就熄火了?让人瞬间呆住了。不慌!敢于回踩,才能更…

两个好消息,你先听哪个?

1.第五大数据、人工智能与软件工程国际研讨会(ICBASE 2024)成功申请IEEE出版,上线IEEE官网,欢迎投稿参会!!! 📣IEEE独立出版,设置优秀评选 🔥院士加盟,中外高…

C嘎嘎浅聊string

那么这篇文章我们开始学习 c嘎嘎的string stl简介 什么是stl STL(standard template libaray-标准模板库):是C标准库的重要组成部分,不仅是一个可复用的 组件库,而且是一个包罗数据结构与算法的软件框架 stl版本 原始版本、P.J.版本、RW版…

机械学习—零基础学习日志(高数18——无穷小与无穷小)

零基础为了学人工智能,真的开始复习高数 学习速度加快! 无穷小定义 这里可以记住,无穷小有一个特殊,那就是零。 零是最高阶的无穷小,且零是唯一一个常数无穷小。 张宇老师还是使用了超实数概念来讲解无穷小。其实是…

在云服务器上自动化部署项目,jenkins和gitee

▮全文概述 在编写项目时,很头大的事情就是需要自己手动的上传jar包到服务器上启动。如果出现一点bug,就要重头上传和启动。这是一件很烦的事情,所以,可以使用jenkins和gitee实现项目的自动部署 ▮全流程 在本地提交代码到gitee …

kvm+glusterfs+pcs分布式存储构建kvm高可用群集。

kvmglusterfspcs分布式存储构建kvm高可用群集。 高可用指能在短时间内自动完成故障转移,kvm在实现故障自动转移的方式如果要考虑速度那么基于共享存储的迁移方法无疑是最快的。而共享存储的高可用就可以用glusterfs来实现。 glusterfs可以利用分布式复制卷兼顾了性能…

图解RocketMQ之消费者如何进行消息重试

大家好,我是苍何。 在上一篇[[图解RocketMQ之生产者如何进行消息重试]]中分析了当生产者发送消息失败的时候,RocketMQ 是如何进行重试的。 最后留了一个问题,生产端的消息是重试 hold 住了,但如果消费者出现异常,消费…

leetcode53. 最大子数组和(java实现)

今天分享的题目是leetcode53题 本题的解题思路:贪心算法。 举个例子: nums [-2,1,-3,4,-1,2,1,-5,4],如果说我们的累加和是负数那么就将其舍弃,换下一个位置从新进行累加,因为如果目前我们的累加和如果是负数那么还不…

Zotero的探索之路

下载安装 Zotero | Downloads:点击链接,不仅要下载软件本身,也要下载浏览器connector,这样就方便从网页抓取论文到zotero本地了,浏览器是使用插件导入下载包即可 导入文献方法 zotero自动下载(推荐&#…

C 语言快速排序算法

升序排序 /*快速排序算法排序规则 */ int32_t CmpCb(const void* _a, const void* _b) {uint16_t* a (uint16_t*)_a;uint16_t* b (uint16_t*)_b;int32_t val 0;if (*a > *b){val 1;}else if (*a < *b){val -1;}else {val 0;}return val; }int main() {// 创建局部…

c++----类与对象(下)

当我们简单的学习了上一篇日期类。简单的理解并且使用了我们前面学习的知识。当然这还只是我们c的九牛一毛。并且我们的类与对象的知识还没学习完。今天我们来把类与对象的知识完善一下。 初始化列表 那么今天我们就不讲废话了&#xff0c;我们直接来主题。首先我们可以看到我…

大型语言模型入门

大型语言模型 快速、全面了解大型语言模型。学习李宏毅课程笔记。 ChatGPT 目前由OpenAI公司发明的非常火的人工智能AI应用ChatGPT&#xff0c;到底是什么原理呢&#xff1f; G&#xff1a;Generative(生成) P&#xff1a;Pre-trained(预训练) T&#xff1a;Transformer(一种…

手把手教你如何在Linux上轻松安装Python,告别编程入门难题

导语&#xff1a; Python作为当下最热门的编程语言之一&#xff0c;受到了越来越多人的喜爱。对于Linux用户来说&#xff0c;掌握如何在Linux上安装Python至关重要。今天&#xff0c;就让我带领大家一步步在Linux上安装Python&#xff0c;让你轻松迈入编程世界&#xff01; 一…

MATLAB(7)潮汐模型

一、前言 在MATLAB中模拟潮汐通常涉及到使用潮汐的理论模型&#xff0c;如调和常数模型&#xff08;Harmonic Constants Model&#xff09;&#xff0c;它基于多个正弦和余弦函数的叠加来近似潮汐高度随时间的变化。以下是一个简化的MATLAB代码示例&#xff0c;用于模拟一个基于…

centos在线安装部署2024年最新的docker版本

1.yum 包更新到最新 sudo yum update -y2.安装依赖软件包 sudo yum install -y yum-utils device-mapper-persistent-data lvm23.添加阿里的镜像&#xff0c;下载镜像速度比较快 sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/dock…

docker compse简介与安装

目录 1. Docker Compose 简介 2. Docker Compose 安装 2.1 在 Ubuntu 上安装 Docker Compose 2.1.1 通过 apt 安装 2.1.2 使用官方脚本安装最新版本 2.2 在 CentOS 上安装 Docker Compose 2.2.2 使用官方脚本安装最新版本 2.2.3 使用 pip 安装 2.3 在 openEuler 上安装…

【跨时代】第四次工业革命彻底来袭!什么是AI+

你有没有一种很割裂的感觉&#xff0c;就是在短视频里&#xff0c;AI已经要改变全世界了 但自己一用&#xff0c;却发现只能和AI聊聊天 画几张图 难道是姿势不对&#xff1f;但具体是哪里不对呢。 作为一个老牌程序员&#xff0c;我前面分享了很多计算机相关内容&#xff0c;总…

java基础概念06-原码、反码、补码

一、八位二进制的取值范围&#xff08;没有符号位&#xff09; 二、原码 三、反码 若是反码的计算结果跨0了&#xff0c;则会溢出&#xff0c;计算结果又误差&#xff01; 原因&#xff1a;在反码当中0有两种表现形式&#xff1a; 解决方式&#xff1a;将反码中的两个0&#x…

SSM大学生体质管理系统-计算机毕业设计源码75960

摘要 基于SSM的大学生体质管理系统是一款综合性平台&#xff0c;融合了在线课程、健康知识、体测报告等多项功能&#xff0c;旨在为广大大学生提供全方位的健康管理服务。通过在线课程和健康知识模块&#xff0c;用户可以随时学习健康知识&#xff0c;掌握科学的健康管理方法&a…

推荐一个比较好的开源位置服务平台

平台简介 一直想做一款后台管理系统&#xff0c;同时可以管理人&#xff0c;车&#xff0c;物品&#xff0c;猫&#xff0c;狗&#xff0c;牛羊等一切可以移动的室外事物进行集中化管理&#xff0c;最初的需求聚焦——谁在哪儿&#xff01; 系统框架是基于当前最常用的RuoYi框架…