Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【ITニュース解説】What's in new Kubernetes v1.34 Of Wind & Will

2025年09月28日に「Dev.to」が公開したITニュース「What's in new Kubernetes v1.34 Of Wind & Will」について初心者にもわかりやすく解説しています。

作成日: 更新日:

ITニュース概要

Kubernetes v1.34がリリース。GPUリソース活用強化、イメージプル時のセキュリティ向上、コンテナ単位の再起動設定など、運用をより安全かつ柔軟にする機能が多数追加された。日々のKubernetes管理をスムーズにする。

ITニュース解説

Kubernetes v1.34は、2025年8月にリリースされた、劇的な変化よりも日々のクラスタ運用、セキュリティ、そして監視のしやすさを向上させるための地道ながらも非常に有用な機能強化を多数含んだバージョンである。分散システムを安定して稼働させる上で、一つ一つの改善が運用効率を大きく左右することを示すリリースと言える。

このバージョンでは、合計58の機能強化が実施され、そのうち23が安定版(GA)、22がベータ版、13がアルファ版として提供されている。以前のバージョンで提供されていたAPIが削除されることは一切なく、そのため既存の環境からのアップグレードは比較的安全に進められる。v1.34の主なテーマは、Kubernetesがリソースをより正確に認識し活用する能力の向上、セキュリティのさらなる強化、システムの内部状態をより詳細に把握できる可観測性の向上、そしてPodの配置をより賢く行うスケジューリングの洗練である。

特に注目すべき新機能の一つが、**動的なリソース割り当て(Dynamic Resource Allocation)**の正式版(GA)化である。これまでGPUやFPGA、高性能NICといった特殊なハードウェアをKubernetesで利用するには、設定が複雑で効率的な利用が難しい場合があった。この機能が正式版になったことで、「ResourceClaim」や「DeviceClass」といったAPIを使って、これらの高価で特殊なリソースを必要な時に必要なだけ、より簡単に、かつ効率的に活用できるようになる。これにより、リソースの利用率が向上し、異なるPod間でリソースを共有する際の安全性も高まり、Podがどのノードに配置されるかの予測も立てやすくなるため、コスト効率と運用効率の両面でメリットが大きい。

セキュリティ面では、**イメージ取得のためのPodに紐づくトークン(Pod-bound Tokens for Image Pulls)**が導入された。これは、コンテナイメージをプライベートなレジストリから取得する際に、これまで使われていた長期間有効なシークレット(秘密情報)の代わりに、kubeletが短期間しか有効ではない、特定のPodに限定されたトークンを使ってイメージを取得できるようにする機能である。もしこのトークンが何らかの理由で漏洩したとしても、その有効期間が短く、また影響範囲も限定されるため、攻撃を受けるリスクを大幅に減らすことができる。これは、情報システムにおけるセキュリティの基本原則である「最小権限の原則」(必要な最小限の権限のみを与える考え方)に強く合致する改善である。

Podの運用における柔軟性を高める新機能として、**コンテナごとの再起動ルール(Per-Container Restart Rules)**がアルファ版として提供された。KubernetesのPodは複数のコンテナで構成されることが多く、これまではPod全体で一律の再起動ポリシーしか設定できなかった。しかし、この機能により、個々のコンテナに対して独自の再起動ポリシーを設定できるようになった。例えば、アプリケーションのメインとなるコンテナは常に再起動させるが、一時的な処理を行う補助的なコンテナは一度処理を終えたら再起動しない、といった設定が可能になる。さらに、特定の終了コード(例えば、メモリ不足で終了したことを示すコード137など)でコンテナが終了した場合にのみ再起動しない、といった細かな制御もできるようになり、Podのライフサイクル管理の柔軟性が大きく向上する。

