[comment]: # translation:outdated

[comment]: # ({02b10f8d-02b10f8d})
# 2 要求

[comment]: # ({/02b10f8d-02b10f8d})

[comment]: # ({80330f65-80330f65})
#### 硬件

[comment]: # ({/80330f65-80330f65})

[comment]: # ({ea3f48c1-4ae00568})
**内存**

Zabbix需要物理内存和磁盘memory。所需磁盘memory的大小显然取决于被监控的主机和参数数量。如果您计划长期保存监控参数的历史数据，应考虑预留至少几GB空间以确保数据库有足够存储历史数据的容量。每个Zabbix守护进程都需要与数据库服务器建立多个连接，连接所分配的memory量取决于数据库引擎的配置。

::: noteclassic
物理memory越多，数据库（进而Zabbix）运行速度越快。

:::

[comment]: # ({/ea3f48c1-4ae00568})

[comment]: # ({f102e6b1-7967309a})
**CPU**

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

[comment]: # ({/f102e6b1-7967309a})

[comment]: # ({ff3b8ce1-1cbee7bf})
**其他硬件**

Zabbix中使用SMS通知支持需要串行通信端口和串行GSM调制解调器。USB转串口转换器也可使用。

[comment]: # ({/ff3b8ce1-1cbee7bf})

[comment]: # ({6fbbfda4-42d1d93e})
#### 硬件配置示例

该表格提供了基于**Linux/BSD/Unix**平台的硬件配置示例。

这些是初始参考的规模与硬件配置示例。每个Zabbix部署环境都具有独特性。
务必在预发布或开发环境中对Zabbix系统进行性能基准测试，
以便在将Zabbix部署至生产环境前充分理解实际需求。

| 部署规模 | 监控指标^**1**^ | CPU/vCPU核心数 | 内存<br>(GiB) | 数据库 | Amazon EC2^**2**^ |
|-|-|-|-|-|-|
| 小型      | 1 000          | 2              | 8             | MySQL Server,<br>Percona Server,<br>mariadb Server,<br>PostgreSQL | m6i.large/m6g.large |
| 中型      | 10 000         | 4              | 16            | MySQL Server,<br>Percona Server,<br>mariadb Server,<br>PostgreSQL | m6i.xlarge/m6g.xlarge |
| 大型      | 100 000        | 16             | 64            | MySQL Server,<br>Percona Server,<br>mariadb Server,<br>PostgreSQL,<br>Oracle | m6i.4xlarge/m6g.4xlarge |
| 超大型    | 1 000 000      | 32             | 96            | MySQL Server,<br>Percona Server,<br>mariadb Server,<br>PostgreSQL,<br>Oracle | m6i.8xlarge/m6g.8xlarge |

^**1**^ 1个指标 = 1个监控项 + 1个触发器 + 1个图形<br>
^**2**^ 以Amazon通用型EC2实例为例（采用ARM64或x86_64架构），在Zabbix部署评估阶段应选择计算型/内存型/存储优化型等合适的实例类型，并通过生产环境前的测试验证。

