標準サポートの Kubernetes バージョンのリリースノートを確認する - Amazon EKS

このページの改善にご協力ください

このユーザーガイドに貢献するには、すべてのページの右側のペインにある「GitHub でこのページを編集する」リンクを選択してください。

標準サポートの Kubernetes バージョンのリリースノートを確認する

ヒント

今後開催予定の Amazon EKS ワークショップに登録してください。

このトピックでは、標準サポートで注意すべき重要な変更点を Kubernetes バージョンごとに説明します。アップグレードするときはクラスターの古いバージョンと新しいバージョン間で発生した変更を注意深く確認してください。

Kubernetes 1.35

Amazon EKS で Kubernetes 1.35 が利用可能になりました。Kubernetes1.35 の詳細については、公式リリースのお知らせを参照してください。

重要
  • Cgroup v1 サポートの削除: Kubernetes 1.35 では cgroup v1 サポートが廃止されました。つまり、今後 cgroup v1 を使用するノードではデフォルトで kubelet の起動が拒否されます。

    • AL2023: AL2023 はデフォルトで cgroup v2 を使用し、Kubernetes のアップストリーム動作と連動します。

      • 必要なアクション: cgroup v1 を使用するように AL2023 を手動で設定していたお客様は、cgroups v2 に移行するか、もしくは kubelet 設定で failCgroupV1: false を手動で設定する必要があります。

    • Bottlerocket: Bottlerocket 1.35 はデフォルトで cgroup v2 を使用しますが、kubelet 設定では failCgroupV1: false を設定し、下位互換性を維持してください。

    • Fargate: Fargate は引き続き cgroup v1 を使用します。

  • Containerd 1.x サポート終了予定: Kubernetes 1.35 は containerd 1.x をサポートする最後のリリースです。次の Kubernetes バージョンにアップグレードする前に、containerd 2.0 以降に切り替える必要があります。

  • 2026 年 3 月、アップストリーム Kubernetes プロジェクトは、多くの Kubernetes 環境において重要なインフラストラクチャコンポーネントであった Ingress NGINX を廃止します。

    • 必要なアクション: EKS のお客様は、自環境が Ingress NGINX に依存しているかどうかを評価し、Gateway API やサードパーティーの Ingress コントローラーなどの代替手段への移行の計画を開始する必要があります。これは、廃止後にはバグ修正、セキュリティパッチ、更新などのリリースが提供されなくなるためです。既存のデプロイは引き続き機能しますが、廃止後も Ingress NGINX を使い続けると、セキュリティリスクに対して脆弱になります。これは、利用可能な代替手段はどれも直接的な完全互換品ではなく、別途プランニングやエンジニアリングが必要になるためです。この Kubernetes の発表の詳細については、Kubernetes 運営およびセキュリティ対応委員会の公式ステートメント「Ingress NGINX retirement」を参照してください。

  • ポッドリソースのインプレースアップグレード (安定版): ポッドリソースのインプレースアップグレードにより、ユーザーはポッドやコンテナを再起動せずに CPU リソースやメモリリソースを調整できます。以前は、このような変更にはポッドの再作成が必要であり、特にステートフルアプリケーションやバッチアプリケーションでは、ワークロードが中断される可能性がありました。新しいインプレース機能により、よりスムーズで中断のない垂直スケーリングが可能になり、効率が向上し、開発が簡素化されます。

  • PreferSameNode トラフィック配分 (安定版): サービスの trafficDistributionフィールドが更新され、トラフィックルーティングをより明示的に制御できるようになりました。新しいオプションとして PreferSameNode が導入されたことで、ローカルノードが利用可能な場合はローカルノード上のエンドポイントを常に優先し、それ以外の場合にリモートエンドポイントにフォールバックするようサービスを設定できるようになりました。この変更により、API で現在のノード内のトラフィックをより明確に優先化できるようになります。

  • StatefulSet MaxUnavailable (ベータ): この機能は、maxUnavailable (3% または 10%) を設定することで並列ポッド更新を有効にします。これにより、データベースクラスターなどのステートフルアプリケーションは、順次 1 つずつの更新に比べて最大 60% 高速に更新できるようになり、メンテナンスウィンドウが大幅に短縮されます。

  • Windows Server 2025 のサポート: EKS 1.35 では、Windows Server 2025のサポートを追加します。

  • Kubelet フラグの削除: --pod-infra-container-image フラグが kubelet から削除されました。カスタム AMI ユーザーは、1.35 にアップグレードする前に、kubelet 設定からこのフラグを削除する必要があります。

  • 廃止通知 – IPVS モード: kube-proxy の IPVS モードは非推奨となり、Kubernetes 1.36 で削除される予定です。

Kubernetes 1.35 の変更ログの詳細については、「https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.35.md」を参照してください。

Kubernetes 1.34