開発者や運用者にとっての利便性を向上させる機能として、KYAML出力フォーマットも追加された。これはkubectl get podsのようなコマンドでKubernetesリソースの情報を取得する際に、-o kyamlオプションを指定することで利用できる。KYAMLは標準的なYAMLのルールに従いつつも、YAML特有のインデントの問題や、引用符の有無によるデータ型の解釈の違いといった、設定ファイル作成時に発生しやすい「落とし穴」を避けるように設計されている。これにより、Kubernetesのリソース定義ファイルをより安全に、そして間違いなく扱えるようになり、設定ファイルの作成や編集がスムーズになることが期待される。

セキュリティと管理のきめ細かさを向上させる機能として、**きめ細かい認証認可(Fine-grained Authorization)**の機能も強化された。Kubernetesにおけるユーザーやサービスアカウントの権限管理は、通常RBAC(Role-Based Access Control)によって行われる。v1.34では、このRBACやWebhookを使った認証認可のルールにおいて、リソースのフィールドセレクタやラベルセレクタをより詳細に利用できるようになった。これにより、「特定のラベルが付与されたPodのみ削除を許可する」といった、これまでよりもさらに細かい条件に基づいて操作を制限することが可能になり、クラスタのセキュリティをより厳密に制御できる。

ストレージの運用における耐障害性を高める改善も含まれている。**ボリューム拡張の回復(Volume Expansion Recovery)**は、PersistentVolumeClaim(PVC)を使ってKubernetes上でストレージのサイズを拡張しようとした際に、何らかの原因でその処理が失敗した場合の対応能力を強化する機能である。これまでは一度拡張に失敗すると、そのボリュームは使用できなくなるか、手動での複雑な復旧作業が必要となる場合があった。v1.34では、拡張処理をキャンセルしたり、別のサイズで再試行したりといった操作が可能になったことで、ストレージ運用における可用性と安定性が向上する。

さらに、Windows Kubeletのシャットダウン処理も改善された。WindowsノードでKubernetesクラスタを運用している場合、ノードがシャットダウンする際に、コンテナが適切に終了しないなどの問題が発生することがあった。v1.34では、Windows版のkubelet(各ノード上で動作するKubernetesのエージェント)が、ノードシャットダウン時にPodのライフサイクルフック(コンテナの起動・停止時に特定の処理を実行する仕組み)や、コンテナが終了するまでの猶予期間を適切に尊重するようになった。これにより、Windowsノード上のPodもより安定して終了できるようになり、データの損失や意図しない動作を防ぐことで、Windows環境でのKubernetes運用がより信頼性の高いものになる。

これらの主要な機能以外にも、多くの改善がv1.34には含まれている。例えば、JobのPodをどのように置き換えるかを制御する.spec.podReplacementPolicyが安定版になった。認証設定を管理するAuthenticationConfiguration APIも安定版となり、ノードごとのスワップメモリ利用を制限するPer-node swap (LimitedSwap)も安定版として提供される。スケジューラがPodを配置するノードのヒントを与える.status.nominatedNodeNameフィールドはアルファ版で、DNS検証のルールを緩和するRelaxed DNS validationも安定版になっている。また、Common Expression Language(CEL)に基づいたミューティングアドミッションの機能も改善されている。

Kubernetes v1.34へのアップグレードを検討する際には、APIの削除がないため、比較的安全にアップグレードできるという点は大きなメリットである。しかし、アルファ版の機能を利用するには、個別に機能ゲートを有効にする必要がある。また、CNI(コンテナネットワークインターフェース)プラグイン、サービスメッシュ、監視ツールといったKubernetesエコシステムを構成する他のコンポーネントがv1.34に対応しているかを事前に確認することも非常に重要である。特に、データベースのような状態を持つアプリケーション(ステートフルなワークロード)や、GPUを使用するワークロードについては、本番環境に展開する前に十分なテストを行うべきである。

Kubernetes v1.34は、目立った派手な新機能というよりも、既存のKubernetesクラスタ運用をより円滑に、安全に、そして予測可能にするための「洗練」に重きを置いたリリースであると言える。このバージョンへのアップグレードは、Kubernetesクラスタの安定性と効率性をさらに向上させたい運用者や開発者にとって、価値のある選択肢となるだろう。

関連コンテンツ

関連IT用語