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 其中
<installation_directory>是安装程序在其中创建文件的目录。在包含安装程序的目录中,运行以下命令来获取构建
openshift-install二进制文件的 OpenShift Container Platform 发行镜像的详情:openshift-install version
$ openshift-install versionCopy 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_64Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令,找到此发行版本镜像中的所有
CredentialsRequest对象:oc adm release extract quay.io/openshift-release-dev/ocp-release:4.y.z-x86_64 \ --credentials-requests \ --cloud=gcp
$ oc adm release extract quay.io/openshift-release-dev/ocp-release:4.y.z-x86_64 \ --credentials-requests \ --cloud=gcpCopy 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 的
CredentialsRequest对象示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow Secret对象示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要发行镜像包含通过
TechPreviewNoUpgrade功能集启用的技术预览功能的CredentialsRequest对象。您可以使用release.openshift.io/feature-set: TechPreviewNoUpgrade注解来识别这些对象。- 如果不使用这些功能,请不要为这些对象创建 secret。为不使用的技术预览功能创建 secret 可能会导致安装失败。
- 如果使用这些功能,必须为对应的对象创建 secret。
要使用
TechPreviewNoUpgrade注解查找CredentialsRequest对象,请运行以下命令:grep "release.openshift.io/feature-set" *
$ grep "release.openshift.io/feature-set" *Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
0000_30_capi-operator_00_credentials-request.yaml: release.openshift.io/feature-set: TechPreviewNoUpgrade
0000_30_capi-operator_00_credentials-request.yaml: release.openshift.io/feature-set: TechPreviewNoUpgradeCopy to Clipboard Copied! Toggle word wrap Toggle overflow
从包含安装程序的目录中,开始创建集群:
openshift-install create cluster --dir <installation_directory>
$ openshift-install create cluster --dir <installation_directory>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要在升级使用手动维护凭证的集群前,您必须确保 CCO 处于可升级状态。