サポートされているKubernetesのバージョン
Container Engine for Kubernetes (OKE)が現在サポートしているKubernetesのバージョンと、以前にサポートされたバージョンおよび将来のバージョンの計画されたサポートの詳細をご覧ください。
新しいバージョンのKubernetesに対するContainer Engine for Kubernetesのサポートが発表されると、古いバージョンのKubernetesはその後、サポートを停止します。Oracleでは、Container Engine for Kubernetesでサポートされている最新のKubernetesバージョンを使用するように既存のクラスタをアップグレードすることをお薦めします。
このトピックの内容:
現在サポートされているKubernetesバージョン
Container Engine for Kubernetesでは、新しいクラスタに対して3つのバージョンのKubernetesがサポートされています。新しいKubernetesバージョンのサポートの発表後少なくとも30日間は、Container Engine for Kubernetesで4番目に利用可能なKubernetesバージョンがサポートされます。その後、古いKubernetesバージョンがサポートされなくなります。
Container Engine for Kubernetesで新しいクラスタを作成する場合、OracleではContainer Engine for Kubernetesでサポートされている最新のKubernetesバージョンを使用することをお薦めします。Oracleが新しいKubernetesバージョンのContainer Engine for Kubernetesサポートを発表すると、Oracleでは既存のクラスタを、新しいKubernetesバージョンをできるだけ早く使用するようにアップグレードすることをお薦めします。
リリース・カレンダ
Container Engine for Kubernetes (OKE)は、新しいクラスタに対して次のバージョンのKubernetesをサポートしています:
Kubernetesマイナー・バージョン | OKEでサポートされているKubernetesパッチ・バージョン | アップストリーム・リリース日 | アップストリーム終了日 | OKEリリース日 | OKE期限日 |
---|---|---|---|---|---|
1.29 | 1.29.1 | 2024-01-17 | 2025-02-28 | 2024-03-28 | 1.32 OKEリリース日の30日後(予定) |
1.28 | 1.28.2 | 2023-09-13 | 2024-10-28 | 2023-12-19 | 1.31 OKEリリース日の30日後(予定) |
1.27 | 1.27.10 | 2024-01-17 | 2024-06-28 | 2024-04-17 | 1.30 OKEリリース日の30日後(計画済) |
1.27 | 1.27.2 | 2023-07-19 | 2024-06-28 | 2023-08-16 | 2024-05-21 |
1.26 | 1.26.7 | 2023-07-19 | 2024-02-28 | 2023-09-12 | 2024-04-29 |
1.26 | 1.26.2 | 2022-12-09 | 2024-02-28 | 2023-04-26 | 2023-10-13 |
法的免責事項:この表は、私たちの一般的な製品の方向性の概要を説明するものです。また、情報提供を唯一の目的とするものであり、いかなる契約にも組込むことはできません。マテリアル、コード、または機能の提供をお約束するものではなく、購入決定を行う際の判断材料とすべきではありません。Oracle製品に説明されている機能の開発、リリース、タイミングおよび価格は、Oracle Corporationの単独の裁量により変更される場合があります。
Container Engine for KubernetesでのKubernetesバージョン1.28に関するノート
Kubernetesバージョン1.28では、Kubernetesスキュー・ポリシーが拡張されています。Kubernetesバージョン1.28より前は、スキュー・ポリシーでは、クラスタのコントロール・プレーン・ノードがワーカー・ノードより2バージョン以下である必要があります。Kubernetesバージョン1.28以降、Kubernetesスキュー・ポリシーでは、コントロール・プレーン・ノードをワーカー・ノードより最大3つ前のバージョンにできます。Kubernetesバージョン・スキュー・サポート・ポリシーを参照してください。
Container Engine for Kubernetesは、Kubernetesバージョン1.28以降を実行しているクラスタに拡張スキュー・ポリシーを適用します。
Container Engine for KubernetesでのKubernetesバージョン1.27に関するノート
Kubernetesバージョン1.27は、次の非推奨Kubernetes APIの提供を停止しました。
- CSIStorageCapacity (storage.k8s.io/v1beta1 APIバージョン)
非推奨APIからの移行の詳細は、Kubernetes非推奨API移行ガイドを参照してください。
Container Engine for KubernetesでのKubernetesバージョン1.26に関するノート
Kubernetesバージョン1.26は、次のような非推奨のKubernetes APIの提供を停止しました。
- FlowSchema (flowcontrol.apiserver.k8s.io/v1beta1 APIバージョン)
- HorizontalPodAutoscaler (自動スケーリング/v2beta2 APIバージョン)
- PriorityLevelConfiguration (flowcontrol.apiserver.k8s.io/v1beta1 APIバージョン)
非推奨APIからの移行の詳細は、Kubernetes非推奨API移行ガイドを参照してください。
Kubernetesバージョン1.26.7のサポートがリリースされ、Kubernetesバージョン1.26.2の次のアップストリームの問題に対処しました。
- https://github.com/opencontainers/runc/issues/3849: kubeletのバグによって、5.15 Linuxカーネルでcgroup v1を使用するノードでメモリー・リークが発生します。Oracle Linux 8.7イメージでは5.15 Linuxカーネルが使用されるため、Oracle Linux 8.7イメージはバグの影響を受けます。
- https://github.com/cri-o/cri-o/issues/6805: crioの再起動後にメトリックが欠落しています。
Container Engine for KubernetesでのKubernetesバージョン1.25に関するノート
Kubernetesバージョン1.25は、次のような非推奨のKubernetes APIの提供を停止しました。
- CronJob (batch/v1beta1 APIバージョン)
- EndpointSlice (discovery.k8s.io/v1beta1 APIバージョン)
- イベント(events.k8s.io/v1beta1 APIバージョン)
- HorizontalPodAutoscaler (自動スケーリング/v2beta1 APIバージョン)
- PodDisruptionBudget (ポリシー/v1beta1 APIバージョン)
- PodSecurityPolicy (ポリシー/v1beta1 APIバージョン)
- RuntimeClass (node.k8s.io/v1beta1 APIバージョン)
非推奨APIからの移行の詳細は、Kubernetes非推奨API移行ガイドを参照してください。
Kubernetesバージョン1.25.12のサポートが、Kubernetesバージョン1.25.4の次のアップストリームの問題に対処するためにリリースされました。
- https://github.com/opencontainers/runc/issues/3849: kubeletのバグによって、5.15 Linuxカーネルでcgroup v1を使用するノードでメモリー・リークが発生します。Oracle Linux 8.7イメージでは5.15 Linuxカーネルが使用されるため、Oracle Linux 8.7イメージはバグの影響を受けます。
- https://github.com/cri-o/cri-o/issues/6805: crioの再起動後にメトリックが欠落しています。
アップストリームKubernetesプロジェクトは、Kubernetesバージョン1.21のポッド・セキュリティ・ポリシーを非推奨とし、Kubernetesバージョン1.25の機能を削除しました。したがって、Container Engine for Kubernetesでは、Kubernetesバージョン1.25以降を実行しているクラスタでのポッド・セキュリティ・ポリシーおよびPodSecurityPolicyアドミッション・コントローラはサポートされません。
同様の機能が必要な場合は、かわりにKubernetesポッド・セキュリティ標準およびPodSecurityアドミッション・コントローラ(権限ポリシー、ベースライン・ポリシーおよび制限ポリシーとともに)の使用を検討してください。デフォルトでは、Container Engine for Kubernetesは、ポッド・セキュリティ標準をサポートするために、Kubernetesバージョン1.23以降を実行しているクラスタでPodSecurityアドミッション・コントローラを有効にします。Kubernetesポッド・セキュリティ標準およびPodSecurityアドミッション・コントローラの詳細は、Kubernetesドキュメントのポッド・セキュリティ標準を参照してください。
または、Kubernetesエコシステムで開発されている他の代替手段を使用して、ポリシーを適用することを検討してください。
ポッド・セキュリティ・ポリシーおよびPodSecurityPolicyアドミッション・コントローラの使用から、ポッド・セキュリティ標準およびPodSecurityアドミッション・コントローラの使用に移行する場合は、KubernetesドキュメントのPodSecurityPolicyから組込みPodSecurityアドミッション・コントローラへの移行を参照してください。Kubernetesバージョン1.25を実行している新しいクラスタを作成する前に、またはKubernetesバージョン1.25を実行するために既存のKubernetesバージョン1.24クラスタをアップグレードする前に、移行を完了することが重要です。また、コンソールには、Container Engine for Kubernetesによって作成および管理される既存のKubernetesクラスタでのPodSecurityPolicyアドミッション・コントローラの使用を無効にする便利な方法があります(コンソールを使用したPodSecurityPolicyアドミッション・コントローラの無効化を参照)。
Container Engine for KubernetesでのKubernetesバージョン1.22に関するノート
Kubernetesバージョン1.22では、次に示す多数の非推奨のKubernetes APIの処理が停止されました。
- Webフック・リソース
- CustomResourceDefinition
- APIService
- TokenReview
- SubjectAccessReviewリソース
- CertificateSigningRequest
- リース
- イングレス
- IngressClass
- RBACリソース
- PriorityClass
- ストレージリソース
非推奨のAPIからの移行の詳細は、Kubernetes非推奨のAPI移行ガイドを参照してください。
将来のKubernetesバージョンの計画サポート
現在、Container Engine for Kubernetesのサポートは、次の将来のバージョンのKubernetesに対して計画されています。将来の日付は予告なしに変更される場合があります。また、表の後ろに法的免責事項を書き留めます。
Kubernetesマイナー・バージョン | OKEでサポートされているKubernetesパッチ・バージョン | アップストリーム・リリース日 | アップストリーム終了日 | OKEリリース日 |
---|---|---|---|---|
1.30 | 確認予定 | 2024年4月(予定) | 確認予定 | 確認予定 |
1.31 | 確認対象 | 確認対象 | 確認対象 | 確認対象 |
1.32 | 確認対象 | 確認対象 | 確認対象 | 確認対象 |
法的免責事項:この表は、私たちの一般的な製品の方向性の概要を説明するものです。また、情報提供を唯一の目的とするものであり、いかなる契約にも組込むことはできません。マテリアル、コード、または機能の提供をお約束するものではなく、購入決定を行う際の判断材料とすべきではありません。Oracle製品に説明されている機能の開発、リリース、タイミングおよび価格は、Oracle Corporationの単独の裁量により変更される場合があります。
以前サポートされているKubernetesバージョン
Container Engine for Kubernetesでは、以前、次のバージョンのKubernetesがサポートされていました:
Kubernetesバージョン | サポート終了 |
---|---|
1.25.12 | 2024年2月15日 |
1.25.4 | 2023年10月13日 |
1.24.1 | 2023年9月26日 |
1.23.4 | 2023年6月22日 |
1.22.5 | 2023年2月22日 |
1.21.5 | 2022年10月13日 |
1.20.11 | 2022年7月19日 |
1.20.8 | 2021年11月7日 |
1.19.15 | 2022年4月22日 |
1.19.12 | 2021年12月7日 |
1.19.7 | 2021年8月13日 |
1.18.10 | 2022年2月9日 |
1.17.13 | 2021年9月8日 |
1.17.9 | 2021年4月17日 |
1.16.15 | 2021年4月17日 |
1.15.12 | 2021年2月2日 |
1.15.7 | 2021年2月2日 |
1.14.8 | 2020年12月15日 |
1.13.x | 2020年3月21日 |
1.12.7 | 2020年1月29日 |
1.12.6 | 2019年4月15日 |
1.11.9 | 2019年9月9日 |
1.11.8 | 2019年4月15日 |
1.11.8より前の1.11.xバージョン | 2019年3月13日 |
1.10.x | 2019年4月12日 |
1.9.x | 2019年12月11日 |
1.8.x | 2018年9月7日 |
Container Engine for KubernetesでのKubernetesバージョン1.20に関するノート
Kubernetesバージョン1.20.8のサポートの発表により、Container Engine for Kubernetesで使用されるコンテナ・ランタイムは、DockerからCRI-Oに変わります。ただし、DockerイメージはOpen Container Initiative (OCI)に準拠しているため、既存のDockerイメージを変更する必要はありません。Kubernetesに関するかぎり、OCI準拠のイメージはすべて同じです。
次の点に注意してください:
- CRI-Oは、Kubernetesコンテナ・ランタイム・インタフェース(CRI)の実装であり、OCI互換のランタイムを使用できます。CRI-Oでは、既存のDockerイメージをプルして、Kubernetesバージョン1.20.8クラスタで実行できます。
- Dockerランタイムを使用する場合、デフォルト構成では、JSON形式を使用したコンテナの標準出力および標準エラー・ストリームが取得されます。これに対し、CRI-OはLogrus形式を使用します。FluentdやFluent Bitなどのロギングツールを使用する場合は、新しいパーサーを使用してCRIログを解析するようにツールの構成を更新します。例:
- Fluentdを使用する場合は、fluent-plugin-parser-criパーサーを使用します。
- Fluent Bitを使用する場合は、コンテナ・ランタイム・インタフェース(CRI)パーサーを使用します。
- 基盤となるdockerソケット/var/run/docker.sock(DockerではDockerと呼ばれるパターン)に依存するクラスタ内にワークフローがある場合があります。Kubernetesバージョン1.20.8以降、このようなワークフローは機能しなくなりました。
- Docker CLIを使用してホスト上でコマンドを実行した場合は、かわりにcrictl (CRI互換コンテナ・ランタイム用のCLI)を使用する必要があります。
- アップストリームKubernetesプロジェクトは、Kubernetesバージョン1.20の後のコンテナ・ランタイムとしてDockerを非推奨としています。
詳細をみるには:
- Kubernetes 1.20.8の詳細は、Kubernetes 1.20.8変更ログを参照してください
- dockershimアダプタ(以前はDockerがCRI互換ランタイムであるかのようにkubeletがDockerと対話できるように有効化されていた)の非推奨の詳細は、Dockershim DeprecationのFAQを参照してください