本页面介绍如何在 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字段中指定的路径。
- 如果您使用 - gkeadm创建了管理员工作站,请确保管理员工作站配置文件中的- 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 - 如需了解详情,请参阅诊断用户集群。