Zabbix 7 最新版本安装 Rocky Linux 8

前言

本实验主要在Rocky Linux 中安装Zabbix,其他centos8、Debian、Ubuntu、Alma Linux都可以安装,就是在中间件有点不同。Nginx就要配置一下,官网给的教程也算是很规范的,就是在MySQL上要自己安装,他没有告诉我们!!!
本实验的环境:Zabbix 7 、Rocky Linux 9、MySQL8.0、Nginx

废话

其实这类监控系统有很多,主要取决于喜欢用什么,怎么用,除了zabbix,还有普罗米修斯Prometheus啊什么的,有的人说普好,有的人说Zabbix好,说普好的是因为6版本以前的Zabbix不支持K8S、docker的监控,然后就找到普能监控,就说普好,现在zabbix都已经兼容了,所以没有好不好区分。

环境下载:

Zabbix官网
Rocky Linux

远程工具:

Mobaxterm
Xshell
其他都可以,也可以直接在客户端中安装

初始化系统

1.新装的linux系统,初始化更新包

sudo yum update

进入Zabbix官网,选择相匹配的环境
在这里插入图片描述

下面有安装教程,但是缺少必要的环境,例如MySQL类型!

安装MySQL8.0

Rocky Linux 是基于 RHEL 的 Linux 发行版,所以可以使用 dnfyum 命令来安装 MySQL 和 Nginx。下面是针对 Rocky Linux 的详细安装步骤。

  1. 更新系统软件包:

    sudo dnf update -y
    
  2. 添加 MySQL 官方存储库:

    sudo dnf install https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm -y
    
  3. 安装 MySQL 8.0:

    sudo dnf install mysql-server -y
    

4. 报错问题及解决方式
![[Pasted image 20241111122908.png]]

  1. 解决方法1
    禁用 GPG 验证(临时方案)企业肯定不行的
sudo dnf install mysql-server -y --nogpgcheck

![[Pasted image 20241111122957.png]]

  1. 解决方法2
    先进入.repo文件查看
vim /etc/yum.repos.d/mysql-community.repo

![[Pasted image 20241111123210.png]]

7.修改gpgkey
看到gpgkey是file://xxx,这就说明没有配置正确,我们手动将所有的gpgkey改成第一个https
前提条件下载并导入mysql官方的GPG 公钥

sudo rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
  1. 修改gpgkey
gpgkey=https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

![[Pasted image 20241111123525.png]]

  1. 保存退出 :wq
    然后再次运行清理命令并尝试安装:
sudo dnf clean all 
sudo dnf makecache 
sudo dnf install mysql-server -yrpm -qa gpg-pubkey*  查看GPG密钥条目

![[Pasted image 20241111123951.png]]

出现上面结果就说明安装成功了。

  1. 启动MySQL服务并设置开机启动
sudo systemctl start mysqld   //启动
sudo systemctl enable mysqld  //开机启动
sudo systemctl status mysqld  //验证状态

![[Pasted image 20241111124449.png]]

  1. 初始化密码
    MySQL 在首次安装时会生成一个随机的 root 密码,可以使用以下命令查看:
sudo grep 'temporary password' /var/log/mysqld.log

