4 从软件包安装

Zabbix SIA 为以下系统提供了官方 RPM 和 DEB 软件包:

适用于各种操作系统发行版的 yum/dnf、apt 和 zypper 仓库的软件包文件可在 Zabbix official repository 中找到。

某些操作系统发行版(特别是基于 Debian 的发行版)提供了它们自己的 Zabbix 软件包。请注意,这些软件包 受 Zabbix 的支持。第三方提供的 Zabbix 软件包可能已经过时,并且可能缺少最新的功能和错误修复。建议仅使用来自 Zabbix official repository 的软件包。如果您之前使用过非官方的 Zabbix 软件包,请参阅有关 来自操作系统仓库的-zabbix-软件包 的说明。

Package installation notes

以下注意事项适用于所有系统:

以下注意事项适用于RHEL及其衍生系统:

SELinux配置

Zabbix采用基于套接字的进程间通信机制。 在启用安全增强型Linux(SELinux)的系统上,可能需要添加SELinux规则以允许Zabbixcreate/使用SocketDir目录中的UNIX域套接字。 套接字文件由Zabbix server(告警器、预处理、IPMI)和Zabbix proxy(IPMI)使用,这些文件在进程运行时存在。

在强制模式下启用SELinux时,execute以下命令以启用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

针对RHEL 7之前版本:

setsebool -P httpd_can_network_connect on
       setsebool -P zabbix_can_network on

应用SELinux设置后,重启Apache:

systemctl restart httpd

可选操作:可从Zabbix Official Repository安装预定义的zabbix-selinux-policy软件包。 该软件包为所有受支持的操作系统版本提供,用于简化Zabbix部署并避免用户因配置复杂性而关闭SELinux。

为实现最高安全性,建议设置自定义SELinux规则。

zabbix-selinux-policy软件包包含基础SELinux策略,允许Zabbixcreate和使用套接字,并启用HTTPd与PostgreSQL的连接(供前端使用)。

源代码zabbix_policy.tefile包含以下规则:

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 packages

Debuginfo软件包包含Zabbix二进制文件的调试符号。 它们不是正常安装或运行所必需的,但对于高级故障排除非常有用。

要启用zabbix-debuginfo仓库:

  • 在RHEL 6或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/7.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/7.0/stable/sles/15/x86_64/debuginfo/
       gpgcheck=1
       gpgkey=https://repo.zabbix.com/zabbix/7.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