×

本文档概述了 AWS 上的 Red Hat OpenShift 服务 (ROSA) 托管服务的服务定义。

账户管理

本节提供有关 AWS 上 Red Hat OpenShift 服务账户管理的服务定义信息。

计费和定价

AWS 上的 Red Hat OpenShift 服务的费用直接计入您的 Amazon Web Services (AWS) 账户。ROSA 定价基于使用量,并提供年度承诺或三年承诺以获得更大的折扣。ROSA 的总成本包含两个部分

  • ROSA 服务费

  • AWS 基础设施费用

访问 AWS 网站上的 AWS 上 Red Hat OpenShift 服务定价 页面了解更多详情。

集群自助服务

客户可以自助管理其集群,包括但不限于

  • 创建集群

  • 删除集群

  • 添加或删除身份提供程序

  • 向高级组添加或删除用户

  • 配置集群隐私

  • 添加或删除机器池并配置自动缩放

  • 定义升级策略

您可以使用 AWS 上的 Red Hat OpenShift 服务 (ROSA) CLI,rosa 来执行这些自助服务任务。

其他资源

实例类型

单可用区集群需要至少 3 个控制平面节点、2 个基础设施节点和 2 个工作节点部署到单个可用区。

多可用区集群需要至少 3 个控制平面节点、3 个基础设施节点和 3 个工作节点。

部署和管理工作负载时,请考虑以下限制

  • 您必须使用 AWS 上的 Red Hat OpenShift 服务机器池,在集群中存在的 Worker 节点上部署工作负载。

  • 将您认为重要的工作负载作为 Daemonsets 运行在控制平面和基础设施节点上。

  • 您必须确保在这些节点上运行的任何工作负载都是安全、可扩展的,并且与 AWS 上的 Red Hat OpenShift 服务版本兼容,以免影响 API 服务器可用性的服务等级协议 (SLA)。

如果 AWS 上的 Red Hat OpenShift 服务组件受到影响,Red Hat 可能会通知您并调整控制平面或基础设施节点的大小。

控制平面和基础设施节点由 Red Hat 部署和管理。这些节点会根据资源使用情况自动调整大小。如果您需要调整这些节点的大小以满足集群需求,请提交支持案例。

通过云提供商控制台关闭底层基础设施不受支持,并可能导致数据丢失。

有关必须在 Worker 节点上部署的 Red Hat 工作负载的更多信息,请参阅以下 Red Hat Operator 支持部分。

每个工作节点上大约保留一个 vCPU 内核和 1 GiB 内存,并从可分配资源中移除。保留这些资源对于运行底层平台所需的进程是必要的。这些进程包括 udev、kubelet 和容器运行时等系统守护进程。保留的资源也考虑了内核保留。

OpenShift Container Platform 核心系统(例如审计日志聚合、指标收集、DNS、镜像注册表、SDN 等)可能会消耗额外的可分配资源以维护集群的稳定性和可维护性。消耗的额外资源可能会根据使用情况而有所不同。

有关更多信息,请参阅 Kubernetes 文档

区域和可用区

目前以下 AWS 区域可用于 Red Hat OpenShift 4,并受 AWS 上 Red Hat OpenShift 服务支持。

无论其在 OpenShift 4 中是否受支持,中国区域均不受支持。

对于 GovCloud (美国) 区域,您必须提交 AWS 上 Red Hat OpenShift 服务 (ROSA) FedRAMP 访问请求

GovCloud (美国) 区域仅在 ROSA Classic 集群中受支持。

