API Server は ACK クラスターのコントロールプレーンにおけるコアコンポーネントです。API Server は、LoopbackClient を使用したサーバー側の操作に内部証明書を使用します。コミュニティバージョンでは、この証明書の有効期間は 1 年で、自動的にはローテーションされません。証明書は、API Server の Pod が再起動したときにのみローテーションされます。コミュニティでは、この証明書の有効期間を延長する予定はありません。詳細については、#86552 をご参照ください。
さまざまなお客様の運用・保守 (O&M) の実践に対応するため、Container Service for Kubernetes (ACK) では、この組み込み証明書のデフォルトの有効期間を 10 年に変更しました。
影響範囲
この変更が影響するのは、API Server の組み込み LoopbackClient 証明書の有効期間が 1 年である ACK マネージドクラスターおよび ACK 専用クラスターです。
2023年3月15日より前に作成された ACK クラスターでは、有効期間が 1 年の API Server の組み込み LoopbackClient 証明書が使用されています。
2023年3月15日以降に作成された、または バージョン 1.20.11 以降にアップグレードされた ACK クラスターは影響を受けません。これらのクラスターでは、有効期間が 10 年の API Server の組み込み LoopbackClient 証明書が使用されています。
ソリューション
ACK マネージドクラスター
お使いの ACK マネージドクラスター の作成日時を確認することで、影響を受けるかどうかを判断できます。1 年間の LoopbackClient 証明書を持つ ACK マネージドクラスター については、コンテナサービス for Kubernetes が 2023 年 11 月 1 日までにマネージドコンポーネントに対する自己チェックとローリング再起動を完了します。Alibaba Cloud によるマネージド側の API Server の自動再起動を希望しない場合は、クラスターを速やかに バージョン 1.24 以降にアップグレードする必要があります。具体的な手順については、「クラスターを手動でアップグレードする」をご参照ください。
ACK 専用クラスター
マスターノードにログインし、次のコマンドを実行して LoopbackClient 証明書の有効期限を確認します。
コマンド内の xx.xx.xx.xx は、マスターノードのローカル IP アドレスを表します。
curl --resolve apiserver-loopback-client:6443:xx.xx.xx.xx -k -v https://apiserver-loopback-client:6443/healthz 2>&1 |grep expireクラスターで、有効期間が切れているか、または有効期限が迫っている 1 年証明書が使用されている場合は、ACK クラスターをバージョン 1.24 以降にアップグレードする必要があります。手順については、「クラスターの手動アップグレード」をご参照ください。ACK マネージドクラスター Pro 版への移行を推奨します。詳細な手順については、「クラスターの手動アップグレード」および「ACK 専用クラスターの ACK マネージドクラスター Pro 版へのホットマイグレーション」をご参照ください。
短期間で ACK 専用クラスターをアップグレードできない場合は、クラスター内のすべてのマスターノードにログインし、API Server を手動で再起動してください。