Amazon EKS で Kubernetes 1.34 が利用可能になりました。Kubernetes1.34 の詳細については、公式リリースのお知らせを参照してください。

重要
  • Containerd は、バージョン 1.34 のリリース時に 2.1 に更新されました。

  • AWS では、EKS で最適化された Amazon Linux 2 AMI for Kubernetes 1.34 をリリースしていません。

  • AppArmor は Kubernetes 1.34 で廃止されました。

  • VolumeAttributesClass (VAC) は Kubernetes 1.34 で GA に移行し、ベータ API (storage.k8s.io/v1beta1) から安定した API (storage.k8s.io/v1) に移行します。

    • (ECR Gallery の CSI コンポーネントから提供される) AWS マネージドサイドカーコンテナと共に EBS CSI ドライバーを使用している場合、ボリュームの変更は EKS 1.31~1.33 クラスターでも引き続きシームレスに動作します。AWS は、EKS 1.33 の標準サポート終了日 (2026 年 7 月 29 日) まで、ベータ版 VAC API をサポートするようにサイドカーにパッチを適用します。

    • CSI サイドカーコンテナを自己管理している場合、VAC 機能を維持するために、1.34 より前のクラスターでは古いサイドカーのバージョンに固定する必要がある場合があります。

    • GA の VolumeAttributesClass 機能 (変更のロールバックなど) を使用するには、EKS 1.34 以降にアップグレードします。

  • サービスアカウントトークンの外部 JWT サイナーがベータに昇格しました。外部サイナーを使用する場合、「service-account-extend-token-expiration」フラグは完全に尊重されなくなります。API サーバーは、希望される拡張期間 (1 年) と外部サイナーの制限時間 (24 時間) 間の最小有効期限を適用します。

  • 動的リソース割り当て (DRA) コア API (GA): 動的リソース割り当ては安定段階にあり、標準化された割り当てインターフェイスを通じて GPU などの特殊なハードウェアを効率的に管理できるようになりました。これにより、ハードウェアアクセラレーターのリソース管理が簡素化され、特殊なリソースの使用率が向上します。

  • Kubelet 向けの投影 ServiceAccount トークン (ベータ): この機能強化では、長期間有効なシークレットの代わりに短期間有効な認証情報を使用してコンテナイメージをプルすることで、セキュリティが向上します。これにより、認証情報が公開されるリスクが軽減され、クラスター全体のセキュリティ体制が強化されます。

  • ポッドレベルのリソースリクエストと制限 (ベータ): この機能では、マルチコンテナポッドに対して共有リソースプールを許可することでリソース管理が簡素化されます。これにより、複数のコンテナを持つ複雑なアプリケーションに対して、より効率的なリソース割り当てと使用率が可能になります。

  • 変更可能な CSI ノード割り当て可能数 (ベータ): MutableCSINodeAllocatableCount 機能ゲートは EKS 1.34 でデフォルトで有効になっており、CSINode の最大アタッチ可能ボリューム数属性を変更可能にし、CSI ドライバーレベルでユーザー設定に基づいて動的に更新するメカニズムを導入します。これらの更新は、定期的な間隔または障害検出によってトリガーされ、ノードで報告されたアタッチメント容量と実際のアタッチメント容量の不一致に対処することで、ステートフルポッドスケジューリングの信頼性を高めることができます。

  • 非推奨のお知らせ - cgroup ドライバー設定: 手動の cgroup ドライバー設定は、自動検出を優先するため非推奨となります。

    • 顧客への影響: 現在、kubelet 設定で --cgroup-driver フラグを手動で設定している場合は、この設定を削除する準備が必要です。

    • 必要なアクション: 将来の Kubernetes リリースで機能が削除される前に、ノードのブートストラップスクリプトとカスタム AMI 設定を更新し、手動の cgroup ドライバー設定を削除する計画を立てます。

    • 詳細については、cgroup ドライバーのドキュメントを参照してください。

Kubernetes 1.34 の変更ログの詳細については、「https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.34.md」を参照してください。

Kubernetes 1.33

Amazon EKS で Kubernetes 1.33 が利用可能になりました。Kubernetes1.33 の詳細については、公式リリースのお知らせを参照してください。

