Kubernetes 1.24 リリース — 新機能

Kubernetes 1.24 リリース — 新機能

Kubernetes 1.24 は、当初 4 月 19 日にリリースされる予定でしたが、5 月 3 日まで延期されました。このリリースでは 46 の機能強化が行われ、そのうち 13 は安定バージョンにアップグレードされ、14 は既存の機能の改善、13 はまったく新しい機能、6 つは非推奨の機能です。

主なアップデート内容は以下のとおりです。

Dockershimを完全に削除する

dockershim コンポーネントは、v1.20 で非推奨とマークされた後、kubelet から削除されました。 v1.24 以降では、サポートされている他のランタイム (containerd や CRI-O など) のいずれかを使用するか、コンテナー ランタイムとして Docker エンジンに依存している場合は cri-dockerd を使用する必要があります。

CSI ボリュームヘルスモニタリング

永続ボリュームの健全性をチェックするサイドカーをロードできる機能は、歓迎すべき追加機能です。これにより、管理者は Kubernetes 外部の永続ボリュームの削除などのイベントに対してより適切かつ迅速に対応できるようになり、Kubernetes クラスターの信頼性が必然的に向上します。

kubelet: OOM メトリックを公開する

1.24 以降、kubelet はコンテナ内で発生する OOM (OutOfMemory) イベントの数を記録するための新しい Prometheus メトリックを提供します。これにより、メモリ制限がコンテナの使用状況とニーズに追いつかない場合に、Kubernetes 操作で繰り返し発生する問題をより詳細に把握できるようになります。

この新しいメトリックを使用すると、SRE は問題の根本的な原因をより深く理解し、それが繰り返し発生する問題なのか、それともエッジケースなのかをより適切に判断できるようになります。トラブルシューティングが速くなり、ユーザーの満足度が高まります。

ベータAPIはデフォルトで無効になっています

以前のバージョンでは、不安定であると見なされたベータ API がデフォルトで有効になっていたため、これらの機能の導入が加速しましたが、問題も発生しました。たとえば、ベータ API にバグがある場合、デプロイされたクラスターの 90% でそのバグが発生します。

Kubernetes 1.24 以降では、新しいベータ API はデフォルトで無効になります。

必要なロードバランサーのタイプを選択します

Kubernetes 1.24 では、Service.Spec.LoadBalancerClass が GA になりました。

マネージド Kubernetes クラスターで LoadBalancer タイプのサービスを作成すると、ロード バランサーが作成されます。このロードバランサーの作成は、Kubernetes サービス プロバイダーの責任です。

この LoadBalancerClass フィールドを通じて、ユーザーは必要なロード バランサーのタイプを指定でき、これによりクラウド プロバイダーはさまざまな種類のロード バランサーをネイティブに提供できるようになります。これまで、これは主にアノテーションやカスタム コントローラーに依存していましたが、これは扱いにくく、直感に反する可能性があります。アノテーションは、プロバイダー固有のコントローラーのバージョンごとに異なることが多く、これにより、マネージド Kubernetes サービスのユーザーにとってネットワークが容易になることを期待しています。

Service.Spec.LoadBalancerIP フィールドは非推奨です

アノテーションに関して言えば、Kubernetes チームは Service.Spec.LoadBalancerIP フィールドを非推奨にすることを決定しました。その理由は、IPv4 アドレスと IPv6 アドレスの両方を必要とするデュアル スタック サービスがサポートされていないため、指定されていないためです。

プロバイダーはこのフィールドではなくアノテーションに依存することが公式に推奨されています。

オープンAPIv3

Kubernetes 1.24 では、OpenAPI v3 形式で API を公開するためのベータ サポートが提供されます。

ストレージ容量とボリューム拡張が一般提供開始

ストレージ容量追跡サポートは、CSIStorageCapacity オブジェクトを通じて現在使用可能なストレージ容量を公開し、遅延バインディングで CSI ボリュームを使用するポッドのスケジュールを強化します。

ボリューム拡張により、既存の永続ボリュームのサイズ変更のサポートが追加されます。

gRPC プローブがベータ版にアップグレードされました

Kubernetes 1.24 では、gRPC プローブがベータ版となり、デフォルトで利用可能になりました。 HTTP エンドポイントを公開したり、追加の実行可能ファイルを使用したりすることなく、Kubernetes でネイティブに gRPC アプリケーションの起動、生存、準備プローブを構成できるようになりました。

サービス アカウントには、デフォルトでは Secret がありません。

これは、Kubernetes の Secrets に保存されている長期サービス アカウント トークンを使用する Kubernetes ユーザーにのみ影響します。