::: noteclassic
实际配置很大程度上取决于活跃监控项的数量
及刷新频率（详见本页[数据库容量](#database-size)章节）。
对于大型部署，强烈建议将数据库run到独立服务器上。

:::

[comment]: # ({/6fbbfda4-42d1d93e})

[comment]: # ({d172f4ba-ad0c32cf})
#### 支持平台

出于安全要求和监控服务器的关键任务性质
UNIX是唯一能持续提供必要性能、容错能力和
弹性的操作系统。Zabbix运行在市场主流版本上。

Zabbix组件已在以下平台通过测试并可用：

| 平台 | 服务器 | Agent | Agent2 |
|--------|------|-----|------|
| Linux | x      | x     | x      |
| IBM AIX | x      | x     | \-     |
| FreeBSD | x      | x     | \-     |
| NetBSD | x      | x     | \-     |
| OpenBSD | x      | x     | \-     |
| HP-UX | x      | x     | \-     |
| Mac OS X | x      | x     | \-     |
| Solaris | x      | x     | \-     |
| Windows | \-     | x     | x      |

::: noteclassic
Zabbix server/agent也可能在其他类Unix操作系统上运行。
Zabbix agent支持自XP以来所有Windows桌面和服务器版本。\
\
为防止Zabbix agent 2出现严重安全漏洞，其仅使用[受支持的Goversion](#agent-2)进行编译。从Go 1.21开始，[minimum required Windows versions](https://go.dev/wiki/MinimumRequirements#windowswindows)要求提高；因此自Zabbix 6.0.27起，Zabbix agent 2在Windows平台的最低version要求为Windows 10/Server 2016。

:::

::: noteimportant
若编译时启用加密功能，Zabbix将禁用核心转储
若系统不允许禁用核心转储，则Zabbix不会启动。

:::

[comment]: # ({/d172f4ba-ad0c32cf})

[comment]: # ({323b6241-323b6241})
#### 所需软件

Zabbix围绕现代Web服务器、主流数据库引擎和PHP脚本语言构建。

[comment]: # ({/323b6241-323b6241})

[comment]: # ({ad0ba417-fd454df8})
##### 第三方外部配套软件

若标注为必需项，则表示该软件/库是严格必需的。
可选项则用于支持某些特定功能。

| 软件 | 必需状态 | 支持版本 | 备注 |
|--|-|-|------|
| *MySQL/Percona* | One of | 8.0.30-9.0.X       | 当MySQL（或Percona）作为Zabbix后端数据库时必需。需要InnoDB引擎。<br><br>新增支持的MySQL版本：<br>- 8.1（自Zabbix 6.0.21起）；<br>- 8.2（自Zabbix 6.0.26起）；<br>- 8.3（自Zabbix 6.0.27起）；<br>- 8.4（自Zabbix 6.0.32起）；<br>- 9.0（自Zabbix 6.0.33起）。<br><br>建议使用[C API (libmysqlclient)](https://dev.mysql.com/downloads/c-api/)库构建server/proxy。<br><br>对于MySQL 8.0.0-8.0.28版本，另见：[mysqlmariadb可能的死锁](/manual/installation/known_issues#mysqlmariadb可能的死锁)。 |
| *mariadb* | ^ | 10.5.00-12.0.X     | 需要InnoDB引擎。<br><br>推荐的version版本为11.4。<br><br>建议使用[MariaDB Connector/C](https://downloads.mariadb.org/connector-c/)库构建server/proxy。<br><br>新增支持的mariadb版本：<br>- 10.7.X（自Zabbix 6.0.6起）；<br>- 10.8.X（自Zabbix 6.0.7起）；<br>- 10.9.X和10.10.X（自Zabbix 6.0.13起）；<br>- 10.11.X（自Zabbix 6.0.15起）；<br>- 11.0.X（自Zabbix 6.0.21起）；<br>- 11.1.X（自Zabbix 6.0.23起）；<br>- 11.2.X（自Zabbix 6.0.27起）；<br>- 11.3.X（自Zabbix 6.0.29起）；<br>- 11.4.X（自Zabbix 6.0.32起）；<br>- 11.5.X（自Zabbix 6.0.34起）；<br>- 12.0.X（自Zabbix 6.0.42起）。<br><br>另见：[mysqlmariadb可能的死锁](/manual/installation/known_issues#mysqlmariadb可能的死锁)。 |
| *Oracle* | ^ | 19c - 21c          | 当Oracle作为Zabbix后端数据库时必需。 |
| *PostgreSQL* | ^ | 13.0-17.X          | 当PostgreSQL作为Zabbix后端数据库时必需。<br>根据安装规模，可能需要增加PostgreSQL的*work_mem*配置参数（默认值为4MB），以确保数据库为特定操作分配的memory量充足，且query执行不会耗时过长。<br><br>新增支持的PostgreSQL版本：<br>- 15.X（自Zabbix 6.0.10起）；<br>- 16.X（自Zabbix 6.0.23起）；<br>- 17.X（自Zabbix 6.0.36起）。 |
| *TimescaleDB* for PostgreSQL | ^ | 2.1.0-2.21.X       | 当TimescaleDB作为PostgreSQL数据库扩展时必需。请确保安装支持压缩功能的TimescaleDB社区版。<br><br>注意：PostgreSQL 15自TimescaleDB 2.10起支持。<br>也可参考[TimescaleDB documentation](https://docs.tigerdata.com/self-hosted/latest/upgrades/upgrade-pg/)了解PostgreSQL与TimescaleDBversion兼容性的详细信息。<br><br>新增支持的TimescaleDB版本：<br>- 2.6（自Zabbix 6.0.7起）；<br>- 2.7（自Zabbix 6.0.8起）；<br>- 2.8（自Zabbix 6.0.10起）；<br>- 2.9（自Zabbix 6.0.13起）；<br>- 2.10（自Zabbix 6.0.15起）；<br>- 2.11（自Zabbix 6.0.19起）；<br>- 2.12（自Zabbix 6.0.24起）；<br>- 2.13（自Zabbix 6.0.25起）；<br>- 2.14（自Zabbix 6.0.28起）；<br>- 2.15（自Zabbix 6.0.32起）；<br>- 2.16（自Zabbix 6.0.34起）；<br>- 2.17（自Zabbix 6.0.36起）；<br>- 2.18（自Zabbix 6.0.39起）；<br>- 2.19、2.20、2.21（自Zabbix 6.0.41起）。 |
| *SQLite* | Optional | 3.3.5-3.34.X       | SQLite仅支持Zabbix proxies场景。当SQLite作为Zabbix proxy数据库时必需。 |
| *smartmontools* | ^ | 7.1或更高版本       | Zabbix agent 2功能必需。 |
| *who*    | ^ |                    | 用户计数插件必需。 |
| *dpkg*   | ^ |                    | system.sw.packages插件必需。 |
| *pkgtool* | ^ |                    | system.sw.packages插件必需。 |
| *rpm*    | ^ |                    | system.sw.packages插件必需。 |
| *pacman* | ^ |                    | system.sw.packages插件必需。 |

::: noteclassic
 尽管Zabbix可以使用操作系统自带的数据库，
但为了获得最佳体验，我们建议使用从数据库开发者官方仓库安装的数据库。

:::

[comment]: # ({/ad0ba417-fd454df8})

[comment]: # ({d215317c-75f0586e})
##### 前端

Zabbix前端支持的最小屏幕宽度为1200px。

若标注为必需项，则表示该软件/库为严格必要组件。
可选组件用于支持某些特定功能。

| 软件 | 必需状态 | 版本 | 备注 |
|--|-|-|------|
| *Apache* | One of | 2.4或更高 |          |
| *nginx* | ^ | 1.20或更高 |          |
| *PHP*    | Yes | 7.2.5或更高，8.0-8.3 | 建议使用PHP 7.4或更高版本。<br><br>新增支持的PHP版本：<br>- 8.0和8.1自Zabbix 6.0.6起；<br>- 8.2自Zabbix 6.0.14起；<br>- 8.3自Zabbix 6.0.26起。 |
| PHP扩展: | < | <       | <        |
| *gd*     | Yes | 2.0.28或更高 | PHP GD扩展必须支持PNG图像(*--with-png-dir*)、JPEG(*--with-jpeg-dir*)图像和FreeType 2(*--with-freetype-dir*)。<br>为避免某些前端语言可能出现的[文本重叠](/manual/installation/known_issues#文本重叠)，可能需要2.3.0或更高版本。 |
| *bcmath* | ^ |         | php-bcmath(*--enable-bcmath*) |
| *ctype*  | ^ |         | php-ctype(*--enable-ctype*) |
| *libXML* | ^ | 2.6.15或更高 | php-xml（若由发行版作为独立包提供）。 |
| *xmlreader* | ^ |         | php-xmlreader（若由发行版作为独立包提供）。 |
| *xmlwriter* | ^ |         | php-xmlwriter（若由发行版作为独立包提供）。 |
| *session* | ^ |         | php-session（若由发行版作为独立包提供）。 |
| *sockets* | ^ |         | php-net-socket(*--enable-sockets*)。用户脚本支持所需。 |
| *mbstring* | ^ |         | php-mbstring(*--enable-mbstring*) |
| *gettext* | ^ |         | php-gettext(*--with-gettext*)。翻译功能所需。 |
| *ldap*   | No |         | php-ldap。仅当前端使用LDAP认证时需要。 |
| *openssl* | ^ |         | php-openssl。仅当前端使用SAML认证时需要。 |
| *mysqli* | ^ |         | 当MySQL作为Zabbix后端数据库时必需。 |
| *oci8*   | ^ |         | 当Oracle作为Zabbix后端数据库时必需。 |
| *pgsql*  | ^ |         | 当PostgreSQL作为Zabbix后端数据库时必需。 |

Zabbix自带的第三方前端库：

| 库 | 必需状态 | 最低version | 备注 |
|--|-|-|------|
| [jQuery JavaScript Library](https://jquery.com/) | Yes | 3.6.0                   | 简化跨浏览器开发流程的JavaScript库。 |
| [jQuery UI](https://jqueryui.com/) | ^ | 1.12.1                  | 基于Top构建的用户界面交互、效果、部件和主题集合。 |
| [SAML PHP Toolkit](https://github.com/onelogin/php-saml) | ^ | 3.4.1                   | 支持SAML 2.0认证登录Zabbix的PHP工具包。 |
| [Symfony Yaml Component](https://symfony.com/doc/current/components/yaml.html) | ^ | 5.1.0                   | 为YAML格式的export和import配置元素提供支持。 |

::: noteclassic
Zabbix也可运行于更早版本的Apache、MySQL、
Oracle和PostgreSQL。

:::

::: noteimportant
对于非默认的DejaVu字体，可能需要PHP函数
[imagerotate](http://php.net/manual/en/function.imagerotate.php)。
若缺失该函数，图表显示时这些字体可能渲染异常。
此函数仅在PHP编译时启用捆绑GD的情况下可用（Debian等发行版默认不启用）。

:::

用于编写和调试Zabbix前端代码的第三方库：

| 库 | 必需状态 | 最低version | 描述 |
|--|-|-|------|
| [Composer](https://getcomposer.org/) | No | 2.4.1                   | PHP应用级包管理器，提供管理PHP软件依赖关系的标准格式。 |
| [PHPUnit](https://phpunit.de/) | ^ | 8.5.29                  | 用于测试Zabbix前端的PHP单元测试框架。 |
| [SASS](https://sass-lang.com/) | ^ | 3.4.22                  | 可编译为层叠样式表(CSS)的预处理脚本语言。 |

[comment]: # ({/d215317c-75f0586e})

[comment]: # ({dda86afe-dda86afe})
##### 客户端网页浏览器

必须启用Cookies和JavaScript。

支持最新稳定版本的Google Chrome、Mozilla Firefox、Microsoft Edge、Apple Safari和Opera。

::: notewarning
已实现IFrame的同源策略，这意味着Zabbix不能被放置在不同域的框架中。\
\
尽管如此，如果放置在框架中的页面与Zabbix前端位于同一域，则放入Zabbix框架的页面将能够访问Zabbix前端（通过JavaScript）。例如，像`http://secure-zabbix.com/cms/page.html`这样的页面，如果放置在`http://secure-zabbix.com/zabbix/`的仪表板中，将拥有对Zabbix的完整JavaScript访问权限。

:::

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

[comment]: # ({e190682b-096d332c})
##### Server/proxy

若标注为必选，则该软件/库为严格必需项。
可选项目用于支持某些特定功能。

| 需求项 | 必选状态 | 描述 |
|--|-|-------|
| *libpcre/libpcre2* | One of | 支持[Perl Compatible Regular Expression](https://en.wikipedia.org/wiki/Perl_Compatible_Regular_Expressions) (PCRE)需要PCRE/PCRE2库。<br>不同GNU/Linux发行版可能命名不同，例如'libpcre3'或'libpcre1'。支持PCRE v8.x及PCRE2 v10.x（自Zabbix 6.0.0起）。 |
| *libevent*  | Yes | 进程间通信必需。需1.4或更高版本。 |
| *libpthread* | ^ | 互斥锁和读写锁支持必需（可能包含在libc中）。 |
| *libresolv* | ^ | DNS解析必需（可能包含在libc中）。 |
| *libiconv*  | ^ | 文本编码/格式转换必需（可能包含在libc中）。Linux平台Zabbix server强制需要。 |
| *libz*      | ^ | 压缩功能支持必需。 |
| *libm*      | ^ | 数学库。仅Zabbix server需要。 |
| *libmysqlclient* | One of | 使用MySQL时必需。 |
| *libmariadb* | ^ | 使用mariadb时必需。 |
| *libclntsh* | ^ | 使用Oracle时必需；*libclntsh* version必须等于或高于所用Oracle数据库的version。 |
| *libpq5*    | ^ | 使用PostgreSQL时必需；*libpq5* version必须等于或高于所用PostgreSQL数据库的version。 |
| *libsqlite3* | ^ | 使用Sqlite时必需。仅Zabbix proxy需要。 |
| *libOpenIPMI* | No | IPMI支持必需。仅Zabbix server需要。 |
| *libssh2* 或 *libssh* | ^ | [概述](/manual/config/items/itemtypes/ssh_checks#概述)必需。需1.0或更高版本（libssh2）；0.6.0或更高（libssh）。<br>自Zabbix 4.4.6起支持libssh。 |
| *libcurl*   | ^ | Web监控、VMware监控、SMTP认证、`web.page.*` Zabbix agent [items](/manual/config/items/itemtypes/zabbix_agent)、HTTP agent 监控项及Elasticsearch（如使用）必需。推荐7.28.0或更高版本。<br>Libcurl version要求：<br>- SMTP认证：需version 7.20.0或更高<br>- Elasticsearch：需version 7.28.0或更高 |
| *libxml2*   | ^ | VMware监控及XML XPath预处理必需。 |
| *net-snmp*  | ^ | SNMP支持必需。需5.3.0或更高版本。<br>强加密协议（AES192/AES192C, AES256/AES256C）支持需net-snmp库5.8+；基于RHEL 8+的系统推荐使用net-snmp 5.8.15或更高。 |
| *libunixodbc* | ^ | 数据库监控必需。 |
| *libgnutls* 或 *libopenssl* | ^ | 使用[编译带加密支持的zabbix](/manual/encryption#编译带加密支持的zabbix)时必需。<br>最低版本：*libgnutls* - 3.1.18，*libopenssl* - 1.0.1 |
| *libldap*   | ^ | LDAP支持必需。 |
| *fping*     | ^ | [icmp-ping-检测](/manual/config/items/itemtypes/simple_checks#icmp-ping-检测)必需。 |

[comment]: # ({/e190682b-096d332c})

[comment]: # ({428d9730-800c8308})
##### Agent

| 需求 | 强制状态 | 描述 |
|--|-|-------|
| *libpcre/libpcre2* | One of | PCRE/PCRE2库是[Perl Compatible Regular Expression](https://en.wikipedia.org/wiki/Perl_Compatible_Regular_Expressions) (PCRE)支持所必需的。<br>命名可能因GNU/Linux发行版而异，例如'libpcre3'或'libpcre1'。支持PCRE v8.x和PCRE2 v10.x（从Zabbix 6.0.0开始）。<br>日志监控需要。Windows平台同样需要。 |
| *libpthread* | Yes | 互斥锁和读写锁支持所需（可能是libc的一部分）。Windows平台不需要。 |
| *libresolv* | ^ | DNS解析所需（可能是libc的一部分）。Windows平台不需要。 |
| *libiconv*  | ^ | 日志监控项、file内容、file正则表达式和regmatch 监控项中文本编码/格式转换为UTF-8所需（可能是libc的一部分）。Windows平台不需要。 |
| *libgnutls* 或 *libopenssl* | No | 使用[编译带加密支持的zabbix](/manual/encryption#编译带加密支持的zabbix)时必需。<br>最低版本：*libgnutls* - 3.1.18，*libopenssl* - 1.0.1<br>Microsoft Windows需要OpenSSL 1.1.1或更高版本。 |
| *libldap*   | ^ | 使用LDAP时必需。Windows平台不支持。 |
| *libcurl*   | ^ | `web.page.*` Zabbix agent [items](/manual/config/items/itemtypes/zabbix_agent)所需。Windows平台不支持。<br>建议版本7.28.0或更高。 |
| *libmodbus* | ^ | 仅在使用Modbus监控时需要。<br>版本3.0或更高。 |

::: noteclassic
 从version 5.0.3开始，Zabbix agent将无法在
AIX平台版本低于6.1 TL07 / AIX 7.1 TL01的系统上运行。

:::

[comment]: # ({/428d9730-800c8308})

[comment]: # ({7ae16df7-4aa86212})
##### Agent 2

| 需求 | 强制状态 | 描述 |
|--|-|-------|
| *Go*        | Yes | 从源码构建Zabbix agent 2及其插件所需.<br>支持Go 1.23或更高版本. 安装说明参见[go.dev](https://go.dev/doc/install).<br>Zabbix agent 2及其插件使用的Go库列在Zabbix Git仓库中(仓库中标记为`indirect`的库是其他必需库的依赖项):<br>- [Zabbix agent 2](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/src/go/go.mod?at=refs%2Fheads%2Frelease%2F6.0)<br>- [Plugin support](https://git.zabbix.com/projects/AP/repos/plugin-support/browse/go.mod?at=refs%2Fheads%2Frelease%2F6.0)<br>- [PostgreSQL](https://git.zabbix.com/projects/AP/repos/postgresql/browse/go.mod?at=refs%2Fheads%2Frelease%2F6.0)<br>- [MongoDB](https://git.zabbix.com/projects/AP/repos/mongodb/browse/go.mod?at=refs%2Fheads%2Frelease%2F6.0)<br>- [MSSQL](https://git.zabbix.com/projects/AP/repos/mssql/browse/go.mod?at=refs%2Fheads%2Frelease%2F6.0)<br>- [Ember+](https://git.zabbix.com/projects/AP/repos/ember-plus/browse/go.mod?at=refs%2Fheads%2Frelease%2F6.0) |
| *libpcre/libpcre2* | One of | PCRE/PCRE2库为[Perl Compatible Regular Expression](https://en.wikipedia.org/wiki/Perl_Compatible_Regular_Expressions)(PCRE)支持所需.<br>命名可能因GNU/Linux发行版而异,例如'libpcre3'或'libpcre1'. 支持PCRE v8.x和PCRE2 v10.x(从Zabbix 6.0.0开始).<br>日志监控所需. Windows系统同样需要. |
| *libopenssl* | No | 使用加密时所需.<br>UNIX平台需要OpenSSL 1.0.1或更高版本.<br>OpenSSL库必须启用PSK支持. 不支持LibreSSL.<br>Microsoft Windows系统需要OpenSSL 1.1.1或更高版本. |

[comment]: # ({/7ae16df7-4aa86212})

[comment]: # ({08762b0a-149075a3})
##### Java网关

如果您从源代码仓库或归档文件获取Zabbix
则所需依赖项已包含在源代码树中

如果您从发行版的软件包获取Zabbix
则所需依赖项已由打包系统提供

上述两种情况下 软件已准备就绪 无需额外下载

但如果您希望提供这些依赖项的自定义版本
(例如为某个Linux发行版准备软件包)
以下是已知与Java网关兼容的库版本列表
Zabbix也可能支持这些库的其他版本

下表列出了当前Java网关原始代码中捆绑的JAR文件:

| 库文件 | 必需状态 | 说明 |
|--|-|-------|
| [android-json](https://mvnrepository.com/artifact/com.vaadin.external.google/android-json) | Yes | 需要4.3r1或更高版本<br>JSON(JavaScript object表示法)是一种轻量级数据交换格式 这是从Android SDK提取的org.json兼容实现 |
| [logback-classic](https://mvnrepository.com/artifact/ch.qos.logback/logback-classic) | ^ | 需要1.5.16或更高版本 |
| [logback-core](https://mvnrepository.com/artifact/ch.qos.logback/logback-core) | ^ | 需要1.5.16或更高版本 |
| [slf4j-api](https://mvnrepository.com/artifact/org.slf4j/slf4j-api) | ^ | 需要2.0.16或更高版本 |

Java网关可使用Oracle Java或开源OpenJDK(version 1.6或更新版本)构建
Zabbix提供的软件包使用OpenJDK编译
下表列出了各发行版用于构建Zabbix软件包的OpenJDK包:

| 发行版 | OpenJDK软件包 |
|---|--------|
| Debian 12    | `default-jdk-headless` (amd64, arm64: 2:1.17-74) |
| Debian 11    | `default-jdk-headless` (amd64: 2:1.11-72) |
| Debian 10    | `default-jdk-headless` (amd64, i386: 2:1.11-71) |
| OpenSUSE Leap 15 | `java-17-openjdk-devel` (amd64: 17.0.5.0-150400.3.9.3; arm64: 17.0.8.0-150400.3.27.1) |
| Oracle Linux 9 | `java-11-openjdk-devel` (amd64: 11.0.19.0.7-4.0.1; arm64: 11.0.20.0.8-2.0.1) |
| Oracle Linux 8 | `java-1.8.0-openjdk-devel` (amd64: 1.8.0.372.b07-4.0.1); `java-11-openjdk-devel` (arm64: 11.0.20.0.8-3.0.1) |
| Oracle Linux 7 | `java-1.8.0-openjdk-devel` (amd64: 1.8.0.282.b08-1) |
| Raspberry Pi OS 12 | `default-jdk-headless` (arm64, armhf: 2:1.17-74) |
| Raspberry Pi OS 11 | `default-jdk-headless` (arm64: 2:1.11-72; armhf: 2:1.11-72+b4) |
| Raspberry Pi OS 10 | `default-jdk` (armhf: 2:1.11-71+b2) |
| RHEL 9       | `java-11-openjdk-devel` (amd64: 11.0.19.0.7-4; arm64: 11.0.20.0.8-3) |
| RHEL 8       | `java-1.8.0-openjdk-devel` (amd64: 1.8.0.372.b07-4; arm64: 1.8.0.382.b05-2) |
| RHEL 7       | `java-1.8.0-openjdk-devel` (amd64: 1.8.0.282.b08-1) |
| SLES 15      | `java-17-openjdk-devel` (amd64: 17.0.5.0-150400.3.9.3; arm64: 17.0.8.0-150400.3.27.1) |
| SLES 12      | `java-1_8_0-openjdk-devel` (amd64: 1.8.0.252-27.45.6) |
| Ubuntu 24.04 | `default-jdk-headless` (amd64, arm64: 2:1.21-75+exp1) |
| Ubuntu 22.04 | `default-jdk-headless` (amd64, arm64: 2:1.11-72build2) |
| Ubuntu 20.04 | `default-jdk-headless` (amd64, arm64: 2:1.11-72) |
| Ubuntu 18.04 | `default-jdk` (amd64: 2:1.11-68ubuntu1~18.04.1; i386: 2:1.10-63ubuntu1~02) |

[comment]: # ({/08762b0a-149075a3})

[comment]: # ({cb45070b-2d908468})


#### 默认端口号

以下为默认配置下各组件开放的端口列表:

| Zabbix组件 | 端口号 | 协议 | 连接类型 |
|-------|-------|-------|-------|
| Zabbix agent  | 10050       | TCP      | on demand   |
| Zabbix agent 2  | 10050       | TCP      | on demand   |
| Zabbix server  | 10051       | TCP      | on demand   |
| Zabbix proxy  | 10051       | TCP      | on demand   |
| Zabbix Java网关 | 10052       | TCP      | on demand   |
| Zabbix网页服务 | 10053       | TCP      | on demand   |
| Zabbix前端  | 80          | HTTP     | on demand   |
| ^                | 443         | HTTPS    | on demand   |
| Zabbix trapper   | 10051       | TCP      | on demand   |

::: noteclassic
需在防火墙中开放这些端口以启用Zabbix通信。通常出站TCP连接不需要显式的防火墙设置。

:::

[comment]: # ({/cb45070b-2d908468})

[comment]: # ({f4ded9e1-1d73b238})
#### 数据库大小

Zabbix配置数据需要固定的磁盘空间且不会
增长不多。

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

- 每秒处理值的数量

这是Zabbix server每秒接收的新值的平均数量。
例如，如果您有3000个监控项需要监控，且刷新率为60秒，
每秒数值的计算公式为3000/60 = **50**.
这意味着每秒有50个新值被添加到Zabbix数据库中。

-  历史数据的Housekeeper设置

Zabbix会在固定时间段内保留数值，通常为几周
数月。每个新值都需要占用一定量的磁盘空间
数据和索引

因此，如果您希望保留30天的历史数据，并且每秒接收50个值，那么总数值量大约为
(**30**\*24\*3600)\* **50** = 129.600.000，约等于1.3亿个数值。

根据所使用的数据库引擎类型及接收到的数值类型（浮点数、整数、字符串、日志文件等）
存储单个值所需的磁盘空间可能从40字节到数百字节不等。
通常每个数值型监控项^**2**^的值约为90字节。

在这种情况下，意味着1.3亿个值将需要1.3亿 * 90字节 = **10.9GB**的磁盘空间。

::: noteclassic
文本/日志监控项值的大小无法精确预测，但每个值预计约为500字节。

:::

- 趋势数据的Housekeeper设置

Zabbix在**trends**表中为每个监控项保留1小时的最大值/最小值/平均值/计数值数据集。
该数据用于趋势分析和长期图表展示。1小时的时间周期不可自定义。

根据数据库类型的不同，Zabbix数据库每个总计值大约需要90字节的存储空间。

假设您希望保留5年的趋势数据。
3000个监控项的数值每年将需要3000\*24\*365\* **90** = **2.2GB**的存储空间，5年则需**11GB**。

-  事件管理器的Housekeeper设置

每个Zabbix事件大约需要250字节的磁盘空间^**1**^。

很难估计Zabbix每天生成的事件数量
在最坏的情况下，可以假设Zabbix每秒生成一个事件。
对于每个恢复的事件，都会创建一个`event_recovery`记录。通常，
大多数事件将被恢复。因此，您可以假设每个事件对应一条`event_recovery`记录。
这意味着每个事件额外增加80字节。

可选地，事件可以带有标签，每个标签记录大约需要100字节的磁盘空间^**1**^。
每个事件的标签数量(\#tags)取决于配置。

因此，每个都需要额外的\#tags \* 100字节磁盘空间。

这意味着如果您想保留3年的事件数据，将需要3\*365\*24\*3600\* (250+80+\#tags\*100) = **\~30GB**+\#tags\*100B的磁盘空间
space^**2**^.

::: noteclassic

^**1**^ 更多关于包含非ASCII字符的事件名称、标签和值的情况。
^**2**^ 容量估算基于MySQL数据库，其他数据库可能存在差异。

:::

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

| 参数 | 所需磁盘空间计算公式（字节） |
|---------|------------------------------------------|
| *Zabbix configuration* | 固定大小。通常为10MB或更小。         |
| *History* | 天数\*(监控项/刷新频率)\*24\*3600\*字节数<br>监控项 : 监控项数量<br>天数 : 历史数据保留天数<br>刷新频率 : 监控项的平均刷新频率<br>字节数 : 存储单个值所需的字节数，取决于数据库引擎，通常约90字节。 |
| *Trends* | 天数\*(监控项/3600)\*24\*3600\*字节数<br>监控项 : 监控项的数量<br>天数 : 历史数据保留天数<br>字节数 : 存储单个趋势数据所需的字节数，取决于数据库引擎，通常约90字节。 |
| *Events* | 天数\*事件数\*24\*3600\*字节数<br>事件数: 每秒事件数量。最坏情况下每秒1个事件。<br>天数: 历史数据保留天数<br>字节数: 单条趋势数据存储所需字节数，取决于数据库引擎，通常约330字节 + 每个事件的平均标签数 \* 100字节。 |

因此，所需的总磁盘空间可以计算为：
**配置 + 历史 + 趋势 + 事件**
Zabbix安装后不会立即使用磁盘空间
数据库大小会增长，然后会在某个时刻停止增长
取决于管家设置。

[comment]: # ({/f4ded9e1-1d73b238})

[comment]: # ({520ea0fa-520ea0fa})
#### 时间同步

在运行Zabbix的服务器上保持精确的系统时间非常重要。[ntpd](http://www.ntp.org/)是最流行的守护进程，用于将主机的时间与其他机器同步。强烈建议在所有运行Zabbix组件的系统上保持同步的系统时间。

[comment]: # ({/520ea0fa-520ea0fa})
