This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.5.3. 为 Azure 手动创建 IAM
在无法访问云身份和访问管理(IAM)API 的环境中,或者管理员更不希望将管理员级别的凭证 secret 存储在集群 kube-system
命名空间中时,可以在安装前将 Cloud Credential Operator(CCO)放入手动模式。
5.3.1. 在 kube-system 项目中存储管理员级别的 secret 的替代方案 复制链接链接已复制到粘贴板!
Cloud Credential Operator(CCO) 将云供应商凭证作为 Kubernetes 自定义资源定义 (CRD) 进行管理。您可以通过在 install-config.yaml
文件中为 credentialsMode
参数设置不同的值,来配置 CCO 来满足机构的安全要求。
如果您不希望在集群 kube-system
项目中存储管理员级别的凭证 secret,您可以在安装 OpenShift Container Platform 时把 CCO 的 credentialsMode
参数设置为 Manual
,并手动管理您的云凭证。
使用手动模式可允许每个集群组件只拥有所需的权限,而无需在集群中存储管理员级别的凭证。如果您的环境没有连接到云供应商公共 IAM 端点,您还可以使用此模式。但是,每次升级都必须手动将权限与新发行镜像协调。您还必须手动为每个请求它们的组件提供凭证。
5.3.2. 手动创建 IAM 复制链接链接已复制到粘贴板!
在无法访问云身份和访问管理(IAM)API 的环境中,或者管理员更不希望将管理员级别的凭证 secret 存储在集群 kube-system
命名空间中时,可以在安装前将 Cloud Credential Operator(CCO)放入手动模式。
流程
切换到包含安装程序的目录并创建
install-config.yaml
文件:openshift-install create install-config --dir <installation_directory>
$ openshift-install create install-config --dir <installation_directory>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 其中
<installation_directory>
是安装程序在其中创建文件的目录。编辑
install-config.yaml
配置文件,把其中的credentialsMode
参数设置为Manual
。示例
install-config.yaml
配置文件Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 添加这一行将
credentialsMode
参数设置为Manual
。
要生成清单,请在包含安装程序的目录中运行以下命令:
openshift-install create manifests --dir <installation_directory>
$ openshift-install create manifests --dir <installation_directory>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 从包含安装程序的目录中,获取
openshift-install
二进制文件要使用的 OpenShift Container Platform 发行镜像详情:openshift-install version
$ openshift-install version
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
release image quay.io/openshift-release-dev/ocp-release:4.y.z-x86_64
release image quay.io/openshift-release-dev/ocp-release:4.y.z-x86_64
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 针对您要部署到的云,找到此发行版本镜像中的所有
CredentialsRequests
对象:oc adm release extract quay.io/openshift-release-dev/ocp-release:4.y.z-x86_64 --credentials-requests --cloud=azure
$ oc adm release extract quay.io/openshift-release-dev/ocp-release:4.y.z-x86_64 --credentials-requests --cloud=azure
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 此命令为每个
CredentialsRequest
对象创建一个 YAML 文件。CredentialsRequest
对象示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
在之前生成的
openshift-install
清单目录中为 secret 创建 YAML 文件。secret 必须使用在spec.secretRef
中为每个credentialsRequest
定义的命名空间和 secret 名称存储 。secret 数据的格式因云供应商而异。 从包含安装程序的目录中,开始创建集群:
openshift-install create cluster --dir <installation_directory>
$ openshift-install create cluster --dir <installation_directory>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要在升级使用手动维护凭证的集群前,必须确保 CCO 处于可升级状态。详情请参阅您的云供应商的安装内容"使用手动维护凭证对集群进行升级"部分。
5.3.3. 使用手动维护的凭证升级集群 复制链接链接已复制到粘贴板!
默认情况下,带有手动维护凭证的集群的 Cloud Credential Operator (CCO) Ugradable
状态为 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
字段中添加upgradeable-to
注解:oc edit cloudcredential cluster
$ oc edit cloudcredential cluster
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 要添加的文本
... metadata: annotations: cloudcredential.openshift.io/upgradeable-to: <version_number> ...
... metadata: annotations: cloudcredential.openshift.io/upgradeable-to: <version_number> ...
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 其中
<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 升级。
5.3.4. 后续步骤 复制链接链接已复制到粘贴板!
安装 OpenShift Container Platform 集群:
- 使用安装程序置备的基础架构默认选项在 Azure 上快速安装集群
- 在安装程序置备的基础架构中使用云自定义安装集群
- 使用网络自定义在安装程序置备的基础架构上安装集群