重要
  • 動的リソース割り当てで Kubernetes の beta API が有効になっています。

    • この beta API によって、GPU などのリソースを必要とするワークロードのスケジューリングとモニタリングのエクスペリエンスが向上します。

    • beta API は Kubernetes コミュニティによって定義され、今後の Kubernetes バージョンで変更される可能性があります。

    • Kubernetes ドキュメントの「機能ステージ」を注意深く確認し、beta API の使用による影響を理解してください。

  • AWS では、EKS で最適化された Amazon Linux 2 AMI for Kubernetes 1.33 をリリースしていません。

  • インプレースポッドリソースのサイズ変更 (ベータ): インプレースリソースのサイズ変更がベータに昇格し、再起動をせずに既存のポッドの CPU とメモリリソースを動的に更新できるようになりました。これにより、ダウンタイムなしでステートフルワークロードを垂直スケーリングし、トラフィックパターンに基づいてリソースをシームレスに調整できます。

  • サイドカーコンテナの安定化: サイドカーコンテナは、アプリケーションコンテナの前に開始され、ポッドのライフサイクルを通して実行され、動作状態シグナリングのプローブをサポートする、restartPolicy: Always を使用した特別な init コンテナとしてサイドカーを実装することで、徐々に安定してきています。

  • エンドポイント API の廃止: エンドポイント API が正式に廃止され、アクセス時に警告が返されるようになりました。代わりに EndpointSlices API を使用するようにワークロードとスクリプトを移行してください。これにより、デュアルスタックネットワーキングなどの最新機能がサポートされ、サービスごとに複数の EndpointSlices が処理されます。

  • Elastic Fabric Adapter のサポート: Amazon EKS クラスターのデフォルトのセキュリティグループで、Elastic Fabric Adapter (EFA) トラフィックをサポートするようになりました。デフォルトのセキュリティグループには、同じセキュリティグループの宛先に対して EFA トラフィックを許可する新しいアウトバウンドルールがあります。これにより、クラスター内での EFA トラフィックが可能になります。

Kubernetes 1.33 の変更ログの詳細については、「https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.33.md」を参照してください。

Kubernetes 1.32

Amazon EKS で Kubernetes 1.32 が利用可能になりました。Kubernetes1.32 の詳細については、公式リリースのお知らせを参照してください。

重要
  • FlowSchema および PriorityLevelConfiguration の flowcontrol.apiserver.k8s.io/v1beta3 API バージョンは、バージョン 1.32 で削除されました。これらの APIs を使用している場合はアップグレードする前に、サポートされている最新バージョンを使用するように設定を更新する必要があります。

  • ServiceAccount metadata.annotations[kubernetes.io/enforce-mountable-secrets] は、バージョン 1.32 で廃止され、今後の Kubernetes マイナーバージョンリリースで削除されます。マウントされたシークレットへのアクセスを分離するには、別の名前空間を使用することをお勧めします。

  • Kubernetes バージョン 1.32 は、Amazon EKS が Amazon Linux 2 (AL2) AMI をリリースする最後のバージョンです。バージョン 1.33 以降、Amazon EKS は引き続き Amazon Linux 2023 (AL2023) および Bottlerocket ベースの AMI をリリースします。

  • Memory Manager 機能は、Kubernetes バージョン 1.32 で一般提供 (GA) ステータスに移行しました。この機能強化により、コンテナ化されたアプリケーションに対してより効率的で予測可能なメモリ割り当てが可能になり、特定のメモリ要件を持つワークロードに特に役立ちます。

  • StatefulSets によって作成された PersistentVolumeClaims (PVC) に自動クリーンアップ機能が含まれるようになりました。PVCs が不要になった場合はStatefulSet 更新およびノードメンテナンスオペレーション中にデータの永続性を維持しながら、自動的に削除されます。この機能により、ストレージ管理が簡素化され、クラスター内で孤立した PVC が発生するのを防ぐことができます。

  • カスタム リソース フィールド セレクター機能が導入され、開発者はカスタム リソースにフィールド セレクターを追加できるようになりました。この機能は、組み込みの Kubernetes オブジェクトで使用できるものと同じフィルタリング機能をカスタム リソースに提供し、より正確で効率的なリソース フィルタリングを可能にし、より優れた API 設計プラクティスを促進します。

Kubernetes 1.32 の変更ログの詳細については、「https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.32.md」を参照してください。

匿名認証の変更

Amazon EKS 以降1.32、匿名認証は次の API サーバーのヘルスチェックエンドポイントに制限されています。

  • /healthz

  • /livez

  • /readyz

system:unauthenticated ユーザーを使用した他のエンドポイントへのリクエストはHTTP 401 Unauthorized レスポンスを受け取ります。このセキュリティ強化はRBAC ポリシーの設定ミスが原因で発生する可能性のある意図しないクラスターアクセスを防ぐのに役立ちます。

注記

public-info-viewer RBAC 役割は上記のヘルスチェックエンドポイントに引き続き適用されます。

Amazon Linux 2 AMI の廃止

Kubernetes バージョン 1.32 は Amazon EKS が AL2 AMI をリリースした最後のバージョンです。バージョン 1.33 以降、Amazon EKS は引き続き AL2023 および Bottlerocket ベースの AMI をリリースします。詳細については、「EKS AL2 AMI と AL2 高速化 AMI の移行機能ガイド」を参照してください。