AWS 区域
  • us-east-1 (弗吉尼亚北部)

  • us-east-2 (俄亥俄州)

  • us-west-1 (加利福尼亚北部)

  • us-west-2 (俄勒冈州)

  • af-south-1 (开普敦,需要 AWS 选择加入)

  • ap-east-1 (香港,需要 AWS 选择加入)

  • ap-south-2 (海得拉巴,需要 AWS 选择加入)

  • ap-southeast-3 (雅加达,需要 AWS 选择加入)

  • ap-southeast-4 (墨尔本,需要 AWS 选择加入)

  • ap-south-1 (孟买)

  • ap-northeast-3 (大阪)

  • ap-northeast-2 (首尔)

  • ap-southeast-1 (新加坡)

  • ap-southeast-2 (悉尼)

  • ap-northeast-1 (东京)

  • ca-central-1 (加拿大中部)

  • eu-central-1 (法兰克福)

  • eu-north-1 (斯德哥尔摩)

  • eu-west-1 (爱尔兰)

  • eu-west-2 (伦敦)

  • eu-south-1 (米兰,需要 AWS 选择加入)

  • eu-west-3 (巴黎)

  • eu-south-2 (西班牙)

  • eu-central-2 (苏黎世,需要 AWS 选择加入)

  • me-south-1 (巴林,需要 AWS 选择加入)

  • me-central-1 (阿联酋,需要 AWS 选择加入)

  • sa-east-1 (圣保罗)

  • us-gov-east-1 (AWS GovCloud - 美国东部)

  • us-gov-west-1 (AWS GovCloud - 美国西部)

多可用区集群只能部署在至少具有 3 个可用区的区域中。有关更多信息,请参阅 AWS 文档中的 区域和可用区 部分。

每个新的 AWS 上 Red Hat OpenShift 服务集群都安装在一个安装程序创建的或预先存在的虚拟私有云 (VPC) 中的单个区域内,可以选择部署到单个可用区 (单 AZ) 或跨多个可用区 (多 AZ)。这提供了集群级网络和资源隔离,并支持云提供商 VPC 设置,例如 VPN 连接和 VPC 对等连接。持久卷 (PV) 由 Amazon Elastic Block Storage (Amazon EBS) 支持,并且特定于其在其中预配的可用区。持久卷声明 (PVC) 直到关联的 Pod 资源分配到特定可用区后才绑定到卷,以防止 Pod 不可调度。特定于可用区的资源只能由同一可用区中的资源使用。

集群部署后,区域和单可用区或多可用区的选择将无法更改。

本地区域

AWS 上的 Red Hat OpenShift 服务支持使用 AWS 本地区域,这是大都市中心化的可用区,客户可以在其中放置对延迟敏感的应用程序工作负载。本地区域是 AWS 区域的扩展,具有自己的互联网连接。有关 AWS 本地区域的更多信息,请参阅 AWS 文档 本地区域的工作原理

服务等级协议 (SLA)

服务本身的任何 SLA 都定义在 Red Hat 企业协议附录 4(在线订阅服务) 的附录 4 中。

有限支持状态

当集群状态转换为有限支持时,Red Hat 将不再主动监控集群,SLA 将不再适用,并且根据 SLA 申请的积分将被拒绝。但这并不意味着您不再获得产品支持。在某些情况下,如果您可以修复违规因素,集群可以恢复到完全支持的状态。但是,在其他情况下,您可能需要删除并重新创建集群。

集群可能由于多种原因而转为有限支持状态,包括以下场景:

如果您未在产品生命周期结束日期之前将集群升级到受支持的版本

Red Hat 对于其生命周期结束日期后的版本不做任何运行时或 SLA 保证。要获得持续支持,请在生命周期结束日期之前将集群升级到受支持的版本。如果您未在生命周期结束日期之前升级集群,则集群将转为有限支持状态,直到将其升级到受支持的版本。

Red Hat 提供商业上合理的支持,以帮助您从不受支持的版本升级到受支持的版本。但是,如果受支持的升级路径不再可用,您可能需要创建一个新集群并迁移您的工作负载。

如果您移除或替换任何原生 Red Hat OpenShift Service on AWS 组件或任何其他由 Red Hat 安装和管理的组件

如果使用了集群管理员权限,Red Hat 对您或您的授权用户的任何行为概不负责,包括那些影响基础设施服务、服务可用性或数据丢失的行为。如果 Red Hat 检测到任何此类行为,集群可能会转为有限支持状态。Red Hat 将通知您状态更改,您应该撤消该操作或创建一个支持案例来探索可能需要您删除并重新创建集群的补救步骤。

如果您对可能导致集群转为有限支持状态的特定操作有疑问,或需要进一步帮助,请打开支持工单。

支持

