5.6. 証明書ローテーションの設定
証明書ローテーションパラメーターを設定して、既存の証明書を置き換えます。
5.6.1. 証明書ローテーションの設定 リンクのコピーリンクがクリップボードにコピーされました!
これは、Web コンソールでの OpenShift Virtualization のインストール時に、または HyperConverged
カスタムリソース (CR) でインストール後に実行することができます。
前提条件
-
OpenShift CLI (
oc
) がインストールされている。
手順
以下のコマンドを実行して
HyperConverged
CR を開きます。oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の例のように
spec.certConfig
フィールドを編集します。システムのオーバーロードを避けるには、すべての値が 10 分以上であることを確認します。golangParseDuration
形式 に準拠する文字列として、すべての値を表現します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - YAML ファイルをクラスターに適用します。
5.6.2. 証明書ローテーションパラメーターのトラブルシューティング リンクのコピーリンクがクリップボードにコピーされました!
1 つ以上の certConfig
値を削除すると、デフォルト値が以下のいずれかの条件と競合する場合を除き、デフォルト値に戻ります。
-
ca.renewBefore
の値はca.duration
の値以下である必要があります。 -
server.duration
の値はca.duration
の値以下である必要があります。 -
server.renewBefore
の値はserver.duration
の値以下である必要があります。
デフォルト値がこれらの条件と競合すると、エラーが発生します。
以下の例で server.duration
値を削除すると、デフォルト値の 24h0m0s
は ca.duration
の値よりも大きくなり、指定された条件と競合します。
例
これにより、以下のエラーメッセージが表示されます。
error: hyperconvergeds.hco.kubevirt.io "kubevirt-hyperconverged" could not be patched: admission webhook "validate-hco.kubevirt.io" denied the request: spec.certConfig: ca.duration is smaller than server.duration
error: hyperconvergeds.hco.kubevirt.io "kubevirt-hyperconverged" could not be patched: admission webhook "validate-hco.kubevirt.io" denied the request: spec.certConfig: ca.duration is smaller than server.duration
エラーメッセージには、最初の競合のみが記載されます。続行する前に、すべての certConfig の値を確認します。