第 1 章 使用分布式区域创建 RHOSO 环境
您可以在分布式区域间在 OpenShift (RHOSO)环境中部署 Red Hat OpenStack Services。分布式区域是位于分布式低延迟 L3-connected racks、行、房间和数据中心中的故障域。您可以在位于分布式区的多个 Red Hat OpenShift Container Platform (RHOCP)集群节点中部署 RHOSO 控制平面,您可以在同一分布式区部署 RHOSO 数据平面。具有分布式区域的 RHOSO 环境基于路由的 spine-leaf 网络拓扑构建。
分布式 control plane 环境的拓扑包含三个 RHOCP 区域。每个区至少有一个 worker 节点托管 control plane 服务和一个 Compute 节点。
要创建带有分布式区的 RHOSO 环境,您必须完成以下任务:
-
在可正常工作的 RHOCP 集群上安装 OpenStack Operator (
openstack-operator)。 - 提供对 RHOSO 服务的安全访问。
- 为使用边框网关协议(BGP)的动态路由创建和配置 control plane 网络。
- 为 BGP 的动态路由创建和配置数据平面网络。
- 为您的环境创建分布式 control plane。
- 创建并配置分布式数据平面节点。
您可以在可访问 RHOCP 集群的工作站上执行 control plane 安装任务和所有数据平面创建任务。
您不能在路由的 spine-leaf 网络环境中使用 provisioning 网络。您必须将置备配置为使用 RHOCP 机器网络。计算机网络是 RHOCP 集群节点用来相互通信的网络。机器网络也是包含 API 和 Ingress VIP 的子网。您可以通过在 RHOCP install-config.yaml 文件的 machineNetwork 字段中指定组成集群的节点的 IP 地址块来配置机器网络。有关 RHOCP 机器网络的详情,请查看以下 RHOCP 资源:
- 在裸机上安装 指南中的 配置 install-config.yaml 文件
- 在裸机上安装中的 网络配置参数
1.1. 为分布式区域规划基础架构 复制链接链接已复制到粘贴板!
要计划并准备部署分布式区环境,您必须了解跨越多个站点的 Red Hat OpenShift Container Platform (RHOCP)集群的要求和限制。如需更多信息,请参阅 Red Hat OpenShift Container Platform 集群指南 - 部署生成多个站点(数据中心/地区)。
1.1.1. RHOCP 要求 复制链接链接已复制到粘贴板!
您的 RHOCP 集群必须符合 规划部署 的详细最小 RHOCP 硬件、网络、软件和存储要求。另外,要托管分布式区环境,您的 RHOCP 集群必须满足以下要求:
- RHOCP 集群 不能是一个 紧凑的集群。
每个区都需要一个低延迟互连:
- RHOCP 的 etcd 需要小于 15ms 的 Round Trip Time (RTT)。
- 网络设备必须支持 BGP 协议,并与 FRRouting (FRR)兼容。
- MetalLB Operator 配置为与 FRR-K8s 集成。如需更多信息,请参阅配置 MetalLB 和 FRR-K8s 的集成。
以下 Operator 安装在 RHOCP 集群中:
- Self Node Remediation (SNR) Operator。如需更多信息,请参阅 Red Hat OpenShift Remediation、隔离和维护 指南中的使用自节点补救 功能。
- Node Health Check Operator。如需更多信息,请参阅 Red Hat OpenShift 修复、隔离和维护指南中的使用节点健康检查修复 节点。
1.1.2. 存储要求 复制链接链接已复制到粘贴板!
RHOCP 存储类已定义,可以访问类型为
ReadWriteOnce的持久性卷。注意如果您使用只提供本地卷的逻辑卷管理器(LVM)存储,当附加卷的节点失败时,不会挂载到新节点,因为它已分配给失败的节点。这可防止 SNR Operator 使用 LVMS PVC 自动重新调度 pod。因此,如果您使用 LVM 进行存储,则必须在非正常节点关闭后分离卷。如需更多信息,请参阅 非正常节点关闭后分离卷。
- 对于 Red Hat Ceph Storage,每个区域中都有一个冗余的 Red Hat Ceph Storage 集群。
- 对于第三方存储,配置了本地和远程存储阵列访问。
- 本地访问
存储服务与它们的存储阵列位于同一个可用区(AZ)。
- 每个 AZ 包含自己的存储阵列和专用存储网络。
- 服务 pod (如 cinder-volume 或 manila-share)部署到与目标存储阵列相同的 AZ 中的 worker 节点上。
Compute 节点必须位于同一存储网络中,才能访问本地存储资源。
AZ1 设置示例:
- 存储阵列:10.1.0.6.
- 存储网络:10.1.0.0/24.
- manila-share pod 部署到 AZ1 worker 节点上,可访问 10.1.0.0/24。
- Compute 节点连接到同一网络以进行直接数组访问。
- 远程访问
每个区中的存储阵列必须可从其他区域中的 worker 节点访问,才能启用跨AZ 操作,如镜像管理或卷操作。
-
镜像管理示例: AZ1 中的镜像服务(glance) pod 需要在 AZ1 之间访问 cinder-volume 服务,以便您可以将镜像上传到 AZ1 中的本地
glance存储,并将镜像复制到 AZ2 或 AZ3 中的远程glance存储中。 卷操作示例:在不同 AZ 之间重新键入卷。
远程访问的网络实现:
- iSCSI :配置 AZ 存储网络之间的 IP 路由,以启用远程访问。
Fibre Channel (FC):配置 FC 开关 zoning 以允许跨AZ 访问,并维护与 iSCSI 相同的本地和远程访问模式。
Cross-AZ 共享访问权限的用例:授予访问 在 AZ1 中托管的共享文件系统服务(manila)共享到在 AZ2 中托管的计算服务(nova)实例。AZ 之间的网络延迟可能会影响存储性能。管理员策略决定是否只限制对本地 AZ 的访问,或允许远程 AZ 访问来获得更大的灵活性。
-
镜像管理示例: AZ1 中的镜像服务(glance) pod 需要在 AZ1 之间访问 cinder-volume 服务,以便您可以将镜像上传到 AZ1 中的本地