Red Hat OpenShift Service on AWS 包括 Red Hat 高级支持,您可以通过 Red Hat 客户门户 访问。

请参阅 Red Hat 的 生产支持服务条款,了解支持响应时间。

AWS 支持受客户与 AWS 现有支持合同的约束。

日志记录

Red Hat OpenShift Service on AWS 提供可选的集成日志转发到 Amazon (AWS) CloudWatch。

集群审计日志记录

如果启用了集成,则可以通过 AWS CloudWatch 获取集群审计日志。如果未启用集成,您可以通过打开支持案例来请求审计日志。

应用程序日志记录

发送到STDOUT的应用程序日志将由 Fluentd 收集,如果安装了集群日志记录堆栈,则将其转发到 AWS CloudWatch。

监控

本节提供有关 Red Hat OpenShift Service on AWS 监控的服务定义信息。

集群指标

Red Hat OpenShift Service on AWS 集群配备了集成的 Prometheus 堆栈,用于集群监控,包括基于 CPU、内存和网络的指标。这可以通过 Web 控制台访问。这些指标还允许基于 Red Hat OpenShift Service on AWS 用户提供的 CPU 或内存指标进行水平 Pod 自动扩展。

集群通知

集群通知是关于集群状态、健康状况或性能的消息。

集群通知是 Red Hat 站点可靠性工程 (SRE) 与您沟通托管集群健康状况的主要方式。SRE 还可以使用集群通知提示您执行操作,以解决或防止集群问题。

集群所有者和管理员必须定期查看和处理集群通知,以确保集群保持健康和受支持。

您可以在 Red Hat Hybrid Cloud 控制台的集群历史选项卡中查看集群通知。默认情况下,只有集群所有者会收到集群通知电子邮件。如果其他用户需要接收集群通知电子邮件,请将每个用户添加为集群的通知联系人。

网络

本节提供有关 Red Hat OpenShift Service on AWS 网络的服务定义信息。

应用程序自定义域名

从 Red Hat OpenShift Service on AWS 4.14 开始,自定义域名操作符已弃用。要管理 Red Hat OpenShift Service on AWS 4.14 或更高版本中的 Ingress,请使用 Ingress 操作符。Red Hat OpenShift Service on AWS 4.13 和更早版本的功能保持不变。

要对路由使用自定义主机名,您必须通过创建规范名称 (CNAME) 记录来更新您的 DNS 提供商。您的 CNAME 记录应将 OpenShift 规范路由器主机名映射到您的自定义域名。创建路由后,将在“路由详细信息”页面上显示 OpenShift 规范路由器主机名。或者,可以创建一次通配符 CNAME 记录,将给定主机名的所有子域名路由到集群的路由器。

域名验证证书

Red Hat OpenShift Service on AWS 包括集群上内部和外部服务所需的 TLS 安全证书。对于外部路由,提供并安装在每个集群上的两个单独的 TLS 通配符证书:一个用于 Web 控制台和路由默认主机名,另一个用于 API 端点。Let's Encrypt 是用于证书的证书颁发机构。集群内的路由(例如内部 API 端点)使用集群内置证书颁发机构签名的 TLS 证书,并需要每个 Pod 中可用的 CA 捆绑包来信任 TLS 证书。

构建的自定义证书颁发机构

Red Hat OpenShift Service on AWS 支持使用自定义证书颁发机构,以便在从镜像注册表拉取镜像时被构建信任。

负载均衡器

