[comment]: # translation:outdated

[comment]: # ({83c2fbfb-83c2fbfb})
# 1 Red Hat Enterprise Linux/CentOS

[comment]: # ({/83c2fbfb-83c2fbfb})

[comment]: # ({35563296-abf52fa4})
#### 概述

官方的 Zabbix 发行包适用于 RHEL 7、CentOS 7 和 Oracle Linux
7。在本文中，将使用 `RHEL` 来指代这三个操作系统。

一些 Zabbix agent 和 Zabbix proxy 发行包也适用于 [RHEL
6](http://repo.zabbix.com/zabbix/4.0/rhel/6/x86_64/) 和 [RHEL
5](http://repo.zabbix.com/zabbix/4.0/rhel/5/x86_64)。

[comment]: # ({/35563296-abf52fa4})

[comment]: # ({30d26138-8d3bfe1d})
#### 添加 Zabbix 软件仓库

安装软件仓库配置包，这个包包含了 yum（软件包管理器）的配置文件。

RHEL 7:

    # rpm -ivh http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm

RHEL 6:

    # rpm -ivh http://repo.zabbix.com/zabbix/4.0/rhel/6/x86_64/zabbix-release-4.0-1.el6.noarch.rpm

RHEL 5:

    # rpm -ivh http://repo.zabbix.com/zabbix/4.0/rhel/5/x86_64/zabbix-release-4.0-1.noarch.rpm

[comment]: # ({/30d26138-8d3bfe1d})

[comment]: # ({e2c348d9-19204db6})
#### 前端安装的先决条件

Zabbix 前端需要额外的基础安装包。 您需要在运行 Zabbix
前端的系统中启用可选 rpms 的软件仓库：

RHEL 7:

    # yum-config-manager --enable rhel-7-server-optional-rpms

[comment]: # ({/e2c348d9-19204db6})

[comment]: # ({3b19a642-777d9a20})
#### 安装 Server/proxy/前端

安装 Zabbix server（适用于 RHEL7，[在 RHEL 6
上弃用](/manual/installation/install_from_packages/rhel_centos#zabbix_frontend_and_server_on_rhel_6)）并使用
MySQL 数据库：

    # yum install zabbix-server-mysql

安装 Zabbix proxy 并使用 MySQL 数据库：

    # yum install zabbix-proxy-mysql

安装 Zabbix 前端（适用于 RHEL 7，[在 RHEL 6
上弃用](/manual/installation/install_from_packages/rhel_centos#zabbix_frontend_and_server_on_rhel_6)）并使用
MySQL 数据库：

    # yum install zabbix-web-mysql

若使用PostgreSQL，则将命令中的 'mysql' 替换为 'pgsql'；SQLite3则替换为
'sqlite3' （仅 Zabbix proxy）。

[comment]: # ({/3b19a642-777d9a20})

[comment]: # ({3aab4197-c573e862})
#### 创建数据库

对于 Zabbix [server](/manual/concepts/server) 和
[proxy](/manual/concepts/proxy) 守护进程而言，数据库是必须的。而运行
Zabbix [agent](/manual/concepts/agent) 是不需要的。

::: notewarning
如果 Zabbix server 和 Zabbix proxy
安装在相同的主机，它们必须创建不同名字的数据库！
:::

使用 [MySQL](/manual/appendix/install/db_scripts#mysql) 或
[PostgreSQL](/manual/appendix/install/db_scripts#postgresql)
提供的说明来创建数据库。

[comment]: # ({/3aab4197-c573e862})

[comment]: # ({077da6f0-fb411bb2})
#### 导入数据

使用 MySQL 来导入 Zabbix server 的初始数据库 schema 和数据，

    # zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix

系统将提示您输入新创建的数据库密码。

使用 PostgreSQL：

    # zcat /usr/share/doc/zabbix-server-pgsql*/create.sql.gz | sudo -u <username> psql zabbix

对于 Zabbix proxy，导入初始的数据库 schema：

    # zcat /usr/share/doc/zabbix-proxy-mysql*/schema.sql.gz | mysql -uzabbix -p zabbix

对于使用 PostgreSQL（或 SQLite）的 Zabbix proxy：

    # zcat /usr/share/doc/zabbix-proxy-pgsql*/schema.sql.gz | sudo -u <username> psql zabbix
    # zcat /usr/share/doc/zabbix-proxy-sqlite3*/schema.sql.gz | sqlite3 zabbix.db

[comment]: # ({/077da6f0-fb411bb2})

[comment]: # ({6db6c128-5be4830a})
#### 为 Zabbix server/proxy 配置数据库

编辑 zabbix\_server.conf 或 zabbix\_proxy.conf
文件以使用已创建的数据库。例如：

    # vi /etc/zabbix/zabbix_server.conf
    DBHost=localhost
    DBName=zabbix
    DBUser=zabbix
    DBPassword=<password>

在 DBPassword 参数中输入由 MySQL 或 PosgreSQL 创建的 Zabbix 数据库密码。

在 PostgreSQL 使用 `DBHost=`。 您可能希望保留默认设置
`DBHost=localhost`（或 IP 地址），但这会使 PostgreSQL
使用网络套接字连接到 Zabbix。 有关说明，详见下面的**SELinux 配置**。

[comment]: # ({/6db6c128-5be4830a})

[comment]: # ({a6c4c5a9-3b5ca3c2})
#### 启动 Zabbix server 进程

运行以下命令以启动 Zabbix server 进程：

    # service zabbix-server start

并在系统启动时让它自启：

RHEL 7 或更高版本：

    # systemctl enable zabbix-server

RHEL 7 之前的版本：

    # chkconfig --level 12345 zabbix-server on

使用 'zabbix-proxy' 替换命令中的 'zabbix-server' 以启动和自启 Zabbix
proxy。

[comment]: # ({/a6c4c5a9-3b5ca3c2})

[comment]: # ({7cb0be4f-090f7a4a})
#### Zabbix 前端配置

对于 RHEL 7 和更高版本，Zabbix 前端的 Apache 配置文件位于
/etc/httpd/conf.d/zabbix.conf。

如果使用 RHEL 6，详见 [在 RHEL 6
上使用Zabbix前端](/manual/installation/install_from_packages/rhel_centos#zabbix_frontend_and_server_on_rhel_6)
章节来了解如何配置前端。

虽然已经配置了一些 PHP 参数。但是有必要取消 "date.timezone" 注释，并为其
[设置正确的时区](http://php.net/manual/en/timezones.php) 。

    php_value max_execution_time 300
    php_value memory_limit 128M
    php_value post_max_size 16M
    php_value upload_max_filesize 2M
    php_value max_input_time 300
    php_value always_populate_raw_post_data -1
    # php_value date.timezone Europe/Riga

以此 [前端安装步骤](/manual/installation/install#installing_frontend)
来完成 Zabbix 前端的安装，并访问新安装的 Zabbix 前端页面。

::: noteclassic
Zabbix 官方软件仓库提供了 fping、iksemel、libssh2
包。这些包位于 *[non-supported](http://repo.zabbix.com/non-supported/)*
目录。
:::

[comment]: # ({/7cb0be4f-090f7a4a})

[comment]: # ({77f32dc5-ee4b539f})
#### SELinux 配置

在 enforcing 模式下启用 SELinux 状态后，您需要执行以下命令以启用 Zabbix
前端和 Zabbix server 之间的通信：

RHEL 7 或更高版本：

    # 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 web 服务器:\

    # service httpd restart

[comment]: # ({/77f32dc5-ee4b539f})

[comment]: # ({376bca7c-17821b43})
#### 安装 Agent

运行以下命令以安装 Zabbix agent ：

    # yum install zabbix-agent

运行以下命令以启动 Zabbix agent：

    # service zabbix-agent start

[comment]: # ({/376bca7c-17821b43})

[comment]: # ({2f58d9da-06cd32f2})
#### 在 RHEL 6 上使用 Zabbix 前端

由于 PHP 版本，不支持 RHEL 6 上的 Zabbix 前端。 由于 Zabbix 3.0 的要求是
PHP 5.4.0 或更高版本，而 RHEL 6 最新版本是5.3.3。

在大多数情况下，Zabbix server 和前端安装在同一台机器上。当从 2.2 升级到
3.0 时，Zabbix server
将执行数据库升级，前端会停止工作。无法回滚数据库更改，因此用户将被迫使用第三方软件包升级
PHP。 这就是为什么 Zabbix server 在 RHEL 6 上也被弃用的原因。

如果您仍想在 RHEL 6 上使用 Zabbix 前端并使用第三方软件包升级您的
PHP，则需要首先启用 `zabbix-deprecated` 软件仓库：

-   打开 /etc/yum.repos.d/zabbix.repo 文件
-   找到 \[zabbix-deprecated\] 部分
-   将其启用 enabled=1
-   保存文件

至此，您将不得不进行更多手动配置。 这是因为 Zabbix 无法识别 PHP 所需的
Apache 版本，因此无法为 Zabbix 前端提供正确的 Apache 配置。为此，在
zabbix-web 软件包中包含了 2 个 Apache 配置文件，一个用于 Apache
2.2，另一个用于 2.4，您需要手动与 Apache 配置集成：

-   httpd22-example.conf
-   httpd24-example.conf

要获取文件的完整路径，请执行：

    $ rpm -ql zabbix-web | grep example.conf

[comment]: # ({/2f58d9da-06cd32f2})

[comment]: # ({af0fbb73-af0fbb73})
### Java gateway installation

It is required to install [Java gateway](/manual/concepts/java) only if
you want to monitor JMX applications. Java gateway is lightweight and
does not require a database.

Once the required [repository](#adding_zabbix_repository) is added, you
can install Zabbix Java gateway by running:

    # yum install zabbix-java-gateway

Proceed to [setup](/manual/concepts/java/from_rhel_centos) for more
details on configuring and running Java gateway.

[comment]: # ({/af0fbb73-af0fbb73})

[comment]: # ({70393033-70393033})
### Installing debuginfo packages

::: noteclassic
 Debuginfo packages are currently available for RHEL/CentOS
versions 7, 6 and 5. 
::: To enable debuginfo repository edit
*/etc/yum.repos.d/zabbix.repo* file. Change `enabled=0` to `enabled=1`
for zabbix-debuginfo repository.

    [zabbix-debuginfo]
    name=Zabbix Official Repository debuginfo - $basearch
    baseurl=http://repo.zabbix.com/zabbix/4.0/rhel/7/$basearch/debuginfo/
    enabled=0
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
    gpgcheck=1

This will allow you to install the zabbix-debuginfo package.

    # yum install zabbix-debuginfo

This single package contains debug information for all binary Zabbix
components.

[comment]: # ({/70393033-70393033})
