Zabbix的安装对硬软件的要求

硬件


内存和磁盘

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

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

提示:您拥有的物理内存越多,数据库(以及 Zabbix )的工作速度就越快!

CPU

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

其他硬件

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

硬件资源配置参考

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

规模平 CPU 内存数据库 受控制的主机数量
小型C ntOS V rtual Appliance M SQL InnoDB 1 0
中型C ntOS 2 CPU cores/2GB M SQL InnoDB 5 0
大型R dHat Enterprise Linux 4 CPU cores/8GB R ID10 MySQLInnoDB或PostgreSQL&g ;1000
极大型Re Hat Enterprise Linux 8 PU cores/16GB Fa t RAID10 MySQL InnoDB或PostgreSQL&gt 10000

 

提示:实际上,Zabbix 环境的配置非常依赖于监控项(主动)和更新间隔。 如果是进行大规模部署,强烈建议将数据库独立部署。

受支持的平台

由于服务器操作的安全性要求和任务关键性,UNIX 是唯一能够始终如一地提供必要性能、容错和弹性的操作系统。 Zabbix以市场主流的操作系统版本运行。

经测试,Zabbix 可以运行在下列平台:

  • Linux
  • IBM AIX
  • FreeBSD
  • NetBSD
  • OpenBSD
  • HP-UX
  • Mac OS X
  • Solaris
  • Windows:自 XP 以来的所有桌面和服务器版本(仅限 Zabbix agent)

提示:Zabbix 可以在其他类 Unix 操作系统上运行。

注意: 如果使用加密编译,Zabbix将禁用核心转储(Core dumps),如果系统不允许禁用核心转储,则 Zabbix 不会启动。

软件

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后端数据。建议使用PostgreSQL8.3以上的版本,以提供更好的VACUUM性能。
IBM DB2 9.7 or later 使用DB2作为Zabbix后端数据库。
SQLite 3.3.5 or later 只有Zabbix proxy支持SQLite,可以使用SQLite作为Zabbix proxy数据库。

注意:值得注意的是,对于 IBM DB2 的支持是实验性的!

前端

Zabbix前端需要使用下列软件:

Zabbix的安装对硬软件的要求

Zabbix 也许可以在以前的Apache、MySQL、Oracle 和 PostgreSQL 版本上运行。

注意:值得注意的是,如果需要使用默认 DejaVu 以外的字体, 可能会需要 PHP 的 imagerotate 函数。如果缺少,则在 Zabbix 前端查看图形时显示异常。该函数只有在使用捆绑的 GD 库编译 PHP 时才可用。在 Debian 和某些发行版本中,这个问题不存在。

客户端浏览器

浏览器必须启用 Cookies 和 Java Script 。

支持最新版本的 Google、Mozilla Firefox、Microsoft Internet Explorer 和 Opero。其他浏览器(Apple Safari、Konqueror)也许会支持。

 

注意:值得注意的,为了执行 IFrame 的“同源政策”,意味着 Zabbix 不能放在不同域的 frames 中。

但是,如果放置在 frames 中的页面和 Zabbix 前端位于同一个域中,则置于 Zabbix frames 中的页面将可以访问 Zabbix 前端(通过JavaScript)。像 http://secure-zabbix.com/cms/page.html 这样的页面,如果置于 http://secure-zabbix.com/zabbix/ 的聚合图形或仪表盘上,将拥有对 Zabbix 的完整 JS 访问权限。

服务器

强制性要求总是需要的。支持特定功能需要可选需求。

Zabbix的安装对硬软件的要求

Java 网关 

如果从源码存储库或归档中获取 Zabbix,则在源代码树中已包含必需的依赖关系。

如果从发行包中获取 Zabbix ,则封装系统里已提供了必要的依赖关系。

在上述两种情况下,即可准备部署软件了,而不需要下载额外的依赖包。

但是,如果您希望提供这些依赖关系的版本(例如,如果您正在为某些 Linux 发行版准备软件包),则下面是 Java gateway 已知可以使用的库的版本列表。 Zabbix 也许可以与这些库的其他版本一起使用。

下表列出了原始代码中当前与 Java gateway 捆绑在一起的 JAR 文件:

可网站 备注
logback-core-0.9.27.jar EPL 1.0, LGPL 2.1 Logback Home 0.9.27、1.0.13 和 1.1.1 测试通过。
logback-classic-0.9.27.jar EPL 1.0, LGPL 2.1 Logback Home 0.9.27、1.0.13 和 1.1.1 测试通过。
slf4j-api-1.6.1.jar MIT License SLF4J 1.6.1、1.6.6 和 1.7.6 测试通过
android-json-4.3_r3.1.jar Apache License 2.0 https://android.googlesource.com/platform/libcore/+/master/json 2.3.3_r1.1 和 4.3_r3.1 测试通过。关于创建 JAR 文件,详见 src/zabbix_java/lib/README 说明。

Java gateway 使用 Java 1.6 及更高版本编译和运行。 如需要对 Java gateway 预编译版本进行编译,建议使用Java 1.6进行编译,直到最新版本。

数据库容量

Zabbix 配置文件数据需要固定数量的磁盘空间,且增长不大。

Zabbix 数据库大小主要取决于这些变量,这些变量决定了存储的历史数据量:

  • 每秒处理值的数量

这是 Zabbix server 每秒接收的新值的平均数。 例如,如果有3000个监控项用于监控,取值间隔为60秒,则这个值的数量计算为 3000/60 = ** 50 **。

这意味着每秒有 50 个新值被添加到 Zabbix 数据库中。

  • 关于历史数据的管家设置

Zabbix 将接收到的值保存一段固定的时间,通常为几周或几个月。 每个新值都需要一定量的磁盘空间用于数据和索引。

所以,如果我们每秒收到 50 个值,且希望保留 30 天的历史数据,值的总数将大约在 (30*24*3600)* 50 = 129.600.000,即大约 130M 个值。

根据所使用的数据库引擎,接收值的类型(浮点数、整数、字符串、日志文件等),单个值的磁盘空间可能在 40 字节到数百字节之间变化。 通常,数值类型的每个值大约为 90 个字节。

在上面的例子中,这意味着 130M 个值需要占用 130M * 90 bytes = 10.9GB 磁盘空间。

提示:文本和日志类型的监控项值的大小是无法确定的,但可以以每个值大约 500 字节来计算。

  • 趋势数据的管家设置

Zabbix 为表 trends 中的每个项目保留1小时的最大值 / 最小值 / 平均值 / 统计值。 该数据用于趋势图形和历史数据图形。 这一个小时的时间段是无法自定义。

Zabbix数据库,根据数据库类型,每个值总共需要大约90个字节。

假设我们希望将趋势数据保持5年。 3000 个监控项的值每年需要占用 3000*24*365* 90 = 2.2GB 空间,或者5年需要占用 11GB 空间。

  • 事件的管家设置

每个 Zabbix 事件需要大约 170 个字节的磁盘空间。 很难估计 Zabbix 每天生成的事件数量。 在最坏的情况下,假设 Zabbix 每秒生成一个事件。

这意味着如果想要保留3年的事件,这将需要占用 3*365*24*3600* 170 = 15GB 的空间。

下表包含可用于计算 Zabbix 系统所需磁盘空间的公式:

Zabbix的安装对硬软件的要求

提示:根据使用 MySQL 后端数据库的实际统计数据中收集到的平均值,例如监控项为数值类型的值约 90 个字节,事件约 170 个字节。

 

因此,所需要的磁盘总空间按下列方法计算:

配置文件数据+ 历史数据+ 趋势数据+ 事件数据

在安装 Zabbix 后不会立即使用磁盘空间。 数据库大小取决于管家设置,在某些时间点增长或停止增长。

时间同步

在运行 Zabbix 的服务器上拥有精确的系统日期非常重要。 ntpd 是最受欢迎的守护进程,它将主机的时间与其他服务器的时间同步。 对于所有运行 Zabbix 组件的系统,强烈建议这些系统的时间保持同步。

如果时间未同步,Zabbix将在建立数据连接之后,根据得到的客户端和服务器的时间戳,并通过客户端和服务器的时间差对获得值的时间戳进行调整,将获得值的时间戳转化为 Zabbix server 的时间。 为了尽可能简化并且避免可能的并发问题出现,网络延迟将会被忽略。因此,通过主动连接(active agent, active proxy, sender)获得的时间戳数据将包含网络延迟,通过被动连接(passive proxy)获得的数据已经减去了网络延迟。所有其他监控类型都在服务器时间里完成,并且不会调整其时间戳。

 

本文转载自Zabbix官方文档:https://www.zabbix.com/documentation/5.2/zh/manual/installation/requirements

上一篇:拦截器配置


下一篇:css3实现毛玻璃效果