Red Hat OpenShift Service on AWS 使用多达五个不同的负载均衡器

  • 一个内部控制平面负载均衡器,它位于集群内部,用于平衡内部集群通信的流量。

  • 一个外部控制平面负载均衡器,用于访问 OpenShift 和 Kubernetes API。此负载均衡器可以在 OpenShift 集群管理器中禁用。如果禁用了此负载均衡器,Red Hat 将重新配置 API DNS 以指向内部控制平面负载均衡器。

  • 一个 Red Hat 专用的外部控制平面负载均衡器,由 Red Hat 保留用于集群管理。访问受到严格控制,并且只能从白名单中的堡垒主机进行通信。

  • 一个默认的外部路由器/入口负载均衡器,它是默认的应用程序负载均衡器,在 URL 中用apps表示。可以在 OpenShift 集群管理器中配置默认负载均衡器,使其可以通过互联网公开访问,或者仅通过预先存在的专用连接私有访问。集群上的所有应用程序路由都暴露在这个默认路由器负载均衡器上,包括集群服务,例如日志记录 UI、指标 API 和注册表。

  • 可选:辅助路由器/入口负载均衡器,这是一个辅助应用程序负载均衡器,在 URL 中用apps2表示。可以在 OpenShift 集群管理器中将辅助负载均衡器配置为通过互联网公开访问,或仅通过预先存在的私有连接私有访问。如果为此路由器负载均衡器配置了标签匹配,则只有与该标签匹配的应用程序路由才会在此路由器负载均衡器上公开;否则,所有应用程序路由也会在此路由器负载均衡器上公开。

  • 可选:服务负载均衡器。为服务启用非 HTTP/SNI 流量和非标准端口。这些负载均衡器可以映射到在 AWS 上运行的 Red Hat OpenShift Service 上运行的服务,以启用高级入口功能,例如非 HTTP/SNI 流量或使用非标准端口。每个 AWS 账户都有配额限制每个集群中可以使用经典负载均衡器的数量

集群入口

项目管理员可以添加路由注释用于多种不同目的,包括通过 IP 白名单进行入口控制。

也可以使用NetworkPolicy对象更改入口策略,这些对象利用ovs-networkpolicy插件。这允许完全控制入口网络策略,直至 Pod级别,包括同一集群甚至同一命名空间中的 Pod 之间。

所有集群入口流量都将通过已定义的负载均衡器。对所有节点的直接访问都受到云配置的阻止。

集群出口

可以通过EgressNetworkPolicy对象控制 Pod 出口流量,以防止或限制 AWS 上 Red Hat OpenShift Service 的出站流量。

控制平面和基础架构节点的公共出站流量是必需的,用于维护集群镜像安全和集群监控。这要求0.0.0.0/0路由仅属于互联网网关;无法通过私有连接路由此范围。

OpenShift 4 集群使用 NAT 网关为离开集群的任何公共出站流量提供公共静态 IP。集群部署到的每个可用区都会收到一个不同的 NAT 网关,因此最多可以存在 3 个唯一的静态 IP 地址用于集群出口流量。任何保留在集群内部或不连接到公共互联网的流量都不会通过 NAT 网关,并且其源 IP 地址将属于流量发起的节点。节点 IP 地址是动态的;因此,客户在访问私有资源时不应依赖于将单个 IP 地址列入白名单。

客户可以通过在集群上运行 Pod,然后查询外部服务来确定其公共静态 IP 地址。例如

$ oc run ip-lookup --image=busybox -i -t --restart=Never --rm -- /bin/sh -c "/bin/nslookup -type=a myip.opendns.com resolver1.opendns.com | grep -E 'Address: [0-9.]+'"

云网络配置

AWS 上的 Red Hat OpenShift Service 允许通过 AWS 托管技术配置私有网络连接,例如

  • VPN 连接

  • VPC 对等互连

  • Transit Gateway

  • Direct Connect

Red Hat 站点可靠性工程师 (SRE) 不监控私有网络连接。监控这些连接是客户的责任。

DNS 转发

对于具有私有云网络配置的 AWS 上 Red Hat OpenShift Service 集群,客户可以指定在该私有连接上可用的内部 DNS 服务器,这些服务器应查询显式提供的域名。

网络验证

当您将 AWS 上的 Red Hat OpenShift Service 集群部署到现有的虚拟私有云 (VPC) 或创建具有对集群而言新的子网的附加机器池时,网络验证检查会自动运行。这些检查会验证您的网络配置并突出显示错误,使您能够在部署之前解决配置问题。

您也可以手动运行网络验证检查以验证现有集群的配置。

其他资源
  • 有关网络验证检查的更多信息,请参阅网络验证

存储

本节提供有关 AWS 上 Red Hat OpenShift Service 存储的服务定义信息。

静态加密的 OS 和节点存储

控制平面、基础架构和工作节点使用静态加密的 Amazon Elastic Block Store (Amazon EBS) 存储。

