IBM Cloud Docs
在集群中轮换 CA 证书

在集群中轮换 CA 证书

撤销集群中的现有认证中心 (CA) 证书,并发放新的 CA 证书。

缺省情况下,将管理认证中心 (CA) 证书以保护对集群的各种组件 (例如主 API 服务器) 的访问。 在使用集群时,您可能希望撤销现有 CA 颁发的证书。 例如,您团队的管理员可以使用证书签名请求 (CSR) 为集群中的工作程序节点手动生成由集群的 CA 签名的证书。 如果管理员离开您的组织,您可以通过为集群创建新的 CA 和证书,并除去旧的 CA 和证书,确保他们不再具有对集群的管理访问权。

  1. 为您的集群创建一个CA。 将针对集群主组件发出此新 CA 签署的证书,并刷新 API 服务器。

    ibmcloud ks cluster ca create -c CLUSTER
    
  2. 确保集群的主节点运行状况正常,API 服务器刷新已完成,并且所有主节点更新都已完成。 主API服务器可能需要几分钟才能刷新。

    ibmcloud ks cluster get --cluster CLUSTER
    
  3. 检查 CA 创建的状态。 在输出中,记下 操作已完成 字段中的时间戳记。

    ibmcloud ks cluster ca status -c CLUSTER
    

    示例输出

    Status:             CA certificate creation complete. Ensure that your worker nodes are reloaded before you start a CA certificate rotation.
    Action Started:     2020-08-30T16:17:56+0000
    Action Completed:   2020-08-30T16:21:13+0000
    
  4. 将更新后的 Kubernetes 配置数据和证书下载到集群的 kubeconfig 文件中。

    ibmcloud ks cluster config -c CLUSTER --admin --network
    
  5. 更新依赖于先前证书的任何工具。

    • 如果在自己的服务 (例如 Travis 或 Jenkins) 中使用集群的 kubeconfig 文件中的证书,或者如果使用 calicoctl 来管理 Calico 网络策略,请更新服务和自动化以使用新证书。
  6. 验证新证书上的时间戳记是否晚于您在步骤 3 中找到的时间戳记。 要检查证书上的日期,可以使用诸如 KeyCDN之类的工具。

  7. 重新装入经典工作程序节点替换 VPC 工作程序节点 以获取新 CA 签署的证书。

  8. 使用新证书轮换旧证书。 将除去集群中的旧 CA 证书。

    ibmcloud ks cluster ca rotate -c CLUSTER
    
  9. 检查 CA 证书轮换的状态。

    ibmcloud ks cluster ca status -c CLUSTER
    

    示例输出

    Status:             CA certificate rotation complete.
    Action Started:     2020-08-30T16:37:56+0000
    Action Completed:   2020-08-30T16:41:13+0000