从软件包安装的说明
概述
Zabbix 8.0 的官方预发布软件包可在 Zabbix 网站 获取。
选择您的操作系统和 Zabbix 组件,以生成适合您环境的安装说明。 另请参阅本页中的软件包安装说明以获取重要的附加信息,以及安装与设置章节。
以下 Linux 发行版提供软件包:
- Red Hat Enterprise Linux 及其衍生版本:AlmaLinux、Amazon Linux 2023、CentOS Stream、CentOS 7、Oracle Linux、Rocky Linux
- Debian、Ubuntu、Raspberry Pi OS、Raspbian
- SUSE Linux Enterprise Server、openSUSE Leap
某些操作系统发行版(尤其是基于 Debian 的发行版)提供其自己的 Zabbix 软件包。 这些软件包不受 Zabbix 支持,并且可能已过时,或缺少最新功能和错误修复。 建议仅使用来自 Zabbix 官方仓库 的官方软件包。 如果您之前是从操作系统的软件仓库安装的 Zabbix,请参阅从操作系统仓库升级 Zabbix 软件包中的步骤。
软件包支持 MySQL/PostgreSQL 数据库和 Apache/Nginx Web 服务器。 请注意,Zabbix 服务器和 proxy 不能共享同一个数据库;如果两者安装在同一台主机上,请使用不同的数据库名称。
如有需要,可在 Zabbix 官方仓库 获取 Zabbix agent/agent 2、Zabbix get 和 Zabbix sender 的独立软件包。
Zabbix 还为非 Linux 操作系统提供了 Zabbix agent 的预编译二进制文件;请参阅:
- 通过 MSI 安装 Windows agent
- 通过 PKG 安装 macOS agent
- 旧版二进制文件(适用于较旧或较少见的系统,例如 HP-UX、NetBSD、Tru64 以及较旧版本的 SLES)
软件包安装说明
以下说明适用于所有系统:
- 如果使用 PostgreSQL,在 Zabbix 服务器/proxy 配置中设置
DBHost=localhost(或 IP 地址)会使 PostgreSQL 使用网络套接字而不是本地 UNIX 套接字;相关设置说明请参见 SELinux 配置。 - 如果使用 TimescaleDB,请参见额外的 TimescaleDB 设置。
- 如果安装 Zabbix Java 网关(用于监控 JMX 应用程序),请参见适用于 基于 RHEL 的系统 和 基于 Debian 的系统 的附加设置说明。
- 如需以 root 身份运行 Zabbix agent,请参见 以 root 身份运行 agent。
以下说明适用于 RHEL 及其衍生版:
- 如果你为 EL9 启用了 EPEL 仓库,而该仓库也提供 Zabbix 软件包,则在安装官方 Zabbix 软件包之前,必须将其从软件包解析中排除;请参见 意外安装 EPEL Zabbix 软件包。
- 关于在 Red Hat UBI 环境中安装 Zabbix 软件包,请参见 适用于 Red Hat UBI 环境中 RHEL 的 Zabbix 软件包。
- 如需使用 ICMP ping 监控项,
fping的软件包也可从 Zabbix 官方仓库 获取。
SELinux 配置
Zabbix 使用基于套接字的进程间通信。 在启用了 Security-Enhanced Linux (SELinux) 的系统上,您可能需要添加 SELinux 规则,以允许 Zabbix 在 SocketDir 目录中创建/使用 UNIX 域套接字。 套接字文件由 Zabbix 服务器(告警器、预处理、IPMI)和 Zabbix proxy(IPMI)使用,并且会在进程运行期间存在。
如果 SELinux 以 enforcing 模式启用,请执行以下命令以启用 Zabbix 前端与服务器之间的通信:
对于 RHEL 7(及更高版本)、AlmaLinux、CentOS Stream、Oracle Linux、Rocky Linux 8(及更高版本):
setsebool -P httpd_can_connect_zabbix on
如果数据库是通过网络访问的(对于 PostgreSQL,包括 localhost),还需要允许 Zabbix 前端连接到数据库:
setsebool -P httpd_can_network_connect_db on
对于早于 7 的 RHEL:
setsebool -P httpd_can_network_connect on
setsebool -P zabbix_can_network on
应用 SELinux 设置后,重启 Apache:
systemctl restart httpd
此外,您还可以从 Zabbix 官方仓库 安装预定义的 zabbix-selinux-policy 软件包。
该软件包适用于所有受支持的操作系统版本,可简化 Zabbix 部署,并防止用户因配置复杂而关闭 SELinux。
为了获得最高安全性,建议设置自定义 SELinux 配置。
zabbix-selinux-policy 软件包包含一个基础 SELinux 策略,允许 Zabbix 创建和使用套接字,并启用 HTTPd 到 PostgreSQL 的连接(供前端使用)。
源文件 zabbix_policy.te 包含以下规则:
module zabbix_policy 1.2;
require {
type zabbix_t;
type zabbix_port_t;
type zabbix_var_run_t;
type postgresql_port_t;
type httpd_t;
class tcp_socket name_connect;
class sock_file { create unlink };
class unix_stream_socket connectto;
}
#============= zabbix_t ==============
allow zabbix_t self:unix_stream_socket connectto;
allow zabbix_t zabbix_port_t:tcp_socket name_connect;
allow zabbix_t zabbix_var_run_t:sock_file create;
allow zabbix_t zabbix_var_run_t:sock_file unlink;
allow httpd_t zabbix_port_t:tcp_socket name_connect;
#============= httpd_t ==============
allow httpd_t postgresql_port_t:tcp_socket name_connect;
Debuginfo 软件包
Debuginfo 软件包包含 Zabbix 二进制文件的调试符号。
正常安装或运行并不需要这些软件包,但它们对高级故障排查很有帮助。
要启用 zabbix-debuginfo 仓库:
- 在 RHEL 7 上,编辑
/etc/yum.repos.d/zabbix.repo,并为zabbix-debuginfo部分设置enabled=1:
[zabbix-debuginfo]
name=Zabbix Official Repository debuginfo - $basearch
baseurl=http://repo.zabbix.com/zabbix/8.0/stable/rhel/7/$basearch/debuginfo/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
gpgcheck=1
- 在 SUSE 上,编辑
/etc/zypp/repos.d/zabbix.repo,并为zabbix-debuginfo部分设置enabled=1:
[zabbix-debuginfo]
name=Zabbix Official Repository debuginfo
type=rpm-md
baseurl=https://repo.zabbix.com/zabbix/8.0/stable/sles/15/x86_64/debuginfo/
gpgcheck=1
gpgkey=https://repo.zabbix.com/zabbix/8.0/stable/sles/15/x86_64/debuginfo/repodata/repomd.xml.key
enabled=0
update=1
启用后,安装这些软件包:
- 在 RHEL 上,安装一个包含所有 Zabbix 组件调试信息的软件包:
dnf install zabbix-debuginfo
- 在 SUSE 上,安装特定组件的 debuginfo 软件包:
zypper install zabbix-<component>-debuginfo
启用不稳定版本发布仓库
以下说明用于启用不稳定的 Zabbix 发布仓库(默认禁用),这些仓库用于次要 Zabbix 版本的发布候选版。
首先,安装或更新到最新的 zabbix-release 软件包。要在您的系统上启用 rc 软件包,请执行以下操作:
Red Hat Enterprise Linux
打开 /etc/yum.repos.d/zabbix.repo 文件,并为 zabbix-unstable 仓库设置 enabled=1。
[zabbix-unstable]
name=Zabbix Official Repository (unstable) - $basearch
baseurl=https://repo.zabbix.com/zabbix/8.0/unstable/rhel/8/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
Debian/Ubuntu
打开 /etc/apt/sources.list.d/zabbix.list 并取消注释 “Zabbix 不稳定仓库”。
# Zabbix unstable repository
deb https://repo.zabbix.com/zabbix/8.0/unstable/debian bullseye main
deb-src https://repo.zabbix.com/zabbix/8.0/unstable/debian bullseye main
SUSE
打开 /etc/zypp/repos.d/zabbix.repo 文件,并将 zabbix-unstable 仓库的 enabled=1 设置为启用。
[zabbix-unstable]
name=Zabbix Official Repository
type=rpm-md
baseurl=https://repo.zabbix.com/zabbix/8.0/unstable/sles/15/x86_64/
gpgcheck=1
gpgkey=https://repo.zabbix.com/zabbix/8.0/unstable/sles/15/x86_64/repodata/repomd.xml.key
enabled=1
update=1