×

用途

etcd 证书由 etcd-signer 签名;它们来自引导过程中生成的证书颁发机构 (CA)。

过期时间

CA 证书有效期为 10 年。对等方、客户端和服务器证书有效期为三年。

轮换 etcd 证书

etcd 证书使用 etcd 集群操作符自动轮换。但是,如果必须在自动轮换之前轮换证书,则可以手动轮换。

步骤
  1. 通过运行以下命令创建当前签名者证书的备份副本

    $ oc get secret -n openshift-etcd etcd-signer -oyaml > signer_backup_secret.yaml
  2. 通过运行以下命令删除现有签名者证书

    $ oc delete secret -n openshift-etcd etcd-signer
  3. 等待静态 Pod 滚动更新,方法是运行以下命令。静态 Pod 滚动更新可能需要几分钟才能完成。

    $ oc wait --for=condition=Progressing=False --timeout=15m clusteroperator/etcd

从捆绑包中删除未使用的证书颁发机构

手动轮换不会立即更新信任捆绑包以删除先前签名者证书的公钥。

签名者证书的公钥将在过期日期删除,但是如果必须在过期之前删除公钥,则可以删除它。

步骤
  1. 通过运行以下命令删除密钥

    $ oc delete configmap -n openshift-etcd etcd-ca-bundle
  2. 等待静态 Pod 滚动更新,方法是运行以下命令。捆绑包将使用当前签名者证书重新生成,所有未知或未使用的密钥都将被删除。

    $ oc adm wait-for-stable-cluster --minimum-stable-period 2m

etcd 证书轮换警报和指标签名者证书

两个警报会通知用户有关挂起的 etcd 证书过期。

etcdSignerCAExpirationWarning

在签名者过期前 730 天发生。

etcdSignerCAExpirationCritical

在签名者过期前 365 天发生。

这些警报跟踪 openshift-etcd 命名空间中签名者证书颁发机构的过期日期。

您可以出于以下原因轮换证书

  • 您收到过期警报。

  • 私钥泄露。

私钥泄露时,必须轮换所有证书。

OpenShift Container Platform 度量系统有一个 etcd 签名者。在“轮换 etcd 证书”中替换以下度量参数。

  • etcd-signer 替换为 etcd-metric-signer

  • etcd-ca-bundle 替换为 etcd-metrics-ca-bundle

管理

这些证书仅由系统管理,并自动轮换。

服务

etcd 证书用于 etcd 成员节点之间的加密通信以及加密的客户端流量。etcd 和与其通信的其他进程会生成和使用以下证书。

  • 对等节点证书:用于 etcd 成员节点之间的通信。

  • 客户端证书:用于加密的服务器-客户端通信。目前只有 API 服务器使用客户端证书,除了代理之外,其他任何服务都不应直接连接到 etcd。客户端密钥 (etcd-clientetcd-metric-clientetcd-metric-signeretcd-signer) 已添加到 openshift-configopenshift-monitoringopenshift-kube-apiserver 命名空间。

  • 服务器证书:etcd 服务器用于验证客户端请求的证书。

  • 指标证书:所有指标使用者都使用指标客户端证书连接到代理。

其他资源