Kubernetes 1.23 より前では、クラスターにサービス アカウントを作成すると、Kubernetes によってそのサービス アカウントのトークンを含む Secret が自動的に作成されていました。このトークンは期限切れにならないため便利ですが、セキュリティ上の問題もあります。 Kubernetes 1.24 以降では、これらの Secret は自動的に作成されなくなりました。

次のような疑問が湧くかもしれません: トークンは、サービス アカウントを使用する Pod にインストールされていませんか?いいえ。新しい Pod が作成されると、kubelet は TokenRequest API を使用して Pod のトークンを生成し、それが投影されたボリュームとしてマウントされます。トークンは、1 時間後またはポッドが削除された時点のいずれか早い方で期限切れになります。 Kubelet はトークンを定期的に更新し、Pod が常に有効なトークンをマウントできるようにします。

期限切れにならないトークンを Secret に保存することが絶対に必要な場合は、自分で Secret を作成し、特別なコメントを追加することでトークンを取得できます。すると、Kubernetes がトークンを Secret に追加します。

RuntimeClass.Overhead フィールド GA

デフォルトのコンテナ ランタイム以外のものを使用する理由は多数あります。たとえば、信頼できないワークロードや GPU を必要とするワークロードを実行する場合などが挙げられます。 Kubernetes は、これらのユースケース向けのカスタム ランタイム クラスの定義をネイティブにサポートします。

これらのカスタム ランタイムでは、オーバーヘッドが発生する可能性があります。CPU とメモリは、ランタイム内で実行されているコンテナーではなく、ランタイム自体によって使用されます。 RuntimeClass.Overhead フィールドは Kubernetes 1.24 で一般提供され、クラスター オペレーターがこのオーバーヘッドを指定できるようになり、Kubernetes はスケジュールの決定時にこれを考慮に入れるようになりました。

その他の注目すべきアップデート:

  1. StatefulSets では maxUnavailable です。
  2. CronJobs は TimeZone をサポートします。
  3. ネットワークポリシーステータス。
  4. go 1.18.1 を使用して構築されました。
  5. 非正常なノードシャットダウン。

詳細については、

https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.24.md。


<<:  企業はクラウド ロックインをどのように捉えるべきでしょうか?

>>:  Amazon Web Services: 中国企業の海外進出を支援する6つの機能

推薦する

分散アーキテクチャにおける負荷分散を理解するための記事

[[264500]]負荷分散とは何ですか? Baidu のエントリでの説明は次のとおりです。負荷分散...

動画の外部リンクを効果的に公開する方法

ウェブサイトを最適化する場合、ソフト記事の外部リンク、ビデオの外部リンク、ブログの外部リンク、フォー...

Yixun、JD.comの利益ゼロのB2C電子商取引価格戦争に対抗

A5ウェブマスターネットワークニュース:8月14日午前、JD.comのCEOである劉強東氏は、自身の...

純利益の「接近戦」クラウドコンピューティングが次の戦場か?

[[265739]]過去1年間、アリババとテンセントはともに経済環境の不確実性と、沈みゆく市場におけ...

vpsao、安価な VPS、年間支払いはわずか 3.5 米ドル、x プロフェッショナル アカウント?

昨夜、vpsao からプロモーション メールを受け取りました。OpenVZ ベースの仮想 VPS が...

ベテランウェブマスターがウェブサイトの単一ページを最適化する方法を教えます

どのようなウェブサイトであっても、それは間違いなくページから構成される全体です。ウェブサイト全体の重...

地域ポータルサイトに存在する問題と開発のボトルネックを打破する方法について簡単に議論する

権威ある統計によると、中国のインターネット利用者数は4億人を超え、世界最大となり、現在も急速に増加し...

Gaotu と Youdao は、道は違うけど目的地は同じ?

「時代の中での一粒の塵も、庶民にとっては山となる。」この言葉は、ここ数年で急速に拡大したオンライン教...

企業で働く SEO 担当者は、どうすれば SEO 目標を合理的に設定できるでしょうか?

SEO を行う人の中には、個人のウェブマスターではなく、企業にサービスを提供するタイプの人もいます。...

WeChat Moments広告プロモーションのヒント!

Weiboと同様に、WeChatもマーケティングとプロモーションにおいて非常に独特で重要な固有の利点...

中小企業向け3ステップインターネットマーケティング戦略

百科事典によれば、中小企業とは、同じ業界の大企業に比べて人員、資産、事業規模が小さい経済単位のことで...

地域コミュニティの「窓+市場」についての簡単な議論

私たちは常に地域コミュニティの発展に注目してきました。現在の地域コミュニティサイトを見ると、基本的に...