RSS Kubernetes ブログ
フォロー
Kubernetes v1.34: ノード cgroup ドライバーの自動設定が一般提供開始
Kubernetes ユーザーにとって、cgroup ドライバーの設定は歴史的に複雑な問題でした。Linux システムには、cgroupfs と systemd の 2 つの cgroup ドライバーがあります。以前は、kubelet と containerd や CRI-O などの CRI 実装の両方を同じように設定する必要があり、明確なエラーメッセージなしに kubelet の誤動作を避ける必要がありました。これは、クラスター管理者に大きなフラストレーションを引き起こすことがよくありました。Kubernetes v1.28.0 では、KubeletCgroupDriverFromCRI 機能ゲートが導入されました。これにより、kubelet は CRI 実装に好みの cgroup ドライバーを照会できるようになりました。数回のリリースサイクルを経て、この機能は Kubernetes 1.34.0 で一般提供 (GA) に達しました。これを利用するには、管理者は CRI 実装が十分に更新されていることを確認する必要があります。Containerd はバージョン v2.0.0 以降が必要ですが、CRI-O はバージョン v1.28.0 以降が必要です。Kubernetes は containerd v1.y バージョンのサポートを非推奨にしています。CRI-O のリリースは Kubernetes のバージョンと一致しますが、containerd には独自のリリースサイクルがあり、その機能サポートは v2.0 以降にのみ存在します。Kubernetes 1.34 は、v1.7 のような古い containerd LTS リリースも引き続きサポートしています。Kubernetes SIG Node コミュニティは、containerd v1.y サポートの段階的な廃止のタイムラインを設定しました。このサポートが含まれる最後の Kubernetes リリースは v1.35 の最終バージョンとなり、v1.36.0 でサポートが終了します。この移行を支援するために、kubelet_cri_losing_support というメトリックを監視できます。このメトリックが containerd バージョン 1.36.0 を示す場合、containerd ランタイムが今後の要件に対して古いことを示します。管理者は、kubelet を v1.36.0 にアップグレードする前または同時に、containerd を v2.0 以降にアップグレードする必要があります。