> For the complete documentation index, see [llms.txt](https://library.zoom.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://library.zoom.com/technical-library/zh/gao-ji-qi-ye-fu-wu/zoom-node/zoom-node-deployment-field-guide/zoom-node-deployment-considerations.md).

# Zoom Node 部署注意事项

详细了解各种部署示例如何支持 Zoom Node 和 Zoom Node 服务模块

本节包含多个示例，展示 Zoom Node 如何支持各种服务模块，例如 Zoom Meetings Hybrid 和 Zoom Phone Local Survivability（ZPLS）。使用专用 IP 地址的典型部署可能如下图组所示。

在 Zoom Node 上部署的每项服务都需要唯一的 IP 地址。如果该节点已为管理分配了一个特定地址，并且为节点上部署的每项服务（最多四项）各分配一个地址，则 Zoom Node 最多可分配五（5）个 IP 地址。运行单一服务（例如 ZPLS）的 Zoom Node，如果节点和服务被分配共享同一个 IP 地址，则可使用单个 IP 地址部署。

下方展示了几种部署选项。请注意各部署选项中的 IP 数量和证书（CN/SANs）数量。

### <mark style="color:蓝色;">选项 1：使用专用 IP 和主机名部署的 Zoom Meetings Hybrid</mark>

<figure><img src="https://2325962437-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FctBXUMeBy4rtLMmMkKRG%2Fuploads%2Fgit-blob-184792dfe5a78f13dbe0a8f67651f064fe826f21%2Fimage.png?alt=media" alt=""><figcaption></figcaption></figure>

上图总结了部署所需的 IP 和证书配置要求 **Zoom Meetings Hybrid** 在本地或混合云环境中。

下表细分了示例节点，并包括其有效代理和 MMR 服务模块：

| 组件         | 主机名                  | TLS 证书 角色   | 功能      |
| ---------- | -------------------- | ----------- | ------- |
| Node 操作系统  | `node1.customer.com` | 通用名称（CN）    | 核心编排    |
| Zoom 连接器代理 | `zcp1.customer.com`  | 主题备用名称（SAN） | 信令和会议控制 |
| 媒体模块路由器 1  | `mmr1.customer.com`  | 主题备用名称（SAN） | 媒体路由和处理 |
| 媒体模块路由器 2  | `mmr2.customer.com`  | 主题备用名称（SAN） | 媒体路由和处理 |
| 媒体模块路由器 3  | `mmr3.customer.com`  | 主题备用名称（SAN） | 媒体路由和处理 |

{% hint style="info" %}
您必须为每个模块分配一个专用静态 IP 地址。所需 IP 地址总数：五（5）
{% endhint %}

<figure><img src="https://2325962437-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FctBXUMeBy4rtLMmMkKRG%2Fuploads%2Fgit-blob-2edb7c64b83b0edaaf03d291a85d819051a8da00%2Fimage.png?alt=media" alt=""><figcaption></figcaption></figure>

上图概述了部署所需的最低配置 **Zoom Phone 本地生存能力 (ZPLS)**。ZPLS 通过在 Zoom Node 虚拟机上本地运行存活逻辑，在互联网或云中断的事件 & 活动 &直播情况下，确保电话服务持续可用。

必须在 DNS 中配置以下主机名，并将其包含在 TLS 证书中：

* `node1.customer.com`
* `zplsl.customer.com`

**主机名功能映射**

| 组件        | 主机名                  | TLS 证书 角色 | 功能                |
| --------- | -------------------- | --------- | ----------------- |
| Node 操作系统 | `node1.customer.com` | 通用名称（CN）  | 核心编排              |
| ZPLS 模块   | `zplsl.customer.com` | 主题备用名称    | Zoom Phone 本地存活逻辑 |

**TLS 证书配置**

| 字段       | 值                    |
| -------- | -------------------- |
| 通用名称（CN） | `node1.customer.com` |
| 主题备用名称   | `zplsl.customer.com` |

必须生成或获取证书（公共或私有 CA），以同时包含上述列出的 CN 和 SANs。这样可确保对安全的模块内通信进行正确的 TLS 验证。

**IP 地址要求**

| 指标           | 值 / 描述                                   |
| ------------ | ---------------------------------------- |
| 所需 IP 地址总数   | 5（通用分配）                                  |
| 在 ZPLS 场景中使用 | 2 个 IP 地址（1 个用于 Node 操作系统，1 个用于 ZPLS 模块） |

虽然一般部署需要五（5）个 IP 地址， **但实际只使用两个（2）个 IP 地址** 在 ZPLS 部署中：每个模块一个，运行在一台 **专用的 Node 虚拟机**.

{% hint style="warning" %}
ZPLS 只允许每个 Node VM 使用一个模块。你不能将 ZPLS 与同一 VM 上的其他 Zoom 模块共置。
{% endhint %}

这些图表如何比较？第一张图显示了一个 Zoom Meetings 混合部署示例。第二张图显示了一个 Zoom Phone 本地生存性部署示例。

如果需要，你可以让第一个 IP 地址/主机名在操作系统和第一个模块之间共享，以减少所需的 IP 地址、主机名和主体备用名称（SAN）数量。

### <mark style="color:蓝色;">选项 2：使用共享 IP 和共享主机名部署 Zoom Meetings Hybrid</mark>

<figure><img src="https://2325962437-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FctBXUMeBy4rtLMmMkKRG%2Fuploads%2Fgit-blob-6b1181f4394323c6364dc3dde2d10299e0000f9c%2Fimage.png?alt=media" alt=""><figcaption></figcaption></figure>

此配置重复了在选项 1 的 Zoom Meetings Hybrid 图中看到的 Node 结构。不过，在此部署中， **Node 操作系统与其第一个已部署模块共享其 IP 地址** （通常是 Zoom 连接器 Proxy，ZCP）。这会在保持 TLS 和功能要求的同时，减少 IP 使用率。

必须在 DNS 中配置以下主机名，并将其包含在 TLS 证书中：

* `zcp1.customer.com`
* `mmr1.customer.com`
* `mmr2.customer.com`
* `mmr3.customer.com`

**主机名功能映射**

| 组件                  | 主机名                 | TLS 证书 角色   | 功能      |
| ------------------- | ------------------- | ----------- | ------- |
| ZCP（Zoom 连接器 Proxy） | `zcp1.customer.com` | 通用名称（CN）    | 信令和会议控制 |
| 媒体模块路由器 1           | `mmr1.customer.com` | 主题备用名称（SAN） | 媒体路由和处理 |
| 媒体模块路由器 2           | `mmr2.customer.com` | 主题备用名称（SAN） | 媒体路由和处理 |
| 媒体模块路由器 3           | `mmr3.customer.com` | 主题备用名称（SAN） | 媒体路由和处理 |

**TLS 证书配置**

| 字段       | 值                                                             |
| -------- | ------------------------------------------------------------- |
| 通用名称（CN） | `zcp1.customer.com`                                           |
| 主题备用名称   | `mmr1.customer.com`, `mmr2.customer.com`, `mmr3.customer.com` |

证书必须包含所有 SAN，才能支持 Zoom Node 与已安装的 Zoom 模块之间的安全 TLS 通信。

**IP 地址要求**

| 指标          | 值 / 描述                    |
| ----------- | ------------------------- |
| 所需 IP 地址总数  | 4                         |
| IP 共享策略     | Node 操作系统与第一个模块（ZCP）共享 IP |
| 需要单独 IP 的对象 | ZCP/MMR1、MMR2、MMR3        |

{% hint style="info" %}
当 IP 地址 **共享** 在 Node 操作系统与第一个部署的模块（ZCP）之间时，仅 **四（4）个 IP 地址** 就足够了。此设计在仍符合部署标准的同时优化了 IP 的使用。
{% endhint %}

<figure><img src="https://2325962437-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FctBXUMeBy4rtLMmMkKRG%2Fuploads%2Fgit-blob-043999f43a7b7f32d98af79cee7e29ca0d9b526e%2Fimage.png?alt=media" alt=""><figcaption></figcaption></figure>

上图展示了一个最小化的 ZPLS 部署，其中 **节点 操作系统 与已安装的 ZPLS 模块共享其 IP 地址**。这是 **唯一场景** 在 Zoom Node 框架中，存在一个 **单主持人 TLS 证书** 有效。

以下主机名必须在 DNS 中配置并包含在 TLS 证书中：

* `zplsl.customer.com`

**主机名功能映射**

| 组件      | 主机名                  | TLS 证书 角色 | 功能                |
| ------- | -------------------- | --------- | ----------------- |
| ZPLS 模块 | `zplsl.customer.com` | 通用名称（CN）  | Zoom Phone 本地存活逻辑 |

**TLS 证书配置**

| 字段       | 值                   |
| -------- | ------------------- |
| 通用名称（CN） | `zcp1.customer.com` |
| SANs     | （非必需）               |

在此配置中，由于操作系统和 ZPLS 模块共享相同的主机名和 IP 地址，因此单主持人证书就足够了。

**IP 地址要求**

| 指标         | 值 / 描述                      |
| ---------- | --------------------------- |
| 所需 IP 地址总数 | 1                           |
| IP 共享策略    | Node 操作系统和 ZPLS 共用一个 IP 地址  |
| 部署限制       | 每个 Node VM 仅允许一个模块（仅限 ZPLS） |

{% hint style="warning" %}
ZPLS 是 Zoom Node 架构中唯一受支持的场景，其中：

* 可接受单主持人证书（仅 CN）
* 由于操作系统与模块共享 IP，因此部署仅需一个（1 个）IP 地址
* 不支持在同一 VM 上共置其他模块
  {% endhint %}

### <mark style="color:蓝色;">确定最适合您的部署的证书管理方法</mark>

部署在 Zoom Node 上的每个服务模块都需要由 Zoom Node 的证书信任列表中受公开信任的证书颁发机构 (CA) 签署的有效证书。这包括知名的公共机构。

Zoom Node 提供两种证书管理方法：

* **Auto PKI**: 这一创新解决方案可通过公共信任的证书颁发机构（CAs）自动完成安全证书注册和续期。Zoom 承担与注册和续期相关的费用。
* **自带证书（BYOC）**: 使用此选项，您提供自己的证书，这些证书由任何主要的公共信任 CA 签名。您负责证书注册和续期。关于使用客户提供的证书时 Zoom Node 最多可支持五个主机名/SAN 的潜在限制，还需考虑其他事项，详情见下文。

#### 使用 Auto PKI 进行自动证书管理

Zoom Auto PKI 会自动为 Zoom Node 平台以及其上部署的任何模块安装由公共信任 CA 签发的有效证书。证书续期也会自动处理。这简化了所有服务以及 Zoom Node 本身的证书管理。

#### 了解 Auto PKI 证书注册与续期

以下场景可帮助您了解证书注册和续期的工作方式。

例如：管理员已部署了一个新的 Node 实例。每个实例都需要一个有效的 x509 证书。 **证书的私钥绝不能离开此实例**.

Auto PKI 流程执行以下步骤：

1. **模板检索**：从 Zoom 云中的 Auto PKI 服务拉取所有受支持的配置模板，包括适用于多个 CA 提供商的选项。
2. **IP 地址收集**：收集在节点上运行的服务所使用的所有 IP 地址，并将其发送到 Zoom 云中的 Auto PKI 服务。
3. **DNS 名称配置**：Auto PKI 云服务会返回一组采用以下格式的 DNS 名称 `<instance_标识符>.<customer_标识符>.zoomonprem.com`。这些域配置了 A/AAAA 记录。
4. **保留 DNS 名称请求**：请求采用以下格式的保留 DNS 名称 `rsvd-<randomized_string>.<customer_标识符>.zoomonprem.com`.
5. **证书请求生成**：生成 x509 证书请求，在 SAN 字段中使用第三步中的 DNS 名称，并在通用名称 (CN) 字段中使用第四步中的保留名称。
6. **证书签发**：将证书签名请求 (CSR) 发送到 Zoom 云中的 Auto PKI 服务。该服务随后与 CA 供应商协作签发证书，其中包含上一步中的 SAN 列表和 CN 字段。
7. **本地存储**：将上一步新签发的 x509 证书及其相应的私钥（先前生成）写入本地存储，使其可供节点实例上运行的服务使用。

Auto PKI 通过自动监控到期日期并请求新证书，简化了 Zoom Node 上的证书管理，无需手动续订。

#### 自带证书 (BYOC)

您可以使用本地 Web 界面在 Zoom Node 上安装您自己的有效且经公开签名的证书。您可以在初始安装期间或之后的任何时间执行此操作。该流程对于习惯在基于 Web 的应用程序上安装证书的用户而言会很熟悉。

如果您选择使用自己的证书，请注意，该证书将位于与多个主机名通信的服务器上。因此，您选择的证书类型必须支持对源自多个主机名（证书 CN）的流量进行加密。用于节点及任何已部署服务的所有主机名必须可由 Zoom 的云服务公开解析。

Zoom 推荐两种证书：

* **通配符证书**
* **多 SAN 证书** （也称为多域证书、SAN 证书或 UCC 证书）

{% hint style="danger" %}
典型的单主机证书无法与 Zoom Node 配合使用，唯一的例外情况是：Zoom Node 和单个模块共用单个 IP 地址和主机名。有关更多背景信息，请参阅中的 ZPLS 图表 [#option-2-zoom-meetings-hybrid-deployed-with-a-shared-ip-and-shared-hostname](#option-2-zoom-meetings-hybrid-deployed-with-a-shared-ip-and-shared-hostname "mention") 部分。
{% endhint %}

**通配符证书：因简便性而推荐**

通配符证书可以加密域中任何主机名的流量。例如，像 \*.customer.com 这样的通配符证书可以加密来自以下地址的流量 `host1.customer.com` 和 `host2.customer.com` 或 `中的任何名称`.

当您部署 Zoom Node 并安装通配符证书时，它将自动加密您在节点上部署的任何服务的流量，前提是所有已部署的服务都使用通配符域中的完全限定域名 (FQDN)。

这可最大限度地减少在节点上部署服务的工作量：您无需在部署服务之前知道服务名称。但是，如果使用多 SAN 证书方法，则需要知道服务名称。

**多 SAN、多域、SAN 或 UCC 证书**

{% hint style="warning" %}
您必须知道将用于节点（最多一个 \[1]）以及将要安装的任何服务（最多四个 \[4]）的主机名和 IP 地址。

**在申请证书之前需要此信息**.
{% endhint %}

Zoom Node 需要多 SAN 证书，因为它可以加密来自五个 (5) 主机名的流量。一次性申请此证书需要事先了解所有必要信息，包括计划使用的节点名称以及计划在节点上部署的所有服务名称。例如，对于 ZPLS 这样的模块，每个节点仅部署一个 ZPLS 模块，因此 ZPLS 服务主机名只需要额外一个 SAN。

下表可作为示例：

| 主机名 (SAN)                    | IP 地址         |
| ---------------------------- | ------------- |
| `zoom-node01.company.com`    | `10.1.50.100` |
| `zpls.company.com`           | `10.1.50.100` |
| `zoom-recording.company.com` | `10.1.50.101` |
| `zoom-网络研讨会.company.com`     | `10.1.50.102` |
| （服务 4 - 此示例中未使用）             | （不适用）         |

此示例为典型配置：一个节点在同一 IP 地址上托管 ZPLS，另有两个附加服务位于不同的 IP 地址上。请将“company.com”替换为您的实际域名，并使用您网络的 IP 地址。

**DNS 解析要求**

Zoom 要求主机名可被公开解析，以便建立双向信任。所有 Zoom Node 主机名以及部署在节点上的所有服务主机名都必须包含在 DNS 区域中。

如果你的组织运行独立的内部和外部 DNS 服务或域名，则 Zoom Node 主机名需要托管在一个可由你的外部 DNS 服务器解析的区域中（可以限制为仅解析 Zoom IP 范围）。你的内部 Zoom 用户和 Zoom 云需要使用同一组主机名进行通信。


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://library.zoom.com/technical-library/zh/gao-ji-qi-ye-fu-wu/zoom-node/zoom-node-deployment-field-guide/zoom-node-deployment-considerations.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
