Cloud Native Computing Foundation(CNCF)は、「chill vibes」という名前でKubernetes 1.27をリリースした。このリリースでは、「Podリソースのインプレース更新」「並列イメージプルの制限」「複数サービスCIDR」などの新機能が追加されている。
また、StatefulSetが作成したPersistent Volume Claim(PVC)の自動削除、kubectlコマンドへの新しいsubresourceフラグの追加、Component Health SLIなど、いくつかのベータ機能がリリースに含まれている。
レガシーコンテナイメージレジストリk8s.gcr.ioの凍結、seccompプロファイルのデフォルト使用、OpenAPI v3のサポートなど、いくつかの機能が一般提供または安定版となった。
バージョン 1.27 では、SecurityContextDeny admission プラグインは非推奨となり、Azure disk in-tree storage プラグインは削除された。
新しいリリースでは、カスタムGoogle Container Registryでホストされているレガシーコンテナイメージレジストリの利用が凍結されている。3月20日以降、k8s.gcr.ioからのトラフィックは、コミュニティ所有のレジストリにリダイレクトされている。k8s.gcr.ioの廃止に伴い、k8s.ioが廃止された。この変更により、コミュニティのコンテナレジストリを単一ではなく複数のクラウドプロバイダーでホストすることで、ユーザーに高可用性と待ち時間の短縮を提供できるようになる。
マイクロソフトのリリースチーム出身でシニアプロダクトマネージャーのXander Grzywinski氏は、この特別な機能についてコメントしている。
この点については、リリースサイクル全体を通じて何度も話してきましたので、聞き飽きたという方もいらっしゃるかもしれませんが、あらためてお伝えしておきますね。1.27のイメージは、古いレジストリに公開される予定はありません。旧レジストリへのリクエストはすべて新レジストリにリダイレクトされますが、プロキシの後ろにいる場合は、作業を行う必要があります。
Pod リソースのインプレース更新が導入され、Pod を再起動することなくコンテナリソースのrequestsとlimitsを変更できるようになった。これはデフォルトでオフになっており、ユーザーはコンテナのフィールドresizePolicy
で再起動が必要かどうかを指定できる。
リリースチームのメンバーで、マイクロソフトのプリンシパル・ソフトウェア・エンジニアであるMark Rossetti氏は、このようにコメントしている。
多くの人がこの機能を待ち望んでいました。この機能を使えば、コンテナを再起動する必要なく、コンテナにリソースを追加または削減することができます。これにより、多くのワークロードがより速く、より少ない中断でスケールすることができるようになります。
また、新リリースでは、ネットワーク帯域やディスクを消費しすぎてクラスタのパフォーマンスが低下するのを避けるため、kubeletによる並列イメージプルの数に制限を設定できる。
また、サービスCIDRの内部IPアドレスに関するservice-cluster-ip-range
フィールドには、サイズ制限がない。これはデフォルトでオフになっており、ユーザーはサービスに割り当てられたIPアドレスを簡単に調べられる。
StatefulSet PVC Auto-Deletionは、バージョン 1.27 でベータ版に移行し、デフォルトでオンになっている。これまで、StatefulSetが削除されると、関連するPVCとその下のボリュームが保持されていた。このため、手作業が発生し、未使用のストレージのコストが発生する原因となっていた。
すべてのAPIリソースのサブリソースを取得・更新するために、ベータ版ではkubectlに-subresource
フラグが追加され、サブリソースのステータスやスケールを取得・更新できる。今後のリリースでは、さらに多くのサブリソースが追加される予定だ。
KuberetesコンポーネントのSLIメトリクスはベータ版を卒業し、ユーザーはKubernetes内部の可用性を監視・測定できる。各コンポーネントに対して、ゲージとカウンターの2つのメトリクスタイプが公開される。
セキュアコンピューティングモード(seccomp)プロファイルをデフォルトで有効にすることは、本リリースで安定版としてフラグが立てられた。seccompプロファイルのデフォルト化を使用するには、オペレータは、使用したい各ノードで--seccomp-default
コマンドラインフラグを有効にして、kubeletを実行する必要がある。この機能は、許可されたシステムコールを制限するseccompプロファイルでPodコンテナを実行することにより、KubernetesにおけるPodコンテナのセキュリティを向上させるものだ。
APIに対する言語にとらわれない標準インターフェースであるOpenAPI v3のサポートが一般提供 になり、デフォルトで有効になった。これにより、KubernetesはOpenAPI v3フォーマットでAPIの説明を公開できるようになった。
Kubernetesは、コンテナ化されたアプリケーションを大規模に展開・管理するためのオープンソースのコンテナオーケストレーションソフトウェアだ。
リリースノートによると、Kubernetesバージョン1.27では、18機能がアルファ版となり、13機能が一般提供または安定版になり、29機能がベータ版を卒業するなど、60の機能拡張が行われている。また、14の機能が非推奨または削除されている。
CNCFは2023年4月14日にウェビナーを開催し、リリースチームからの変更点を説明した。