php调取 zabbix实时数据_zabbix-基础系列(三)-zabbix安装[官方版]

获取zabbix

获取zabbix的方式有四种:

  • 从 发行包 安装;
  • 下载最新的归档源码包并 编译它;
  • 从 容器 中安装;
  • 下载 Zabbix 应用。

安装要求

硬件

内存和磁盘

Zabbix 运行需要物理内存和磁盘空间。如果刚接触 Zabbix,128 MB 的物理内存和 256 MB 的可用磁盘空间可能是一个很好的起点。 然而,所需的内存和磁盘空间显然取决于被监控的主机数量和配置参数。 如果您计划调整参数以保留较长的历史数据,那么您应该考虑至少有几 GB 磁盘空间,以便有足够的磁盘空间将历史数据存储在数据库中。

每个 Zabbix 守护程序进程都需要与数据库服务器建立多个连接。 为连接分配的内存量取决于数据库引擎的配置。

CPU

Zabbix,尤其是 Zabbix 数据库可能需要大量 CPU 资源,该具体取决于被监控参数的数量和所选的数据库引擎。

其他硬件

如果需要启用短信(SMS)通知功能,需要串行通讯口(serial communication port)和串行GSM调制解调器(serial GSM modem)。USB转串行转接器也同样可以工作。

硬件资源配置参考

下表提供了几个硬件配置参考:

| 规模     | 平台                    | CPU/内存          | 数据库                                 | 受监控的主机数量 |
| :------- | :---------------------- | :---------------- | :------------------------------------- | :--------------- |
| *小型*   | CentOS                  | Virtual Appliance | MySQL InnoDB                           | 100              |
| *中型*   | CentOS                  | 2 CPU cores/2GB   | MySQL InnoDB                           | 500              |
| *大型*   | RedHat Enterprise Linux | 4 CPU cores/8GB   | RAID10 MySQL InnoDB 或 PostgreSQL      | >1000            |
| *极大型* | RedHat Enterprise Linux | 8 CPU cores/16GB  | Fast RAID10 MySQL InnoDB 或 PostgreSQL | >10000           |

规模平台CPU/内存数据库受监控的主机数量

软件

Zabbix 是基于先进 Apache Web 服务器、领先的数据库引擎和 PHP 脚本语言构建的。

数据库管理系统

数据库版本备注

|    数据库    |      版本      |                             备注                             |
| :----------: | :------------: | :----------------------------------------------------------: |
|   *MySQL*    | 5.0.3 - 8.0.x  | 使用 MySQL 作为 Zabbix 后端数据库。需要InnoDB引擎。 MariaDB 同样支持。 |
|   *Oracle*   |  10g or later  |             使用 Oracle 作为 Zabbix 后端数据库。             |
| *PostgreSQL* |  8.1 or later  | 使用 PostgreSQL 作为 Zabbix 后端数据库。 建议使用 PostgreSQL 8.3 以上的版本, 以 [提供更好的VACUUM性能](https://www.postgresql.org/docs/8.3/static/release-8-3.html)。 |
|  *IBM DB2*   |  9.7 or later  |              使用 DB2 作为 Zabbix 后端数据库。               |
|   *SQLite*   | 3.3.5 or later | 只有 Zabbix proxy 支持 SQLite ,可以使用 SQLite 作为 Zabbix proxy 数据库。 |

从源码包安装

您可以通过从源代码编译来获取最新版本的 Zabbix。

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

1 安装 Zabbix 守护进程

1.1 下载源代码存档

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

# tar -zxvf zabbix-4.0.0.tar.gz

1.2 创建用户账户

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

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

groupadd zabbix
useradd -g zabbix zabbix

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

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

1.3 创建 Zabbix 数据库

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

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

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

1.4 配置源代码

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

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

./configure --help

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

./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2

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

./configure --enable-server --with-postgresql --with-net-snmp

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

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

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

./configure --enable-agent

1.5 安装

make install

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

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

1.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 识别),同时也要指定数据库的名称、用户和密码(如果使用的话)。

1.7 启动守护进程

在 Zabbix server 端运行 zabbix_server:

 zabbix_server

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

 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 的前端文件到这个目录下(注意替换为实际的目录):

mkdir <htdocs>/zabbix
cd frontends/php
cp -a . <htdocs>/zabbix

如果准备从 SVN 安装英语以外的语言,您必须生成翻译文件。可以运行下列命令:

locale/make_mo.sh

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

安装前端

第一步

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

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

9571eaf14b8b8a5a3e282da65c2f19af.png

第二步

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

ad8974e114f1e9972c85b42a550e5621.png

第三步

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

4591bb004befc3cf5e03dfd8f5958dcb.png

第四步

请输入 Zabbix server 的详细信息。

cc8a76c313f73f2f885eb050ac9e389f.png

第五步

查看设置的摘要。

bac0bf529a64c90aad54962d8ea9b48f.png

第六步

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

684e4a3c72629da9747ffebe19382d09.png

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

第七步

完成安装。

d2fcd2423de536ad813fd8f13fd13618.png

第八步

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

66706f8d0e8e0d6530912518c6ee1153.png

开始使用zabbix

从二进制包安装

从 Zabbix 官方的软件仓库安装

发行包文件可在 repo.zabbix.com 下载。在服务器上也提供了 Yum 和 apt 软件仓库。

添加 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

前端安装的先决条件

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

RHEL 7:

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

安装 Server/proxy/前端

安装 Zabbix server并使用 MySQL 数据库

# yum install zabbix-server-mysql

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

# yum install zabbix-proxy-mysql

安装 Zabbix 前端并使用 MySQL 数据库:

# yum install zabbix-web-mysql

创建数据库

对于 Zabbix server 和 proxy 守护进程而言,数据库是必须的。而运行 Zabbix agent是不需要的。

导入数据

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

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

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

对于 Zabbix proxy,导入初始的数据库 schema:

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

为 Zabbix server/proxy 配置数据库

编辑 zabbix_server.conf 或 zabbix_proxy.conf 文件以使用已创建的数据库。例如:

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

启动 Zabbix server 进程

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

# systemctl enable zabbix-server
# systemctl start zabbix-server

Zabbix 前端配置

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

虽然已经配置了一些 PHP 参数。但是有必要取消 “date.timezone” 注释,并为其设置正确的时区。

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

安装 Agent

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

# yum install zabbix-agent

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

# systemctl start zabbix-agent
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值