静态加密的 PV

默认情况下,用于 PV 的 EBS 卷会进行静态加密。

块存储 (RWO)

持久卷 (PV) 由 Amazon Elastic Block Store (Amazon EBS) 支持,它是只读一次写入的。

PV 每次只能附加到单个节点,并且特定于其在其中配置的可用区。但是,PV 可以附加到可用区中的任何节点。

每个云提供商都有其自身关于可以附加到单个节点的 PV 数量的限制。有关详细信息,请参阅AWS 实例类型限制

共享存储 (RWX)

AWS CSI 驱动程序可用于为 AWS 上的 Red Hat OpenShift Service 提供 RWX 支持。提供了一个社区运营商来简化设置。有关详细信息,请参阅OpenShift Dedicated 和 AWS 上的 Red Hat OpenShift Service 的 Amazon Elastic File Storage 设置

平台

本节提供有关 AWS (ROSA) 平台上 Red Hat OpenShift Service 的服务定义信息。

自动缩放

AWS 上的 Red Hat OpenShift Service 提供节点自动缩放功能。您可以配置自动缩放程序选项以自动缩放集群中的机器数量。

守护程序集

客户可以在 AWS 上的 Red Hat OpenShift Service 上创建和运行守护程序集。要将守护程序集限制为仅在工作节点上运行,请使用以下nodeSelector

...
spec:
  nodeSelector:
    role: worker
...

多个可用区

在多可用区集群中,控制平面节点分布在可用区之间,并且每个可用区至少需要一个工作节点。

节点标签

自定义节点标签由 Red Hat 在节点创建期间创建,目前无法在 AWS 上的 Red Hat OpenShift Service 集群中更改。但是,创建新的机器池时支持自定义标签。

集群备份策略

Red Hat 不为使用 STS 的 ROSA 集群提供备份方法。客户必须制定其应用程序及其应用程序数据的备份计划至关重要。

应用程序和应用程序数据备份不属于 AWS 上 Red Hat OpenShift Service 服务的一部分。

详情

下表仅适用于非 STS 集群。Red Hat 在特殊情况下会使用以下组件。

组件 快照频率 保留期 备注

完整对象存储备份

每日

7 天

这是所有 Kubernetes 对象(如 etcd)的完整备份。此备份计划不备份持久卷 (PV)。

每周

30 天

完整对象存储备份

每小时

24 小时

这是所有 Kubernetes 对象(如 etcd)的完整备份。此备份计划不备份 PV。

节点根卷

从不

N/A

节点被认为是短期存在的。节点的根卷中不应存储任何关键数据。

OpenShift 版本

AWS 上的 Red Hat OpenShift 服务作为一项服务运行,并始终保持最新的 OpenShift Container Platform 版本。可安排升级到最新版本。

升级

可以使用 ROSA CLI(`rosa`)或通过 OpenShift 集群管理器来安排升级。

有关升级策略和流程的更多信息,请参见AWS 上的 Red Hat OpenShift 服务生命周期

Windows 容器

目前,AWS 上的 Red Hat OpenShift 服务尚不支持 Windows 容器。

容器引擎

AWS 上的 Red Hat OpenShift 服务运行在 OpenShift 4 上,并使用CRI-O作为唯一可用的容器引擎。

操作系统

AWS 上的 Red Hat OpenShift 服务运行在 OpenShift 4 上,并使用 Red Hat CoreOS 作为所有控制平面和工作节点的操作系统。

Red Hat Operator 支持

Red Hat 工作负载通常指通过 Operator Hub 提供的 Red Hat 提供的 Operator。Red Hat 工作负载不由 Red Hat SRE 团队管理,必须部署在工作节点上。这些 Operator 可能需要额外的 Red Hat 订阅,并可能产生额外的云基础设施成本。这些 Red Hat 提供的 Operator 的示例包括:

  • Red Hat Quay

  • Red Hat Advanced Cluster Management

  • Red Hat Advanced Cluster Security

  • Red Hat OpenShift Service Mesh

  • OpenShift Serverless

  • Red Hat OpenShift Logging

  • Red Hat OpenShift Pipelines

