4.6. etcd 証明書
4.6.1. 目的 リンクのコピーリンクがクリップボードにコピーされました!
etcd 証明書は etcd-signer によって署名されます。それらの証明書はブートストラッププロセスで生成される認証局 (CA) から提供されます。
4.6.2. 有効期限 リンクのコピーリンクがクリップボードにコピーされました!
CA 証明書は 10 年間有効です。ピア、クライアント、およびサーバーの証明書は 3 年間有効です。
4.6.3. etcd 証明書のローテーション リンクのコピーリンクがクリップボードにコピーされました!
etcd 証明書は、etcd クラスター Operator を使用して自動的にローテーションされます。ただし、証明書を自動的にローテーションする前にローテーションする必要がある場合は、手動でローテーションすることができます。
手順
次のコマンドを実行して、現在の署名者証明書のバックアップコピーを作成します。
oc get secret -n openshift-etcd etcd-signer -oyaml > signer_backup_secret.yaml
$ oc get secret -n openshift-etcd etcd-signer -oyaml > signer_backup_secret.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、既存の署名者証明書を削除します。
oc delete secret -n openshift-etcd etcd-signer
$ oc delete secret -n openshift-etcd etcd-signerCopy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、静的 Pod のロールアウトを待ちます。静的 Pod のロールアウトが完了するまでに数分かかる場合があります。
oc wait --for=condition=Progressing=False --timeout=15m clusteroperator/etcd
$ oc wait --for=condition=Progressing=False --timeout=15m clusteroperator/etcdCopy to Clipboard Copied! Toggle word wrap Toggle overflow
4.6.4. 未使用の認証局をバンドルから削除する リンクのコピーリンクがクリップボードにコピーされました!
手動ローテーションでは、署名者証明書の公開鍵を削除するために、トラストバンドルをすぐに更新することはしません。
署名者証明書の公開鍵は、有効期限が切れると削除されますが、有効期限が切れる前に削除する必要がある場合は、独自に削除できます。
手順
次のコマンドを実行してキーを削除します。
oc delete configmap -n openshift-etcd etcd-ca-bundle
$ oc delete configmap -n openshift-etcd etcd-ca-bundleCopy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、静的 Pod のロールアウトを待ちます。バンドルは現在の署名者証明書を使用して再生成され、不明なキーまたは未使用のキーはすべて削除されます。
oc adm wait-for-stable-cluster --minimum-stable-period 2m
$ oc adm wait-for-stable-cluster --minimum-stable-period 2mCopy to Clipboard Copied! Toggle word wrap Toggle overflow
4.6.5. etcd 証明書ローテーションアラートおよびメトリクス署名者証明書 リンクのコピーリンクがクリップボードにコピーされました!
2 つのアラートが、保留中の etcd 証明書の有効期限切れについてユーザーに通知します。
etcdSignerCAExpirationWarning- 署名者の有効期限が切れるまで 730 日間通知されます。
etcdSignerCAExpirationCritical- 署名者の有効期限が切れるまで 365 日間通知されます。
これらのアラートは、openshift-etcd namespace 内の署名者認証局の有効期限の日付を追跡します。
証明書をローテーションできる理由は次のとおりです。
- 有効期限切れのアラートが表示された場合
- 秘密鍵が漏洩した場合
秘密鍵が漏洩した場合は、すべての証明書をローテーションする必要があります。
OpenShift Container Platform のメトリクスシステムには、専用の etcd 署名者が存在します。etcd 証明書のローテーション では、次のメトリクス用のパラメーターに置き換えてください。
-
etcd-signerの代わりにetcd-metric-signerを使用 -
etcd-ca-bundleの代わりにetcd-metrics-ca-bundleを使用
4.6.6. 管理 リンクのコピーリンクがクリップボードにコピーされました!
これらの証明書はシステムによってのみ管理され、自動的にローテーションされます。
4.6.7. サービス リンクのコピーリンクがクリップボードにコピーされました!
etcd 証明書は、etcd メンバーピアと暗号化されたクライアントトラフィック間の暗号化された通信に使用されます。以下の証明書は etcd および etcd と通信する他のプロセスによって生成され、使用されます。
- ピア証明書: etcd メンバー間の通信に使用されます。
-
クライアント証明書: 暗号化されたサーバーとクライアント間の通信に使用されます。現時点で、クライアント証明書は API サーバーによってのみ使用され、プロキシーを除いてその他のサービスは etcd に直接接続されません。クライアントシークレット (
etcd-client、etcd-metric-client、etcd-metric-signer、etcd-signer) が、openshift-config、openshift-etcd、openshift-etcd-operator、およびopenshift-kube-apiservernamespace に追加されます。 - サーバー証明書: クライアント要求を認証するために etcd サーバーによって使用されます。
- メトリック証明書: メトリックのすべてのコンシューマーは metric-client 証明書を使用してプロキシーに接続します。