适用于Red Hat Enterprise Linux和Oracle Linux的官方Zabbix 6.0 LTS软件包可在 Zabbix website获取。
Red Hat Enterprise Linux系统的Zabbix软件包仅适用于RHEL系统。 其他环境(如Red Hat Universal Base Image)可能缺少成功安装所需的依赖项和仓库访问权限。 针对此类问题,在从软件包安装Zabbix前,请确认目标环境兼容性并确保能访问所需的仓库和依赖项。 更多信息请参阅red-hat-ubi环境中的rhel-zabbix包。
提供的软件包支持MySQL/PostgreSQL数据库及Apache/nginx网页服务器。
Zabbix agent软件包及工具Zabbix get和Zabbix sender可在Zabbix官方仓库中获取,支持: RHEL 9、 RHEL 8、 RHEL 7、 RHEL 6以及 RHEL 5。
自Zabbix 6.0.35起,由于Go 1.22(及更新版本)与RHEL 6提供的GCC 4.4.7不兼容导致编译错误,RHEL 6不再提供Zabbix agent 2软件包。 但请注意,Zabbix agent packages仍受支持。
Zabbix官方仓库还提供fping、iksemel和libssh2软件包。这些软件包位于 non-supported目录。
EL9的EPEL仓库也提供Zabbix软件包。若同时安装了官方Zabbix仓库和EPEL仓库, 则必须通过在EPEL仓库配置file的/etc/yum.repos.d/
下添加以下排除条款来禁用EPEL中的Zabbix软件包:
另请参阅:意外安装-epel-zabbix-软件包
请参阅下载页面中installation instructions 各平台的说明以了解:
如需以root身份runZabbix agent,请参阅Running agent as root。
用于scheduled report generation的Zabbix网页服务进程 需要Google Chrome浏览器。该浏览器不包含在 软件包中,需手动安装。
使用TimescaleDB时,除了PostgreSQL的import命令外, 还需执行run:
TimescaleDB仅支持Zabbix server。
Zabbix前端需要PHP version 7.2或更高版本.
Zabbix采用基于套接字的进程间通信机制。在启用SELinux的系统上,可能需要添加SELinux规则以允许Zabbixcreate/使用SocketDir目录中的UNIX域套接字。当前套接字文件被服务器端(告警器、预处理器、IPMI)和proxy(IPMI)使用。套接字文件具有持久性,意味着它们在进程运行期间持续存在。
在SELinux处于强制模式的情况下,您需要execute以下命令来启用Zabbix前端与服务器之间的通信:
RHEL 7及更高版本:
如果数据库可通过网络访问(包括PostgreSQL的'localhost'情况),您还需要允许Zabbix前端连接数据库:
RHEL 7之前版本:
完成前端和SELinux配置后,重启Apache Web服务器:
systemctl restart httpd
此外,Zabbix在RHEL 8和RHEL 7的源码RPM包中提供了zabbix-selinux-policy软件包。该软件包为SELinux提供了基本默认策略,通过允许Zabbixcreate和使用套接字,并启用httpd与PostgreSQL的连接(供前端使用),使Zabbix组件能够开箱即用。
源文件 zabbix_policy.te file 包含以下规则:
module zabbix_policy 1.2;
require {
type zabbix_t;
类型 zabbix_port_t;
type zabbix_var_run_t;
type postgresql_port_t;
type httpd_t;
class tcp_socket name_connect;
class TCP套接字 name_connect; class sock_file { create unlink }; class unix_stream_socket connectto; }
#============= Zabbix技术文档 ============== 允许 zabbix_t 自身:unix_stream_socket 连接至; 允许 zabbix_t zabbix_port_t:tcp_socket name_connect; allow zabbix_t zabbix_var_run_t:sock_file create; 允许 zabbix_t zabbix_var_run_t:sock_file 取消链接; 允许 httpd_t zabbix_port_t:tcp_socket name_connect;
该软件包的创建旨在防止用户因配置复杂性而禁用SELinux。它包含的默认策略足以加速Zabbix的部署与配置。若需达到最高安全级别,建议设置自定义SELinux配置。
添加所需仓库后,您可以通过运行以下命令安装Zabbix proxy:
在命令中将'mysql数据库'替换为'pgsql'以使用PostgreSQL,或替换为'sqlite3'以使用SQLite3(仅限proxy)。
'zabbix-sql-scripts'软件包包含所有支持的数据库管理系统(适用于Zabbix server和Zabbix proxy)的数据库模式,并将用于数据import。
Create 为 Zabbix proxy 使用独立数据库
Zabbix server 和 Zabbix proxy 不能使用同一数据库。若它们安装在同一台 主机 上,proxy 数据库必须使用不同名称。
导入初始架构:
对于proxy使用PostgreSQL(或SQLite):
cat /usr/share/zabbix-sql-scripts/postgresql/proxy.sql | sudo -u zabbix psql zabbix cat /usr/share/zabbix-sql-scripts/sqlite3/proxy.sql | sqlite3 zabbix.db
编辑 Zabbix proxy 配置 file (/etc/zabbix/zabbix_proxy.conf
):
在 Zabbix proxy 的 DBName 中使用与 Zabbix server 分离的独立数据库.
在 DBPassword 中为 MySQL 使用 Zabbix 数据库密码; 为 PostgreSQL 使用 PostgreSQL 用户密码.
PostgreSQL 需使用 DBHost=
. 可保留默认设置 DBHost=localhost
(或 IP 地址), 但这会使 PostgreSQL 使用网络套接字连接 Zabbix. 具体操作指南参见 selinux配置.
启动Zabbix proxy进程并设置为开机自启:
systemctl start zabbix-proxy systemctl enable zabbix-proxy
Zabbix proxy没有前端界面,仅与Zabbix服务器进行通信。
仅当需要监控JMX应用程序时才需要安装Java gateway。Java网关是轻量级的且不需要数据库。
添加所需仓库后,可通过以下命令安装Zabbix Java网关:
前往setup获取有关配置和运行Java网关的更多详细信息。
Debuginfo软件包目前适用于RHE版本7、6和5。
要启用debuginfo仓库,请编辑 /etc/yum.repos.d/zabbix.repo file。将enabled=0
修改为enabled=1
以启用zabbix-debuginfo仓库。
[zabbix-debuginfo]
name=Zabbix Official Repository debuginfo - $basearch
baseurl=http://repo.zabbix.com/zabbix/5.5/rhel/7/$basearch/debuginfo/
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
gpgcheck=1
这将允许您安装zabbix-debuginfo软件包。
该单一软件包包含所有Zabbix二进制组件的调试信息。