18.4. 使用手动模式
Amazon Web Services(AWS)、Microsoft Azure 和 Google Cloud Platform(GCP)支持手动模式。
在手动模式中,用户管理云凭证而不是 Cloud Credential Operator(CCO)。要使用此模式,您必须检查发行镜像中用于运行或安装的 OpenShift Container Platform 版本的 CredentialsRequest
CR,在底层云供应商中创建对应的凭证,并在正确的命名空间中创建 Kubernetes Secret,以满足集群云供应商的所有 CredentialsRequest
CR。
使用手动模式可允许每个集群组件只拥有所需的权限,而无需在集群中存储管理员级别的凭证。此模式还需要连接到 AWS 公共 IAM 端点。但是,每次升级都必须手动将权限与新发行镜像协调。
有关将云供应商配置为使用手动模式的详情,请参阅为 AWS、Azure 或 GCP 手动创建 IAM。
18.4.1. 使用 AWS STS 的手动模式
您可以使用手动模式配置 AWS 集群,以使用 Amazon Web Services Secure Token Service(AWS STS)。借助这一配置,CCO 对不同组件使用临时凭证。
18.4.2. 使用手动维护的凭证升级集群
默认情况下,带有手动维护凭证的集群的 Cloud Credential Operator(CCO)U gradable
状态为 False
。
-
对于次发行版本(例如从 4.7 升级到 4.8),这个状态会阻止升级,直到您解决了任何更新的权限并
添加了 CloudCredential
资源,以指示下一版本根据需要更新权限。此注解将Upgradable
状态更改为True
。 - 对于 z-stream 版本(例如从 4.8.9 到 4.8.10),不会添加或更改任何权限,因此不会阻止升级。
在使用手动维护凭证升级集群前,您必须为要升级到的发行镜像创建新凭证。另外,您必须检查现有凭证所需的权限,并满足新版本中这些组件的任何新权限要求。
流程
提取并检查
新版本的 CredentialsRequest
自定义资源。详情请参阅您的云供应商的“手动创建 IAM”部分来了解如何获取和使用您的云所需的凭证。
更新集群中手动维护的凭证:
-
为新发行镜像添加的任何
CredentialsRequest
自定义资源创建新 secret。 -
如果存储在 secret 中的任何现有凭证的
CredentialsRequest
自定义资源更改了其权限要求,请根据需要更新权限。
-
为新发行镜像添加的任何
当所有 secret 都对新发行版本正确时,表示集群已准备好升级:
-
以具有
cluster-admin
角色的用户身份登录 OpenShift Container Platform CLI。 编辑
CloudCredential
资源,以在metadata
字段中添加可升级至
注解:$ oc edit cloudcredential cluster
要添加的文本
... metadata: annotations: cloudcredential.openshift.io/upgradeable-to: <version_number> ...
其中
<version_number>
是您要升级到的版本,格式为x.y.z
。例如,OpenShift Container Platform4.8.2
代表 OpenShift Container Platform 4.8.2。添加可升级状态进行更改的注解后,可能需要几分钟时间。
-
以具有
验证 CCO 是否可升级:
-
在 Web 控制台的 Administrator 视角中,导航到 Administration
Cluster Settings。 - 要查看 CCO 状态详情,请点击 Cluster Operators 列表中的 cloud-credential。
-
如果 Conditions 部分中的 Upgradeable 状态为 False,请验证
upgradeable-to
注解没有拼写错误。
-
在 Web 控制台的 Administrator 视角中,导航到 Administration
当 Conditions 部分中的 Upgradeable 状态为 True 时,您可以开始 OpenShift Container Platform 升级。