APM 安装
APM 安装概述
瞻博网络地址池管理器 (APM) 是一款自动化、集中式、基于容器的云原生应用,网络运营商和管理员用它来管理 IP 前缀资源。APM 与托管宽带网络网关 (BNG) 配合使用来监控 BNG 上的地址池。当可用地址数降至设定阈值以下时,BNG 会发出告警。告警会触发 APM 从其全局前缀列表中分配未使用的前缀,并将前缀的子集作为新池配置到 BNG。
APM 可以安装在单个地理位置设置或多个地理位置设置上。这两种设置的安装要求和安装过程不同。有关 APM 设置的要求,请参阅以下部分:
本文档中的术语 BNG 也适用于 BNG CUPS 控制器。
您可以在任何满足要求的硬件上部署 APM。以下章节将介绍如下内容:
-
APM 安装要求
-
如何安装 APM
-
如何调整 APM 设置参数
APM 安装要求
要安装 APM,您需要本节中列出的以下硬件和软件要求。
单个地理位置设置的 APM 要求
APM 安装在单个地理位置设置上。单个地理位置设置由一个多节点 Kubernetes 群集组成。群集节点可以是物理节点,也可以是虚拟机。为了实现可用性,群集必须具有至少三个节点上运行的 Kubernetes 控制平面功能,并且至少在三个节点上运行工作器功能。为了实现节点经济性,Kubernetes 控制平面和工作器功能可以组合在同一节点(组合节点)上运行。
APM 已针对 表 1 中描述的单一地理群集进行了鉴定。
| 类别 | 详情 |
|---|---|
|
Kubernetes 群集 |
Kubernetes 群集需要以下内容:
|
|
跳转主机 |
跳转主机需要以下内容:
|
|
跳转主机软件 |
跳转主机需要以下软件:
|
|
存储 |
名为 jnpr-bbe-storage 的存储类。 |
|
网络负载均衡器地址 |
最多 2 个地址,一个用于 APMi(BNG 和 APM 之间的服务接口),一个用于管理(SSH CLI 访问,可选) |
|
注册表存储 |
每个 APM 版本需要大约 2 GiB 的容器映像。 |
多地理位置设置的 APM 要求
多地理位置设置由两个独立的多节点 Kubernetes 群集组成。群集节点可以是物理节点,也可以是虚拟机。为了实现可用性,每个群集必须具有至少三个节点上运行的 Kubernetes 控制平面功能,并且至少在三个节点上运行工作器功能。为了实现节点经济性,Kubernetes 控制平面和工作器功能可以组合在同一节点(组合节点)上运行。两个集群中的每一个在地理位置上都是分开的,因此影响一个群集的服务影响事件不会影响另一个集群。
每个群集都是一个工作负载群集。工作负载集群提供了一个冗余平台来运行 APM。
对于 PoC 安装,您不能使用 BBE cloudsetup 实用程序来构建多地理位置设置中使用的集群。要构建 PoC 多地理位置设置,可以通过支持人员使用单独的过程。
APM 已针对 表 2 中描述的多地理群集进行了鉴定。
| 类别 | 详情 |
|---|---|
|
群集 |
多地理位置群集由 2 个工作负载群集组成,每个群集至少由 3 个组合节点组成。
注意:
确保每个工作负载群集的群集和服务 CIDR 不重叠。每个工作负载群集的内部网络通过 Submariner IP 隧道连接。内部 CIDR 必须是不同的。 |
|
工作负载群集 |
每个工作负载群集都需要以下内容:
该规范建立了一个可以同时运行 APM 及其配套应用程序(如 BNG CUPS 控制器和 BBE 事件收集和可视化)的群集。 |
|
跳转主机 |
跳转主机需要以下内容:
|
|
跳转主机软件 |
跳转主机需要以下软件:
|
|
存储 |
名为 jnpr-bbe-storage 的存储类 |
|
网络负载均衡器地址 |
最多 2 个地址,一个用于 APMi(BNG 和 APM 之间的服务接口),一个用于管理(SSH CLI 访问,可选) |
|
注册表存储 |
每个 APM 版本需要大约 2 GiB 的容器映像。 |
在单个地理 APM 设置中,您可以对群集的参数做出一些基本假设。您可以使用 BBE Cloudsetup 等快速入门工具来创建单个地理 APM。构建具有多个地理位置和多个集群的生产环境 APM 设置需要您进行更多的输入来构建。
其他要求
BNG 是瞻博网络 MX 系列 Junos OS 路由器或瞻博网络 BNG CUPS 控制器(BNG CUPS 控制器)。
我们推荐使用以下版本:-
Junos OS 23.4R2-S7 或更高版本
-
BNG CUPS 控制器 26.2R2 或更高版本
对于 APM,请确认您拥有有权下载 APM 软件包的 juniper.net 用户帐户。从不属于 Kubernetes 群集的计算机下载并安装 APM 软件。
在单个地理位置设置中准备 APM 安装
首次使用本节中的过程安装单个地理位置 APM。
开始之前,请确认您已满足 APM 安装的要求。
建议在 APM 和 BNG 之间使用安全连接。
在开始安装 APM 之前,请确保您具有以下信息:
必填信息:
- 容器注册表详细信息:
-
如果您使用的是 Rancher Kubernetes Engine2 或 BBE Cloudsetup 创建的群集:
-
外部注册表地址
-
外部注册表端口号(通常为 5000)
-
-
如果您使用的是 Red Hat OpenShift Container Platform 群集:
-
外部注册表 (FQDN)
-
内部 (Docker) 注册表地址
-
内部 (Docker) 注册表端口号
-
-
可选信息:
- APM 初始配置文件。如果未提供配置文件,则会自动生成基本配置文件。
- 用于创建持久卷声明 (PVC) 的存储类名称(默认值为 jnpr-bbe-storage)。
- PVC 大小(默认为 90 MiB)。
- 存档配置详细信息。如果您计划将 APM 配置的副本镜像到外部服务器,则需要这样做。
-
SSH 私钥文件的名称或包含 SSH 私钥的 jnpr-apm 命名空间中存在的 Kubernetes 密钥的名称。
-
将存档配置文件的服务器的 SCP URL。SCP URL 采用 (例如)
scp://user@host1.mydomain.com:30443/home/user/configs/apm的形式scp://user-login@server-fqdn:server-port/absolute-file-path。
-
- Syslog 服务器详细信息。如果您计划将 APM 日志导出到外部系统日志收集器,则需要这样做。 注意:
如果检测到在目标群集上运行 BBE 事件收集和可视化 ,则将建议 ECAV 部署的地址和端口值作为默认值。
-
系统日志服务器地址。
-
Syslog 服务器端口号。
-
-
APMi 详细信息 — 您可以选择提供特定 IP 地址,用作工作负载群集上 APMi 的外部负载均衡器 IP 地址。如果未提供特定地址,APM 会尝试从网络负载均衡器的默认池中分配外部地址:
-
外部 IP 地址 - 输入群集节点和实体连接到的子网中的未使用 IP 地址。
- 端口(默认值为 20557)
- TLS 详细信息。您将需要以下其中一项:
-
无(不安全)
-
密钥和证书文件,或 jnpr-apm 命名空间中存在的包含密钥和证书信息的 Kubernetes 密钥的名称。
-
-
-
服务帐户名称 — 用于将某些操作权限绑定到 管理 微服务的 Kubernetes 服务帐户的名称。如果未提供服务帐户名称,APM 会在上线时创建一个名为 apm-svca 的服务帐户。
-
SSH 服务类型 — 如果指定了对 管理 微服务的 SSH 访问 (
ssh <ip>:<port>),则必须指定应将服务创建为节点端口 (NodePort) 服务还是负载均衡器 (LoadBalancer) 服务。如果选中,将 LoadBalancer 创建一个包含提供的外部 IP 地址的 MetalLB 池。在部署时创建的负载均衡器服务将从新创建的 MetalLB 池中分配外部 IP 地址。 -
DBSync 服务类型 —
apm multi-cluster statusAPM 实用程序命令通过 Kubernetes 服务从 DBSync 微服务收集要显示的状态。默认情况下,为此目的创建了节点端口服务。如果选择LoadBalancer,系统会提示您输入外部 IP 地址,并创建一个包含提供的外部 IP 地址的 MetalLB 池。LoadBalancer系统会为部署时创建的服务分配来自新创建的 MetalLB 池的外部 IP 地址。 - provman 微服务的工作进程数(默认值为 3)。
安装 APM 应用程序(单个地理位置)
如果要安装单个地理位置 APM,则使用本节中的过程。
在单个地理位置设置中启动 APM
使用此过程可在单个地理位置设置中配置和启动 APM。
准备在多地理位置设置中安装 APM
对于由位于不同地理位置的多个 APM 组成的 APM 设置,请使用本部分中的安装过程。
开始之前,请确认您满足 APM 安装的要求(请参阅 表 2)。
先决条件
在开始安装 APM 之前,请确保您具有以下信息:
有关以下信息的说明,请参阅 表 3。
必填信息:
-
工作负载群集的群集上下文名称。
例如,您的上下文输出可能如下所示:
kubectl config get-contexts CURRENT NAME CLUSTER AUTHINFO NAMESPACE * workload-1 workload-1 workload-1 workload-2 workload-2 workload-2 -
每个群集的容器注册表详细信息:
注意:您必须为所有集群收集以下信息。
-
外部注册表地址
-
外部注册表端口号(通常为 5000)
-
可选信息:
- APM 初始配置文件。如果未提供配置文件,则会自动生成基本配置文件。
- 用于创建持久卷声明 (PVC) 的存储类名称(默认值为 jnpr-bbe-storage)。
- PVC 大小(默认为 90 MiB)。
- 存档配置详细信息。如果您计划将 APM 配置的副本镜像到外部服务器,则需要这样做。
-
SSH 私钥文件的名称或包含 SSH 私钥的 jnpr-apm 命名空间中存在的 Kubernetes 密钥的名称。
-
将存档配置文件的服务器的安全复制协议 (SCP) URL。SCP URL 采用 (例如)
scp://user@host1.mydomain.com:30443/home/user/configs/apm的形式scp://user-login@server-fqdn:server-port/absolute-file-path。
-
- Syslog 服务器详细信息。如果您计划将 APM 日志导出到外部系统日志收集器,则需要这样做。 注意:
如果检测到在目标群集上运行 BBE 事件收集和可视化 ,则将建议 ECAV 部署的地址和端口值作为默认值。
-
系统日志服务器地址。
-
Sysylog 服务器端口号。
-
-
APMi 详细信息 — 您可以提供特定的 IP 地址,用作每个工作负载群集上 APMi 的外部负载均衡器 IP 地址。如果未提供特定地址,APM 会尝试从网络负载均衡器的默认池中分配外部地址:
-
外部 IP 地址 - 输入群集节点和实体连接到的子网中的未使用 IP 地址。
- 端口(默认值为 20557)
- TLS 详细信息。您将需要以下其中一项:
-
无(不安全)
-
密钥和证书文件,或 jnpr-apm 命名空间中存在的包含密钥和证书信息的 Kubernetes 密钥的名称。
-
-
-
操作员间备份通道详细信息(仅适用于多个地理位置设置) — 建议您在连接工作负载集群(和 Submariner 隧道连接)的主子网以外的其他子网上设置备份通道。
-
外部 IP 地址 - 输入每个地理位置的群集节点连接到的备份子网中的未使用 IP 地址。
- TLS 详细信息。您将需要以下其中一项:
-
无(不安全)
-
密钥和证书文件,或 jnpr-apm 命名空间中存在的包含密钥和证书信息的 Kubernetes 密钥的名称。
-
-
-
服务帐户名称 — 用于将某些操作权限绑定到 管理 微服务的 Kubernetes 服务帐户的名称。如果未提供服务帐户名称,APM 会在上线时创建一个名为 apm-svca 的服务帐户。
-
DBSync 服务类型 —
apm multi-cluster statusAPM 实用程序命令通过 Kubernetes 服务从 DBSync 微服务收集要显示的状态。默认情况下,为此目的创建了节点端口服务。如果选择LoadBalancer,系统会提示您输入外部 IP 地址,并创建一个包含提供的外部 IP 地址的 MetalLB 池。LoadBalancer系统会为部署时创建的服务分配来自新创建的 MetalLB 池的外部 IP 地址。 - provman 微服务的工作进程数(默认值为 3)。
安装 APM 应用程序(多地理位置设置)
在多地理位置设置中启动 APM
使用此过程可在多地理位置设置中配置和启动 APM。