![[Pasted image 20241111124535.png]]

  1. 修改初始密码 (复制旧密码) (WYvsTr93pdr
    使用刚才获取的临时密码登录 MySQL:
mysql -u root -p
  1. 方法1:手动修改
    如果已经在 MySQL 中登录,并想手动更改 root 密码,可以在 MySQL 控制台中执行以下命令:
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码(大、小、数字、特殊一个都不能少)'; 
FLUSH PRIVILEGES;

新密码 替换为您想设置的新密码。

![[Pasted image 20241111125331.png]]

完成密码更改后,可以输入 exit 退出 MySQL 控制台:

exit;
  1. 方法2:运行 mysql_secure_installation 设置新密码
    MySQL 提供了一个安全配置脚本 mysql_secure_installation,可以用来设置新密码并执行一些安全操作。

在终端中运行:

sudo mysql_secure_installation

该脚本会引导您完成以下操作:

  1. 更改 root 密码:设置一个新的 root 密码。
  2. 移除匿名用户:防止匿名用户登录。
  3. 禁用 root 远程登录:只允许本地访问 root 账户。
  4. 删除测试数据库:删除默认的测试数据库。
  5. 刷新权限表:使更改生效。

安装Zabbix Nginx

由于官网会自动安装中间件,我就不再赘述了,

  1. 安装 zabbix 存储库
rpm -Uvh https://repo.zabbix.com/zabbix/7.0/rocky/9/x86_64/zabbix-release-latest.el9.noarch.rpm  dnf clean all

![[Pasted image 20241111130847.png]]

  1. 安装 Zabbix 服务器、前端、代理
dnf install zabbix-server-mysql zabbix-web-mysql zabbix-nginx-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent

![[Pasted image 20241111130934.png]]

这里比较慢,耐心等待一下

![[Pasted image 20241111130946.png]]

![[Pasted image 20241111131552.png]]

出现以下就说明安装成功
![[Pasted image 20241111131625.png]]

  1. 根据官网,这一步就是(我们前面第一步就提前安装了mysql) 输入 前面配置新密码
    在您的数据库主机上运行以下命令。
mysql -u root -p  
password  
mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin;  
mysql> create user zabbix@localhost identified by 'zabbix数据库登录密码';  //这里为了保持一直,就用一个密码,在企业就不行哈 Huawei@123
mysql> grant all privileges on zabbix.* to zabbix@localhost;  
mysql> set global log_bin_trust_function_creators = 1;  
mysql> quit;

![[Pasted image 20241111130052.png]]

  1. 在 Zabbix 服务器主机上导入初始架构和数据。系统将提示您输入新创建的密码。
zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix

![[Pasted image 20241111131704.png]]

  1. 验证:
    首先,使用 MySQL 登录到 Zabbix 数据库,以确认是否已导入初始架构和数据。
mysql -u zabbix -p

系统会提示输入您在创建 zabbix 用户时设置的密码。登录后,执行以下 SQL 命令以切换到 Zabbix 数据库并查看表结构:

USE zabbix; 
SHOW TABLES;

如果导入成功,您应该会看到大量与 Zabbix 相关的表,如 usershostsitems 等。
![[Pasted image 20241111132031.png]]

  1. 导入数据库模式后禁用 log_bin_trust_function_creators 选项。
mysql -uroot -p  
password  
mysql> set global log_bin_trust_function_creators = 0;  
mysql> quit

![[Pasted image 20241111132143.png]]

  1. 为Zabbix服务器配置数据库
    编辑文件/etc/zabbix/zabbix_server.conf
vim /etc/zabbix/zabbix_server.conf
DBPassword=password   //这里是之前设置zabbix的密码,也就是我们设置的第二个密码

![[Pasted image 20241111132500.png]]

  1. 为 Zabbix 前端配置 PHP
    编辑文件/etc/nginx/conf.d/zabbix.conf取消注释并设置“listen”和“server_name”指令。
vim  /etc/nginx/conf.d/zabbix.conf
listen 8080;  
server_name example.com;  //这里提前写入自己的本机IP地址,不然后面还要更新 

![[Pasted image 20241111132632.png]]

  1. 启动Zabbix服务器和代理进程
    启动 Zabbix 服务器和代理进程,并使其在系统启动时启动。
systemctl restart zabbix-server zabbix-agent nginx php-fpm  
systemctl enable zabbix-server zabbix-agent nginx php-fpm

![[Pasted image 20241111132904.png]]

  1. 检查服务状态:可以使用以下命令检查各服务的运行状态,确保它们正常运行:
systemctl status zabbix-server 
systemctl status zabbix-agent 
systemctl status nginx 
systemctl status php-fpm

确保每个服务的状态为 active (running)
![[Pasted image 20241111132916.png]]![[Pasted image
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  1. 如果一切配置正常,您现在可以在浏览器中访问 Zabbix 的前端界面。通常,访问地址为:
http://<服务器IP地址或域名>
  1. 查看地址
ifconfig  
# 或
ip addr  

![[Pasted image 20241111133230.png]]

排错

  1. 访问如果进不去
    ![[Pasted image 20241111133748.png]]

  2. 解决方法:
    查看防火墙是不是开启的,如果开启,关闭或放行80或443

sudo systemctl status firewalld

很显然是开启的,我们再查看80或443端口有没有放行
在这里插入图片描述

sudo firewall-cmd --list-all

很显然,也没有,哈哈
当前防火墙规则中并没有开放 HTTP (http) 和 HTTPS (https) 服务,因此,您可能无法通过浏览器
![[Pasted image 20241111134106.png]]

  1. 开放 HTTP 和 HTTPS 端口
sudo firewall-cmd --permanent --add-service=http 
sudo firewall-cmd --permanent --add-service=https

添加完成后,重新加载防火墙以使更改生效:

sudo firewall-cmd --reload

![[Pasted image 20241111134331.png]]

再次查看防火墙规则,确认 HTTP 和 HTTPS 服务已被添加:

sudo firewall-cmd --list-all

如果成功,应该会看到 httphttps 列在 services 部分中。
![[Pasted image 20241111134347.png]]

  1. 再次尝试访问zabbix

打开 Zabbix UI 网页
使用 Nginx 时 Zabbix UI 的 URL 取决于您应该进行的配置更改。
如果不配置则出现:
出现错误
![[Pasted image 20241111134432.png]]

  1. 我们操作一下
    进入nginx,把server注释掉或者删掉
vim /etc/nginx/nginx.conf

![[Pasted image 20241111174334.png]]

  1. 进入zabbix
 vim /etc/nginx/conf.d/zabbix.conf

原有的太复杂,直接用下面的

server {listen 8080;server_name 192.168.6.138;  //这里写自己的IP地址, 命令:IP addr root /usr/share/zabbix;index index.php index.html;location / {try_files $uri $uri/ =404;}location ~ \.php$ {fastcgi_pass unix:/run/php-fpm/www.sock;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;include fastcgi_params;}
}

![[Pasted image 20241111174551.png]]

  1. 确认Zabbix安装目录权限:确保Nginx用户(通常为 nginxwww-data)对 /usr/share/zabbix 目录及其文件具有读权限。运行以下命令来确认:
sudo chown -R nginx:nginx /usr/share/zabbix 
sudo chmod -R 755 /usr/share/zabbix
  1. Nginx服务重新加载:确认配置修改后重新加载Nginx服务,而不仅仅是重启。可以执行以下命令确保配置生效:
sudo nginx -t # 检查配置是否有错误 
sudo systemctl reload nginx
  1. 查看防火墙配置:虽然你已经放行8080端口,但建议进一步确认防火墙设置,确保没有其他规则阻止流量。
sudo firewall-cmd --list-all
  1. Zabbix页面路径验证:确认你的浏览器访问的路径是否正确,应该是 http://192.168.6.138:8080/,而不需要加 /zabbix
    ![[Pasted image 20241111174731.png]]

到此位置!!这个就是最新版本的安装,其他linux版本大差不大,前期就是mysql的搭建

MariaDB 数据库安装

Zabbix 需要数据库来存储数据。我们将安装 MariaDB 并创建一个数据库。

sudo dnf install mariadb-server -y
sudo systemctl start mariadb
sudo systemctl enable mariadb
运行 MariaDB 安全安装脚本
sudo mysql_secure_installation

Zabbix 7 相较于 Zabbix 6.4 引入了一些新功能、改进和性能优化。以下是一些主要区别:

1. 增强的可观测性和监控功能

  • 新监控指标:Zabbix 7 引入了更多的内置指标和模板,以便更全面地覆盖各种应用和系统的监控需求。
  • 更高级的告警管理:增加了告警管理和通知功能,使用户可以更灵活地配置不同的告警规则,支持多条件告警触发。

2. 用户界面改进

  • UI/UX 优化:Zabbix 7 对界面和用户体验做了一些改进,使得仪表板、图表等更加直观和友好,帮助用户更轻松地导航和管理监控系统。
  • 自定义仪表板功能增强:允许用户在仪表板上展示更灵活的内容和布局,提高了用户定制化的能力。

3. 性能改进

  • 数据存储优化:Zabbix 7 针对大规模数据存储进行了优化,在处理大量历史数据和事件时更加高效。
  • 代理性能提升:Zabbix 7 提高了代理(Agent)的性能,减少了代理在采集数据时的系统资源占用。

4. 新数据采集方法

  • 增强的 SNMP 和 Prometheus 集成:Zabbix 7 加强了与 SNMP 设备和 Prometheus 数据源的集成,提供更多的配置选项和性能优化。
  • 改进的 Webhook 支持:更好地支持第三方服务集成,用户可以更轻松地与其他系统进行数据交互。

5. 支持的系统和平台

  • 新增支持的操作系统:Zabbix 7 引入了对一些新操作系统和数据库版本的支持,提供更广泛的部署选择。
  • 弃用旧版系统支持:一些旧的操作系统和软件版本可能在 Zabbix 7 中被弃用,以确保安全和性能。

6. 安全性增强

  • 强化的认证和授权机制:Zabbix 7 增强了用户认证和角色管理,使得系统更安全可靠,特别是在多用户环境中。
  • 日志和事件的加密存储:Zabbix 7 可能支持更安全的数据传输和存储方式,以防止敏感信息泄露。

7. 扩展功能支持

  • 增强的 API 功能:Zabbix 7 提供了更多的 API 功能,使开发人员可以更灵活地访问和操作 Zabbix 数据,实现自动化和集成。
  • 新的插件框架:Zabbix 7 支持更多插件和集成功能,用户可以轻松地扩展 Zabbix 的原生功能。

8. 维护和升级简化

  • 升级流程优化:Zabbix 7 优化了从旧版本到新版本的升级过程,减少了升级带来的停机时间和潜在问题。
  • 自动化维护工具:增加了一些自动化的维护工具,帮助用户更高效地管理和维护 Zabbix 服务器。

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

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

相关文章

docker里rtsp推流+同一个docker接受流进行部署

1.参考&#xff1a; https://blog.csdn.net/m0_57609406/article/details/140323327 2.dockerfile命令 # 使用官方 Python 基础镜像 FROM python:3.8.18-slim# 设置工作目录 WORKDIR /usr/src/app# 安装必要的软件包&#xff08;FFmpeg、OpenCV、lsof、RTSP工具&#xff09;…

主进程main.js打印中文时终端显示乱码解决方案

{"name": "aaa","version": "1.0.0","description": "first electron app","main": "main.js","scripts": {// 解决乱码的问题"start": "chcp 65001 && no…

git新手使用教程

git新手使用教程 一、安装和初始化配置2、新建仓库3.工作区域和文件状态4.添加和提交文件5 git reset回退版本6 使用git diff查看差异7 使用git rm删除文件8 .gitignore忽略文件9 注册GitHub账号10 SSH配置和克隆仓库11 关联本地仓库和远程仓库12 Gitee的使用 由B站视频教程整理…

【GPTs】Email Responder Pro:高效生成专业回复邮件

博客主页&#xff1a; [小ᶻZ࿆] 本文专栏: AIGC | GPTs应用实例 文章目录 &#x1f4af;GPTs指令&#x1f4af;前言&#x1f4af;Email Responder Pro主要功能适用场景优点缺点 &#x1f4af;小结 &#x1f4af;GPTs指令 中文翻译&#xff1a; Email Craft 是一款专门用于…

使用yarn,如何编译打包electron?

要使用yarn编译打包Electron应用&#xff0c;可以按照以下步骤操作&#xff1a; 安装Electron Forge或Electron Builder&#xff1a; Electron Forge是一个一体化工具&#xff0c;可以处理Electron应用程序的打包与分发。可以通过yarn安装Electron Forge CLI工具包到项目的devD…

2024下半年软考系统架构师案例分析题试题与答案--ROS机器人操作系统

一、知识点回顾 ROS(Robot Operating System)是一个用于编写机器人软件的框架。它提供了一系列的工具和库,帮助开发者创建复杂的、可以在多种操作系统上运行的机器人应用程序。 ROS的主要特点包括: 分布式计算能力:ROS提供了一种方式让多个计算机或设备协同工作,通过…

uni-app表格带分页,后端处理过每页显示多少条

uni-app表格带分页&#xff0c;后端处理过每页可以显示多少条&#xff0c;一句设置好了每页显示的数据量&#xff0c;不需要钱的在进行操作&#xff0c;在进行对数据的截取 <th-table :column"column" :listData"data" :checkSort"checkSort"…

安川电源模块:YASKAWA CPS-IONB或CPS-I0NB

‌安川电源模块‌是一种直接贴装在印刷电路板上的电源供应器&#xff0c;主要用于为专用集成电路&#xff08;ASIC&#xff09;、数字信号处理器&#xff08;DSP&#xff09;、微处理器、存储器、现场可编程门阵列&#xff08;FPGA&#xff09;及其他数字或模拟负载提供供电。这…

探索Copier:Python项目模板的革命者

文章目录 **探索Copier&#xff1a;Python项目模板的革命者**1. 背景介绍&#xff1a;为何Copier成为新宠&#xff1f;2. Copier是什么&#xff1f;3. 如何安装Copier&#xff1f;4. 简单库函数使用方法4.1 创建模板4.2 从Git URL创建项目4.3 使用快捷方式4.4 动态替换文本4.5 …

密码学知识点整理二:常见的加密算法

常用的加密算法包括对称加密算法、非对称加密算法和散列算法。 对称加密算法 AES&#xff1a;高级加密标准&#xff0c;是目前使用最广泛的对称加密算法之一&#xff0c;支持多种密钥长度&#xff08;128位、192位、256位&#xff09;&#xff0c;安全性高&#xff0c;加密效率…

大模型就业收入高吗?大模型入门到精通,收藏这篇就够了

目前&#xff0c;已经可以说人工智能&#xff08;AI&#xff09;是推动社会进步和产业升级的重要力量。 其中&#xff0c;AI大模型作为人工智能领域的核心技术之一&#xff0c;正引领着新一轮的技术革命。 2024年&#xff0c;AI大模型开发工程师无疑成为了IT行业中最炙手可热…

uni-app表单⑪

文章目录 十七、用户登录-登录界面搭建一、结构样式代码编写 十八、用户登录-表单验证一、userRulesMixin 文件使用二、验证规则编写 十七、用户登录-登录界面搭建 一、结构样式代码编写 uni-forms 插件下载 下载地址&#xff1a;https://ext.dcloud.net.cn/plugin?id2773 s…

Kubebot:一款Google云平台下的Slackbot安全测试工具

Kubebot 今天给大家介绍的是一款名叫Kubebot的安全测试Slackbot&#xff0c;该工具基于Google 云平台搭建&#xff0c;并且提供了Kubernetes后端。 项目架构 数据流 1.API请求由Slackbot发起&#xff0c;发送至API服务器&#xff0c;API服务器以Kubernetes(K8s)集群中的Docke…

树莓派AI视觉小车--5.机器人小车超声波避障

通过超声波模块与小车结合&#xff0c;实现小车超声波避障。确保小车接线已安装&#xff0c;且安装正确。 通过超声波来获取小车与障碍物的距离。当检测到小车与障碍物的距离小于我们的设置的距离时&#xff0c;小车左旋避开障碍物。 运行代码如下所示&#xff1a; from LOBO…

openai Realtime API (实时语音)

https://openai.com/index/introducing-the-realtime-api/ 官方demo https://github.com/openai/openai-realtime-console 官方demo使用到的插件 https://github.com/openai/openai-realtime-api-beta?tabreadme-ov-file 装包配置 修改yarn.lock 这个包是从github下载的 &q…

conda 和 pip 的比较

conda 和 pip 的比较 在使用 Anaconda 管理 Python 环境时&#xff0c;您可以选择使用 conda 或 pip 命令来下载和安装软件包。这两种工具都能够有效地管理包&#xff0c;但它们在管理环境和解决依赖关系时有一些关键的区别。理解这些差异可以帮助您更好地决定在特定情况下使用…

【IC】DTCO

DTCO本质上是DSE。。。 文章A Novel Framework for DTCO: Fast and Automatic Routability Assessment with Machine Learning for Sub-3nm Technology Options中提到&#xff1a; std cell尺寸缩小不一定会在block模块级获得面积收益。。。得综合考虑&#xff0c;综合了设计…

mybatis+postgresql,无感读写json字段

1.实体类中字段类型 import com.alibaba.fastjson.JSONObject;Data public class TestDto {private String name;//对应数据库的JSON字段private JSONObject page_detail;} 2.自定义实现typeHandler package base.utils;import com.alibaba.fastjson.JSONObject; import org…

SpringBoot配置Rabbit中的MessageConverter对象

SpringAMQP默认使用SimpleMessageConverter组件对消息内容进行转换 SimpleMessageConverter&#xff1a; only supports String, byte[] and Serializable payloads仅仅支持String、Byte[]和Serializable对象Jackson2JsonMessageConverter&#xff1a;was expecting (JSON Str…

Python毕业设计选题:基于django+vue的医院挂号系统设计与实现

开发语言&#xff1a;Python框架&#xff1a;djangoPython版本&#xff1a;python3.7.7数据库&#xff1a;mysql 5.7数据库工具&#xff1a;Navicat11开发软件&#xff1a;PyCharm 系统展示 病人管理 科室类型管理 医生管理 公告咨询管理 挂号预约管理 科室信息管理 摘要 医…