Zabbix的安装对硬软件的要求

硬件


内存和磁盘

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

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

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

CPU

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

其他硬件

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

硬件资源配置参考

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

规模平CPU内存数据库受控制的主机数量
小型CntOS Vrtual Appliance MSQL InnoDB 10
中型CntOS 2CPU cores/2GB MSQL InnoDB 50
大型RdHat Enterprise Linux 4CPU cores/8GB RID10 MySQLInnoDB或PostgreSQL&g;1000
极大型ReHat Enterprise Linux 8PU cores/16GB Fat RAID10 MySQL InnoDB或PostgreSQL&gt10000

提示:实际上,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 脚本语言构建的。

数据库管理系统

数据库版本备注
MySQL5.0.3-8.0.x使用MySQL作为Zabbix后端数据库。需要InnoDB引擎。MariaDB同样支持。
Oracle10g or later使用Oracle作为Zabbix后端数据库。
PostgreSQL8.1 or later使用PostgreSQL作为Zabbix后端数据。建议使用PostgreSQL8.3以上的版本,以提供更好的VACUUM性能。
IBM DB29.7 or later使用DB2作为Zabbix后端数据库。
SQLite3.3.5 or later只有Zabbix proxy支持SQLite,可以使用SQLite作为Zabbix proxy数据库。

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

前端

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 访问权限。

服务器

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

Java 网关 

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

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

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

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

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

可网站备注
logback-core-0.9.27.jarEPL 1.0, LGPL 2.1Logback Home0.9.27、1.0.13 和 1.1.1 测试通过。
logback-classic-0.9.27.jarEPL 1.0, LGPL 2.1Logback Home0.9.27、1.0.13 和 1.1.1 测试通过。
slf4j-api-1.6.1.jarMIT LicenseSLF4J1.6.1、1.6.6 和 1.7.6 测试通过
android-json-4.3_r3.1.jarApache License 2.0https://android.googlesource.com/platform/libcore/+/master/json2.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 系统所需磁盘空间的公式:

 

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

 

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

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

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

时间同步

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

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值