当前位置: 首页 > news >正文

Zabbix 7.0 安装

在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. 浏览器刷新查看效果。
    在这里插入图片描述

相关文章:

Zabbix 7.0 安装

在zabbix官网中有着比较完善的安装步骤,针对不同的系统都有。可以直接按照举例说明进行安装。本文只是针对其提供的安装步骤进行一些说明解释补充。 安装环境 操作系统版本:AlmaLinux 9.4(10.10.20.200)zabbix版本:7.…...

软考高级-系统架构设计师

2024广东深圳考试时间 报考人员可登录中国计算机技术职业资格网(http://www.ruankao.org.cn)进行网上报名,报名前须扫码绑定个人微信,不允许代报名。 上半年考试报名信息填报时间:2024年3月25日9:00-4月2日…...

Notepad++ 安装 compare 插件

文章目录 文章介绍对比效果安装过程参考链接 文章介绍 compare 插件用于对比文本差异 对比效果 安装过程 搜索compare插件 参考链接 添加链接描述...

大数据技术原理-spark的安装

摘要 本实验报告详细记录了在"大数据技术原理"课程中进行的Spark安装与应用实验。实验环境包括Spark、Hadoop和Java。实验内容涵盖了Spark的安装、配置、启动,以及使用Spark进行基本的数据操作,如读取本地文件、文件内容计数、模式匹配和行数…...

第四范式上线搜广推一体化平台 赋能企业高效增长

产品上新 Product Release 今天,第四范式产品再度上新,正式升级并推出的“搜广推”一体化平台——天枢。 天枢拥有全面的用户画像分析、端到端的搜索推荐一体化、一站式流量运营管理等能力,集合智能搜索、智能推荐和智能推广三大能力于一身&a…...

智能小程序 Ray 开发面板 SDK —— 智能设备模型通用能力一键执行 SDK 汇总(一)

getTapToRunRules 描述 查询当前家庭下可绑定的一键执行列表,会去掉失效或自动化规则。 请求参数 参数数据类型说明是否必填devIdstring设备 ID,默认从设备环境中取否gidstring家庭 ID,默认从当前家庭中取否containStandardZigBeeboolean…...

特大喜讯:我的作品被河北某大学选做教材

...

将时间用于符合当下的未来思考——读《纳瓦尔宝典》

在财富积累的篇章中,倡导的核心理念是“不要通过出租时间来赚取收入”。沿着这条道路,可以通过以下智慧指引来避免不必要的迂回:首先,不要让自己深陷于日常的琐碎事务中,而应以开阔的心胸去探索和吸收新的知识。其次&a…...

CentOS-Stream-9仿冒Rocky-9通过Kolla-ansible部署OpenStack 2024.1

CentOS-Stream-9仿冒Rocky-9通过Kolla-ansible部署OpenStack 2024.1 OpenStack及Kolla项目的最新稳定版产品不再提供对CentOS-Stream-9的容器镜像支持,但考虑到 Rocky-9对RHEL/CentOS-Stream-9进行了binary级别的兼容,因此在CentOS-Stream-9上仿冒Rocky…...

Python机器学习实战:分类算法之支持向量机-垃圾邮件识别

为了解决特定问题而进行的学习是提高效率的最佳途径。这种方法能够使我们专注于最相关的知识和技能,从而更快地掌握解决问题所需的能力。 目录 支持向量机算法介绍 练习题 Python代码与分析 支持向量机和朴素贝叶斯的联系 支持向量机算法介绍 支持向量机&#…...

秒懂Linux之自动化构建工具-make/Makefile

目录 一.前文摘要 二.make/Makefile 一.前文摘要 在学习自动化构建工具前我们先来补充一下动静态库的相关指令 动态库指令 gcc -o 文件(重命名) 源文件 静态库指令 gcc -o 文件(重命名) 源文件 -static 二.make/Makefile 怎么形…...

.net core + vue 搭建前后端分离的框架

目录 步骤一:创建.NET Core后端项目 步骤二:创建Vue.js前端项目 步骤三:集成后端和前端项目 步骤一:创建.NET Core后端项目 安装.NET Core SDK: 确保你的开发环境中已安装了最新版本的.NET Core SDK。你可以从 .NET …...

小阿轩yx-KVM+GFS 分布式存储系统构建 KVM 高可用

小阿轩yx-KVMGFS 分布式存储系统构建 KVM 高可用 案例分析 案例概述 使用 KVM 及 GlusterFS 技术,结合起来实现 KVM 高可用利用 GlusterFS 分布式复制卷对 KVM 虚拟机文件进行分布存储和冗余 分布式复制卷 主要用于需要冗余的情况下把一个文件存放在两个或两个…...

centos安装mysql 5.7版本

因为要继续第二阶段的学习,windows里面的mysql版本,很多设置没有。因此弄了一个虚拟机,安装了centos,在里面安装mysql。 看了《centos安装mysql 5.7版本》里面有设置my.cnf文件,这个在虚拟机里面编辑,手动敲…...

SQL——查询sql执行顺序

在SQL查询中,虽然我们在编写查询时遵循一定的逻辑顺序(SELECT, FROM, WHERE, GROUP BY, HAVING, ORDER BY),但实际上,数据库在执行这些查询时遵循的是不同的物理执行顺序。这个物理执行顺序是数据库管理系统&#xff0…...

钉耙编程(3)

1001深度自同构 Problem Description 对于无向图中的点,定义一个点的度为与其相连的边的条数。 对于一棵有根树,定义一个点的深度为该点到根的距离。 对于由若干有根树构成的森林,定义该森林是深度自同构的,当且仅当森林中任意…...

python 线程池处理文件

使用多线程来加速文件复制的过程,可以使用Python的concurrent.futures模块中的ThreadPoolExecutor。代码如下: import glob import os import shutil from concurrent.futures import ThreadPoolExecutordef copy_image(image):imagepath image.replace…...

AI技术和大模型对人才市场的影响

012024 AI技术和大模型 2024年AI技术和大模型呈现出多元化和深入融合的趋势,以下是一些关键的技术方向和特点: 1. 生成式AI 生成式AI(Generative AI)在2024年继续快速发展,它能够创造全新的内容,而不仅仅…...

解释“location”和“position”

Explanation of “Location” and “Position” Location and position are terms often used interchangeably in everyday language, but they can have distinct meanings depending on the context. Below, we explore their definitions, differences, and examples of u…...

Netty 必知必会(三)—— ByteBuf

Netty ByteBuf工作原理,和NIO里ByteBuffer区别? Java NIO 提供了ByteBuffer 作为它 的字节容器,但是这个类使⽤起来过于复杂,⽽且也有些繁琐。 ByteBuf是Netty框架中的一个关键类,专门设计来处理字节数据,…...

Linux应用开发之网络套接字编程(实例篇)

服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …...

国防科技大学计算机基础课程笔记02信息编码

1.机内码和国标码 国标码就是我们非常熟悉的这个GB2312,但是因为都是16进制&#xff0c;因此这个了16进制的数据既可以翻译成为这个机器码&#xff0c;也可以翻译成为这个国标码&#xff0c;所以这个时候很容易会出现这个歧义的情况&#xff1b; 因此&#xff0c;我们的这个国…...

(二)原型模式

原型的功能是将一个已经存在的对象作为源目标,其余对象都是通过这个源目标创建。发挥复制的作用就是原型模式的核心思想。 一、源型模式的定义 原型模式是指第二次创建对象可以通过复制已经存在的原型对象来实现,忽略对象创建过程中的其它细节。 📌 核心特点: 避免重复初…...

ETLCloud可能遇到的问题有哪些?常见坑位解析

数据集成平台ETLCloud&#xff0c;主要用于支持数据的抽取&#xff08;Extract&#xff09;、转换&#xff08;Transform&#xff09;和加载&#xff08;Load&#xff09;过程。提供了一个简洁直观的界面&#xff0c;以便用户可以在不同的数据源之间轻松地进行数据迁移和转换。…...

Web中间件--tomcat学习

Web中间件–tomcat Java虚拟机详解 什么是JAVA虚拟机 Java虚拟机是一个抽象的计算机&#xff0c;它可以执行Java字节码。Java虚拟机是Java平台的一部分&#xff0c;Java平台由Java语言、Java API和Java虚拟机组成。Java虚拟机的主要作用是将Java字节码转换为机器代码&#x…...

Caliper 负载(Workload)详细解析

Caliper 负载(Workload)详细解析 负载(Workload)是 Caliper 性能测试的核心部分,它定义了测试期间要执行的具体合约调用行为和交易模式。下面我将全面深入地讲解负载的各个方面。 一、负载模块基本结构 一个典型的负载模块(如 workload.js)包含以下基本结构: use strict;/…...

Linux系统部署KES

1、安装准备 1.版本说明V008R006C009B0014 V008&#xff1a;是version产品的大版本。 R006&#xff1a;是release产品特性版本。 C009&#xff1a;是通用版 B0014&#xff1a;是build开发过程中的构建版本2.硬件要求 #安全版和企业版 内存&#xff1a;1GB 以上 硬盘&#xf…...

Spring AI Chat Memory 实战指南:Local 与 JDBC 存储集成

一个面向 Java 开发者的 Sring-Ai 示例工程项目&#xff0c;该项目是一个 Spring AI 快速入门的样例工程项目&#xff0c;旨在通过一些小的案例展示 Spring AI 框架的核心功能和使用方法。 项目采用模块化设计&#xff0c;每个模块都专注于特定的功能领域&#xff0c;便于学习和…...

rknn toolkit2搭建和推理

安装Miniconda Miniconda - Anaconda Miniconda 选择一个 新的 版本 &#xff0c;不用和RKNN的python版本保持一致 使用 ./xxx.sh进行安装 下面配置一下载源 # 清华大学源&#xff08;最常用&#xff09; conda config --add channels https://mirrors.tuna.tsinghua.edu.cn…...

算法打卡第18天

从中序与后序遍历序列构造二叉树 (力扣106题) 给定两个整数数组 inorder 和 postorder &#xff0c;其中 inorder 是二叉树的中序遍历&#xff0c; postorder 是同一棵树的后序遍历&#xff0c;请你构造并返回这颗 二叉树 。 示例 1: 输入&#xff1a;inorder [9,3,15,20,7…...