第 16 章 将 AWS VPC 集群扩展到 AWS Outpost


在 OpenShift Container Platform 版本 4.14 中,您可以使用 AWS Outposts 中运行的计算节点在 Amazon Web Services (AWS)上安装集群。自 OpenShift Container Platform 版本 4.15 起,不再支持这个安装方法。相反,您可以在 AWS 上将集群安装到现有的 VPC 中,并在 AWS Outposts 上置备计算节点作为安装后配置任务。

在 Amazon Web Services (AWS)上安装集群到现有的 Amazon Virtual Private Cloud (VPC) 后,您可以创建一个在 AWS Outposts 中部署计算机器的计算机器集。AWS Outposts 是一个 AWS 边缘计算服务,允许使用基于云的 AWS 部署的许多功能,并减少内部环境的延迟。如需更多信息,请参阅 AWS Outposts 文档

16.1. OpenShift Container Platform 要求和限制的 AWS Outposts

如果配置 OpenShift Container Platform 集群以适应以下要求和限制,您可以管理 AWS Outpost 上的资源,与基于云的 AWS 集群上的资源类似:

  • 要将 AWS 上的 OpenShift Container Platform 集群扩展到 Outpost 中,您必须将集群安装到现有的 Amazon Virtual Private Cloud (VPC) 中。
  • Outpost 的基础架构与 AWS 区域中的可用区关联,并使用专用子网。部署到 Outpost 中的边缘计算机器必须使用 Outpost 子网以及 Outpost 与之关联的可用区。
  • 当 AWS Kubernetes 云控制器管理器发现 Outpost 子网时,它会尝试在 Outpost 子网中创建服务负载均衡器。AWS Outposts 不支持运行服务负载均衡器。要防止云控制器管理器在 Outpost 子网中创建不支持的服务,您必须在 Outpost 子网配置中包含 kubernetes.io/cluster/unmanaged 标签。这个要求是 OpenShift Container Platform 版本 4.15 的一个临时解决方案。如需更多信息,请参阅 OCPBUGS-30041
  • AWS 上的 OpenShift Container Platform 集群包括 gp3-csigp2-csi 存储类。这些类与 Amazon Elastic Block Store (EBS) gp3 和 gp2 卷对应。OpenShift Container Platform 集群默认使用 gp3-csi 存储类,但 AWS Outposts 不支持 EBS gp3 卷。
  • 此实现使用 node-role.kubernetes.io/outposts 污点,以防止将常规集群工作负载分散到 Outpost 节点。要在 Outpost 中调度用户工作负载,您必须在应用程序的 Deployment 资源中指定对应的容限。为用户工作负载保留 AWS Outpost 基础架构可以避免额外的配置要求,如将默认 CSI 更新至 gp2-csi,使其兼容。
  • 要在 Outpost 中创建卷,CSI 驱动程序需要 Outpost Amazon Resource Name (ARN)。驱动程序使用 CSINode 对象中存储的拓扑密钥来确定 Outpost ARN。为确保驱动程序使用正确的拓扑值,您必须将卷绑定模式设置为 WaitForConsumer,并避免在您创建的任何新存储类上设置允许的拓扑。
  • 当您将 AWS VPC 集群扩展到 Outpost 时,您有两个计算资源。Outpost 具有边缘计算节点,而 VPC 具有基于云的计算节点。基于云的 AWS Elastic Block 卷无法附加到 Outpost 边缘计算节点,而 Outpost 卷无法附加到基于云的计算节点。

    因此,您无法使用 CSI 快照将使用持久性存储的应用程序从基于云的计算节点迁移到边缘计算节点,或直接使用原始持久性卷。要为应用程序迁移持久性存储数据,您必须执行手动备份和恢复操作。

  • AWS Outposts 不支持 AWS Network Load Balancers 或 AWS Classic Load Balancers。您必须使用 AWS Application Load Balancers 在 AWS Outposts 环境中为边缘计算资源启用负载均衡。

    要置备 Application Load Balancer,您必须使用 Ingress 资源并安装 AWS Load Balancer Operator。如果您的集群包含共享工作负载的边缘和基于云的计算实例,则需要额外的配置。

    如需更多信息,请参阅"在 AWS VPC 集群中使用 AWS Load Balancer Operator 进入 Outpost"。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.