Kubernetes Operator 支持

OperatorHub 市场中列出的所有 Operator 都应该可以安装。这些 Operator 被视为客户工作负载,不由 Red Hat SRE 监控。

安全

本节提供有关 AWS 上 Red Hat OpenShift 服务的安全服务定义的信息。

身份验证提供程序

可以使用OpenShift 集群管理器或集群创建过程,或者使用 ROSA CLI(`rosa`)来配置集群的身份验证。ROSA 不是身份提供程序,所有对集群的访问都必须由客户作为其集成解决方案的一部分进行管理。同时配置多个身份提供程序是受支持的。支持以下身份提供程序:

  • GitHub 或 GitHub Enterprise

  • GitLab

  • Google

  • LDAP

  • OpenID Connect

  • htpasswd

特权容器

具有 `cluster-admin` 角色的用户可以使用特权容器。作为 `cluster-admin` 使用特权容器受《Red Hat 企业协议附录 4》(在线订阅服务)中的责任和排除说明的约束。

客户管理员用户

除了普通用户之外,AWS 上的 Red Hat OpenShift 服务还提供对名为 `dedicated-admin` 的 ROSA 特定组的访问。集群中属于 `dedicated-admin` 组的任何用户:

  • 对集群上所有客户创建的项目具有管理员访问权限。

  • 可以管理集群上的资源配额和限制。

  • 可以添加和管理 `NetworkPolicy` 对象。

  • 能够查看有关集群中特定节点和 PV 的信息,包括调度程序信息。

  • 可以访问集群上的保留 `dedicated-admin` 项目,这允许创建具有提升权限的服务帐户,并且还可以更新集群上项目的默认限制和配额。

  • 可以从 OperatorHub 安装 Operator,并在所有 `*.operators.coreos.com` API 组中执行所有动词。

集群管理员角色

AWS 上 Red Hat OpenShift 服务的管理员对组织的集群具有 `cluster-admin` 角色的默认访问权限。登录到具有 `cluster-admin` 角色的帐户时,用户可以增加权限以运行特权安全上下文。

项目自助服务

默认情况下,所有用户都可以创建、更新和删除其项目。如果 `dedicated-admin` 组的成员从已认证用户中删除 `self-provisioner` 角色,则可以限制此功能。

$ oc adm policy remove-cluster-role-from-group self-provisioner system:authenticated:oauth

可以通过应用以下方法来恢复限制:

$ oc adm policy add-cluster-role-to-group self-provisioner system:authenticated:oauth

法规遵从性

请参阅《了解 ROSA 的流程和安全性》中的“合规性”表,了解最新的合规性信息。

网络安全

在 AWS 上的 Red Hat OpenShift 服务中,AWS 为所有负载均衡器提供标准 DDoS 保护,称为 AWS Shield。这提供了 95% 的保护,可以防御针对 AWS 上 Red Hat OpenShift 服务使用的所有面向公众的负载均衡器的最常用的 3 层和 4 层攻击。为来自 `haproxy` 路由器的 HTTP 请求添加了 10 秒的超时,以接收响应,否则连接将关闭,以提供额外的保护。

etcd 加密

在 AWS 上的 Red Hat OpenShift 服务中,控制平面存储默认情况下处于静止状态加密,这包括 etcd 卷的加密。此存储级加密通过云提供商的存储层提供。

您还可以启用 etcd 加密,这会加密 etcd 中的关键值,但不加密密钥。如果启用 etcd 加密,则会加密以下 Kubernetes API 服务器和 OpenShift API 服务器资源:

  • 密钥

  • 配置映射

  • 路由

  • OAuth 访问令牌

  • OAuth 授权令牌

etcd 加密功能默认情况下未启用,只能在集群安装时启用。即使启用了 etcd 加密,任何具有对控制平面节点或 `cluster-admin` 权限访问权限的人员都可以访问 etcd 关键值。

通过为 etcd 中的关键值启用 etcd 加密,您将产生大约 20% 的性能开销。开销是由于除了默认的控制平面存储加密(加密 etcd 卷)之外,还引入了第二层加密。Red Hat 建议您仅在特定情况下需要时才启用 etcd 加密。