本页面介绍如何在 vCenter CA 证书发生变化时更新对证书的引用,因为正在运行的管理员集群和用户集群必须知晓相关更改。这会影响 Google Distributed Cloud 的管理员集群配置文件和用户集群配置文件中的 vCenter.caCertPath
字段。
您可以使用此处说明的 gkectl update
命令更新证书引用。
更新集群配置文件中引用的 vCenter CA 证书
要更新正在运行的管理员和用户集群以使用新的证书,请执行以下操作:
检索新的 vCenter CA 证书并将其解压缩:
curl -o certs.zip https://VCENTER_IP_ADDRESS_OR_FQDN/certs/download.zip unzip certs.zip
如果要允许未知证书,您可以使用
-k
标志。这是为了避免您访问 vCenter 可能遇到的任何证书问题。确定哪个 vCenter 证书有效。解压缩的
..../certs/lin
文件夹中只有一个 Linux 证书文件是有效的 vCenter 证书。如需确定哪个文件是有效的 vCenter 证书,请执行以下操作:在已安装
govc
的管理员工作站上,设置以下环境变量。如果尚未完成,请下载并安装 govc 工具:export GOVC_URL=https://VCENTER_IP_ADDRESS_OR_FQDN export GOVC_USERNAME=VCENTER_USERNAME export GOVC_PASSWORD=VCENTER_PASSWORD export GOVC_TLS_CA_CERTS=FULL_PATH_OF_EXTRACTED_LIN_FILE export GOVC_INSECURE=false
替换以下内容:
VCENTER_IP_ADDRESS_OR_FQDN
:vCenter Server 的 IP 地址或 FQDN。VCENTER_USERNAME
:vCenter Server 的用户名。VCENTER_PASSWORD
:指定用户名的密码。FULL_PATH_OF_EXTRACTED_LIN_FILE
:您要进行有效性测试的 Linux 证书文件的完整路径。
如需验证 vCenter 证书是否有效,请运行
govc about
命令:govc about
如果 vCenter 证书有效,
govc about
命令会输出与以下内容类似的 vCenter Server 详细信息:FullName: VMware Center Server 7.0.3 build-24322018 Name: VMware Center Server Vendor: VMware, Inc. Version: 7.0.3 Build: 24322018 OS type: linux-x64 API type: VirtualCenter API version: 7.0.3.0 Product ID: vpx UUID: 475fa366-faa9-43f0-9417-e6dadc55514c
如果证书无效,您应该会看到
x509
错误。如果您看到x509
错误,请更新FULL_PATH_OF_EXTRACTED_LIN_FILE
环境变量,使其指向提取的..../certs/lin
文件夹中的其他 Linux 证书文件,然后再次运行govc about
命令。重复执行步骤 a 和 b,直到找到有效证书,或者直到您测试完提取的..../certs/lin
文件夹中的每个 Linux 证书文件。
如需备份旧的 vCenter CA 证书文件(位于管理员集群配置文件的
vCenter.caCertPath
字段中指定的路径),请将其重命名为vcenter-ca-cert.pem.old
。将
..../certs/lin
文件夹中的新有效证书文件重命名为vcenter-ca-cert.pem
,然后将其移至管理员集群配置文件的vCenter.caCertPath
字段中指定的路径。更新管理员集群:
gkectl update admin --config ADMIN_CLUSTER_CONFIG --kubeconfig ADMIN_CLUSTER_KUBECONFIG
替换以下内容:
ADMIN_CLUSTER_CONFIG
:管理员集群配置文件的路径
更新命令完成后,管理员集群将使用新证书。
验证管理员集群是否健康:
gkectl diagnose cluster --kubeconfig ADMIN_CLUSTER_KUBECONFIG
如需了解详情,请参阅诊断管理员集群。
在每个用户集群配置文件中,将
vCenter.caCertPath
设置为新vcenter-ca-cert.pem
文件的路径。针对每个用户集群运行
gkectl update
命令:gkectl update cluster --config USER_CLUSTER_CONFIG --kubeconfig ADMIN_CLUSTER_KUBECONFIG
替换以下内容:
USER_CLUSTER_CONFIG
:用户集群配置文件的路径
为特定用户集群完成更新命令后,该集群将使用新的证书。
验证用户集群是否健康:
gkectl diagnose cluster --kubeconfig ADMIN_CLUSTER_KUBECONFIG \ --cluster-name USER_CLUSTER_NAME
如需了解详情,请参阅诊断用户集群。