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 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 运行以下命令,找到此发行版本镜像中的所有
CredentialsRequest
对象: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 的
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: TechPreviewNoUpgrade
Copy 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 处于可升级状态。