Openshift 4.6 使用 vsphere-cloud-credentials 创建机密

问题描述

我想使用 vsphere 提供程序创建机器集。在 yaml 文件中,我看到: credentialsSecret: name: vsphere-cloud-credentials。这个秘密应该是什么样子的?那应该是登录到vsphere 作为密钥和密码作为值的键/值秘密吗?如果我的登录名是“@”并且我得到 Error "Invalid value: "test@test": a valid config key must consist of alphanumeric characters,'-','_' or '.' (e.g. 'key.name',or 'KEY_NAME',or 'key-name',regex used for validation is '[-._a-zA-Z0-9]+')" for field "data[test@test]".

解决方法

kind: Secret
apiVersion: v1
metadata:
  name: vsphere-cloud-credentials
  namespace: openshift-machine-api
  annotations:
    cloudcredential.openshift.io/credentials-request: openshift-cloud-credential-operator/openshift-machine-api-vsphere
data:
  vsphere-api-url.domain.com.password: xxxxx(base64-encoded)
  vsphere-api-url.domain.com.username: xxxxx(base64-encoded)
type: Opaque

我认为它应该看起来像这样,如果我们在 install-config.yaml 中使用 vsphere 提供程序和凭据安装集群,那么秘密看起来像这样,请问您为什么不在安装时使用vsphere 提供程序?