这里提供了从源代码安装 Zabbix 的具体步骤。

    1 安装 Zabbix 守护进程

    1 下载源代码存档

    转到 Zabbix download page 下载源代码存档。待下载完毕后,执行以下命令解压缩源代码存档:

    请在命令中输入正确的 Zabbix 版本。 它必须与下载的存档的名称匹配。

    2 创建用户账户

    对于所有 Zabbix 守护进程,需要一个非特权用户。 如果从非特权用户帐户启动 Zabbix 守护程序,它将以该用户身份运行。

    然而,如果一个守护进程以“root”启动,它会切换到“zabbix”用户,且这个用户必须存在。在 Linux 系统中,可以使用下面命令建立一个用户(该用户属于自己的用户组,“zabbix”):

    1. useradd -g zabbix zabbix

    而对于 Zabbix 前端安装,并不需要单独的用户帐户。

    如果 Zabbix 和 agent 运行在相同的机器上,建议使用不同的用户运行来 Zabbix server 和 agent。 否则,如果两者都作为同一用户运行,则 Zabbix agent 可以访问 Zabbix server 配置文件,并且可以轻松检索到 Zabbix 中的任何管理员级别的用户,例如,数据库密码。

    rootbin 或其他具有特殊权限的账户运行 Zabbix 是非常危险的。

    3 创建 Zabbix 数据库

    对于 Zabbix 和 proxy 守护进程以及 Zabbix 前端,必须需要一个数据库。但是 Zabbix 并不需要。

    SQL 脚本 用于创建数据库 schema 和插入 dataset。Zabbix proxy 数据库只需要数据库 schema,而 Zabbix server 数据库在建立数据库 schema 后,还需要 dataset。

    当创建数据库后,继续执行编译 Zabbix 的步骤。

    4 配置源代码

    当配置 Zabbix server 或者 proxy 的源代码时,需要指定所使用的数据库类型。一次只能使用 Zabbix server 或 Zabbix proxy 进程编译一种数据库类型。

    如果要查看所有受支持的配置选项,请在解压缩的 Zabbix 源代码目录中运行:

    1. ./configure --help

    如果要配置 Zabbix server 和 Zabbix proxy 的源代码,您可以运行以下内容:

    从 Zabbix 3.0.0 起,STMP 认证需要需要 cURL 7.20.0 或更高版本的 —with-libcurl 配置选项。
    从 Zabbix 2.2.0 起,虚拟机监控需要 —with-libcurl 和 —with-libxml2 配置选项。

    从 Zabbix 3.4 开始,Zabbix 将始终使用 PCRE 库进行编译;安装时它不是可选的。 —with-libpcre=[DIR] 只允许指向特定的基础安装目录,而不是通过 libpcre 文件的多个公共位置搜索。

    如果要配置 Zabbix server 的源代码(使用 PostgreSQL 等),您可以运行:

    如果要配置 Zabbix proxy 的源代码(使用 SQLite 等),您可以运行:

    1. ./configure --prefix=/usr --enable-proxy --with-net-snmp --with-sqlite3 --with-ssh2

    如果要配置 Zabbix agent 的源代码,您可以运行:

      您可以使用 —enable-static 标识静态连接类库。如果你打算在不同的服务器之间分发已编译的二进制文件,则必须使用此标识使这些二进制文件在没有必需库的情况下工作。请注意 —enable-static 。

      不建议在搭建 Zabbix server 的时候使用 —enable-static 选项。

      为了静态搭建 Zabbix server,您必须拥有每个所需的外部类库的静态版本。配置脚本中不提供这些类库的严格检查。

      命令行工具 zabbix_get 和 zabbix_sender 只有在 —enable-agent 选项启用时才会被编译。

      如果 MySQL 客户端类库不处在默认的位置,则需要添加可选的 MySQL 的配置文件 —with-mysql=//mysql_config ,以选择所需的路径。

      使用 —with-ibm-db2 以标识指定的 CLI API 位置。
      使用 —with-oracle 以标识指定的 OCI API 位置。

      关于使用加密,详见 使用加密方式编译 Zabbix

      5 安装

      如果从 SVN 安装,需要先运行以下命令:

      $ make dbschema

      1. make install

      这步需要使用一个拥有足够权限的用户来运行 (如 ‘root’,或者使用 sudo)。

      运行 将使用在 /usr/local/sbin 下的守护进程二进制文件(zabbix_server, zabbix_agentd, zabbix_proxy)和在 /usr/local/bin 下的客户端二进制文件进行默认安装。

      如需要指定 /usr/local 以外的位置,可在之前的配置源代码的步骤中使用 —prefix,例如 —prefix=/home/zabbix。在这个案例中,守护进程的二进制文件会被安装在 /sbin 下,工具会安装在 /bin 下。帮助文件会安装在 /share 下。

      6 查看和编辑配置文件
      • 在此编辑 Zabbix agent 的配置文件 /usr/local/etc/zabbix_agentd.conf

      您需要为每台安装了 zabbix_agentd 的主机配置这个文件。

      您必须在这个文件中指定 Zabbix server 的 IP 地址 。若从其他主机发起的请求会被拒绝。

      • 在此编辑 Zabbix server 的配置文件 /usr/local/etc/zabbix_server.conf

      您必须指定数据库的名称、用户和密码(如果使用的话)。

      如果您进行小型环境部署(最多十个受监控主机),其余参数的默认值将适合您的环境。 如果要最大化 Zabbix server(或 proxy)的性能,则应更改默认参数。 详见。

      • 如果您安装了 Zabbix proxy,请在此编辑 proxy 的配置文件 /usr/local/etc/zabbix_proxy.conf

      您必须指定 Zabbix server 的 IP 地址和 Zabbix proxy 主机名(必须被 Zabbix server 识别),同时也要指定数据库的名称、用户和密码(如果使用的话)。

      使用 SQLite 必须指定数据库文件的完整路径;数据库用户和密码不是必须的。

      7 启动守护进程

      在 Zabbix server 端运行 zabbix_server:

      值得注意的是,确保您的系统允许分配 36MB(或更多)的共享内存,否则 Zabbix server 将无法启动,并会在 Zabbix server 日志文件中看到 “Cannot allocate shared memory for .” 这样的报错信息。这可能会发生在 FreeBSD 和 Solaris 8 上。
      详见本页底部的 “另请参阅” 部分,了解如何配置共享内存。.

      在受监控的主机上运行 zabbix_agentd:

      1. shell> zabbix_agentd

      值得注意的是,请确保您的系统允许分配 2MB 的共享内存,否则 Zabbix agent 可能会无法运行,并会在 Zabbix agent 日志文件中看到 “Cannot allocate shared memory for collector.” 这样的报错信息。这可能会发生在 Solaris 8 上。

      如果您安装了 Zabbix proxy,请运行 zabbix_proxy:

      1. shell> zabbix_proxy

      2 安装 Zabbix web 界面

      复制 PHP 文件

      Zabbix 前端是 PHP 编写的,所以必须运行在支持 PHP 的 Web 服务器上。只需要简单的从 frontends/php 路径下复制 PHP 文件到 Web 服务器的 HTML 文档目录,即可完成安装。

      Apache Web 服务器的 HTML 文档目录通常包括:

      • /usr/local/apache2/htdocs (从源代码安装 Apache 的默认目录)

      • /srv/www/htdocs (OpenSUSE, SLES)

      • /var/www/html (Debian, Ubuntu, Fedora, RHEL, CentOS)

      建议使用子目录替代 HTML 根目录。可以使用下列命令,以创建一个子目录并复制 Zabbix 的前端文件到这个目录下(注意替换为实际的目录):

      1. mkdir <htdocs>/zabbix
      2. cd frontends/php

      需要来自 gettext 安装包的 msgfmt 组件。

      此外,使用英语以外的语言,需要在 Web 服务器上安装该语言对应的 locale 。详见“用户文件”页面中的 板块,以寻找如何安装它(如果需要的话)。

      安装前端
      第一步

      在您的浏览器打开 Zabbix 链接:http:///zabbix

      您可以看到前端安装向导的第一个页面。

      第二步

      请确认满足所有的软件安装前置条件。

      列表中也可能包含可选的先决条件。 不满足的可选先决条件以橙色显示,同时标识为 Warning 状态。 即使存在不满足的可选先决条件,安装仍可以继续进行。

      如果需要更改 Apache 的用户或用户组,则必须验证会话文件夹的权限。 否则 Zabbix 安装可能无法继续。

      第三步

      请输入连接到数据库的详细信息。Zabbix 数据库必须提前创建完成。

      第四步

      请输入 Zabbix server 的详细信息。

      第五步

      查看设置的摘要。

      第六步

      下载配置文件并将其放在 conf/ 路径下,即在您复制 Zabbix PHP 文件的 Web 服务器 HTML 文档子目录中。

      如果 Web服务器用户具有对 conf/ 目录的写访问权,则会自动保存配置文件,并且可以直接继续执行下一步。

      第七步

      完成安装。

      第八步

      Zabbix 前端已经就绪!默认的用户名是 Admin,密码是zabbix

      前往 。

      另请参阅