ビュー:
プロファイル適用性: レベル1 - ワーカーノード
kubeletクライアント証明書のローテーションを有効にする。
--rotate-certificates設定は、既存の認証情報が期限切れになると、kubeletが新しいCSRを作成してクライアント証明書をローテーションするようにします。この自動定期ローテーションにより、証明書の期限切れによるダウンタイムが発生せず、CIAセキュリティの三要素における可用性が確保されます。
注意
注意
この推奨事項は、kubeletがAPIサーバから証明書を取得する場合にのみ適用されます。kubeletの証明書が外部の認証機関やツール (例: Vault) から取得される場合は、証明書の更新を自分で管理する必要があります。
注意
注意
この機能は、RotateKubeletClientCertificate機能ゲートを有効にする必要があります (Kubernetes v1.7以降ではデフォルトです)
注意
注意
デフォルトでは、kubeletクライアント証明書のローテーションが有効になっています。

監査

各ノードで次のコマンドを実行します。
ps -ef | grep kubelet
--rotate-certificates引数が存在しないか、trueに設定されていることを確認してください。--rotate-certificates引数が存在しない場合、--configで指定されたKubelet設定ファイルが存在する場合、そのファイルにrotateCertificates: falseが含まれていないことを確認してください。

修復

Kubelet設定ファイルを使用している場合、ファイルを編集して行rotateCertificates: trueを追加するか、デフォルト値を使用するために完全に削除してください。
コマンドライン引数を使用する場合、各ワーカーノードのkubeletサービスファイル/etc/kubernetes/kubelet.confを編集し、KUBELET_CERTIFICATE_ARGS変数から--rotate-certificates=false引数を削除してください。
お使いのシステムに基づいて、kubeletサービスを再起動してください。例:
systemctl daemon-reload
systemctl restart kubelet.service