Versions de Kubernetes prises en charge

Découvrez les versions de Kubernetes actuellement prises en charge par Kubernetes Engine (OKE), ainsi que les détails des versions précédemment prises en charge et la prise en charge planifiée des versions futures.

Lorsque la prise en charge par Kubernetes Engine d'une nouvelle version de Kubernetes est annoncée, une ancienne version de Kubernetes cessera par la suite d'être prise en charge. Oracle recommande de mettre à niveau les grappes existantes pour utiliser la version la plus récente de Kubernetes prise en charge par Kubernetes Engine.

Cette rubrique répertorie les éléments suivants :

Version de Kubernetes actuellement prise en charge

Kubernetes Engine prend en charge trois versions de Kubernetes pour les nouvelles grappes. Pour au moins 30 jours après l'annonce de la prise en charge d'une nouvelle version de Kubernetes, Kubernetes Engine continue de prendre en charge la quatrième version disponible de Kubernetes. Après cette période, l'ancienne version de Kubernetes cesse d'être prise en charge.

Lors de la création d'une nouvelle grappe avec le moteur Kubernetes, Oracle recommande d'utiliser la version Kubernetes la plus récente prise en charge par Kubernetes Engine. Quand Oracle annonce la prise en charge de Kubernetes Engine pour une nouvelle version de Kubernetes, Oracle vous recommande de mettre à niveau les grappes existantes pour utiliser cette nouvelle version de Kubernetes dès que possible.

Calendrier de lancement

Kubernetes Engine (OKE) prend en charge les versions de Kubernetes suivantes pour les nouvelles grappes :

Version mineure de Kubernetes Version de correctif Kubernetes prise en charge par OKE Date de version mineure en amont Version mineure en amont - Date de fin de vie Date de lancement OKE OKE - Date de fin de vie
1.33 1.33.1 2025-04-23 2026-06-28 2025-06-17 1.33 is supported for 30 days after 1.36.1 OKE Release Date (planned)
1.33 1.33.0 2025-04-23 2026-06-28 2025-05-12

(Aperçu seulement. Voir Notes)

1.33 is supported for 30 days after 1.36.1 OKE Release Date (planned)
1.32 1.32.1 2024-12-11 2026-02-28 2025-03-18 1.32 is supported for 30 days after 1.35.1 OKE Release Date (planned)
1.31 1.31.10 2,024-8-13 2,025-10-28 2,025-7-30 1.31 est pris en charge pendant 30 jours après la date de sortie OKE 1.34.1 (planifiée)
1.31 1.31.1 2024-08-13 2025-10-28 2024-11-25 2025-09-01
1.30 1.30.10 2024-04-17 2025-06-28 2025-04-09 2025-07-21
1.30 1.30.1 2024-04-17 2025-06-28 2024-07-23 2025-05-13

Avis de non-responsabilité juridique : Le tableau est destiné à présenter notre orientation produit générale. Il est donné à titre d'information uniquement et ne peut être intégré à aucun contrat. Ce document ne constitue en aucun cas un engagement à fournir des composants, du code ou des fonctionnalités, et ne doit pas être retenu comme base pour une quelconque décision d'achat. Le développement, la commercialisation, la synchronisation et la tarification des fonctions ou fonctionnalités décrites pour les produits Oracle restent à la seule discrétion d'Oracle.

Notes sur la prise en charge de Kubernetes Engine pour Kubernetes version 1.33.0

Notez que la prise en charge de Kubernetes Engine pour Kubernetes version 1.33.0 est une version préliminaire de Kubernetes Engine. Cette version de prévisualisation de Kubernetes Engine n'est qu'à des fins d'accès anticipé et de test avec Kubernetes version 1.33.0.

Notons en particulier ce qui suit :

  • Cette version de prévisualisation de Kubernetes Engine a une prise en charge limitée et n'est disponible que dans le domaine OC1.
  • Pour les environnements de production, nous vous recommandons de ne pas utiliser cette version de prévisualisation de Kubernetes Engine.
  • Pour les environnements de production, nous vous recommandons d'attendre la version de production de Kubernetes Engine prenant en charge Kubernetes version 1.33.1, que nous prévoyons de rendre disponible en temps opportun après le lancement en amont de Kubernetes version 1.33.1.

Notes sur la prise en charge de Kubernetes Engine pour Kubernetes version 1.30

Notez que la prise en charge de Kubernetes Engine pour Kubernetes version 1.30 introduit également des modifications au comportement par défaut de Kubernetes Engine en ce qui concerne la réservation d'UC et de mémoire. Sur les grappes exécutant Kubernetes version 1.30 et ultérieure, les ressources d'UC et de mémoire pour les noeuds gérés sont réservées par défaut, à l'aide des indicateurs de kubelet --kube-reserved et --system-reserved respectivement (comme recommandé dans Meilleures pratiques : Réserver les ressources pour les démons de système Kubernetes et OS). Par conséquent, sur les grappes exécutant Kubernetes version 1.30 et ultérieure, il existe une différence entre le total des ressources d'un noeud et les ressources disponibles pour les charges de travail à demander. Pour plus d'informations, voir Meilleures pratiques : Réserver des ressources pour les démons système Kubernetes et OS.

Notes sur la prise en charge de Kubernetes Engine pour Kubernetes version 1.28

Notez que dans la version 1.28 de Kubernetes, la politique d'asymétrie de Kubernetes a été étendue. Avant la version 1.28 de Kubernetes, la politique d'asymétrie exigeait que les noeuds de plan de contrôle d'une grappe aient au plus deux versions d'avance sur les noeuds de travail. À partir de la version 1.28 de Kubernetes, la politique d'asymétrie de Kubernetes permet aux noeuds de plan de contrôle d'avoir jusqu'à trois versions en avance sur les noeuds de travail. Voir Politique de prise en charge d'asymétrie de version Kubernetes.

Le moteur Kubernetes applique la politique d'asymétrie étendue aux grappes exécutant Kubernetes version 1.28 et ultérieure.

Notes sur la prise en charge de Kubernetes Engine pour Kubernetes version 1.27

Notez que la version 1.27 de Kubernetes a cessé de servir l'API Kubernetes obsolète suivante :

  • CSIStorageCapacity (version de l'API storage.k8s.io/v1beta1)

Pour plus d'informations sur la migration à partir des API obsolètes, voir le guide de migration des API obsolètes pour Kubernetes.

Notes sur la prise en charge de Kubernetes Engine pour Kubernetes version 1.26

Notez que la version 1.26 de Kubernetes a cessé de servir un certain nombre d'API Kubernetes obsolètes, notamment :

  • FlowSchema (version de l'API flowcontrol.apiserver.k8s.io/v1beta1)
  • HorizontalPodAutoscaler (version de l'API d'ajustement automatique/v2beta2)
  • PriorityLevelConfiguration (version de l'API flowcontrol.apiserver.k8s.io/v1beta1)

Pour plus d'informations sur la migration à partir des API obsolètes, voir le guide de migration des API obsolètes pour Kubernetes.

La prise en charge de Kubernetes version 1.26.7 a été publiée pour résoudre les problèmes en amont suivants avec Kubernetes version 1.26.2 :

Notes sur la prise en charge de Kubernetes Engine pour Kubernetes version 1.25

Notez que la version 1.25 de Kubernetes a cessé de servir un certain nombre d'API Kubernetes obsolètes, notamment :

  • CronJob (version de l'API batch/v1beta1)
  • EndpointSlice (version de l'API de découverte.k8s.io/v1beta1)
  • Événement (version de l'API events.k8s.io/v1beta1)
  • HorizontalPodAutoscaler (version de l'API d'ajustement automatique/v2beta1)
  • PodDisruptionBudget (version de l'API de politique/v1beta1)
  • PodSecurityPolicy (version de l'API de politique/v1beta1)
  • RuntimeClass (version de l'API node.k8s.io/v1beta1)

Pour plus d'informations sur la migration à partir des API obsolètes, voir le guide de migration des API obsolètes pour Kubernetes.

La prise en charge de Kubernetes version 1.25.12 a été publiée pour résoudre les problèmes en amont suivants avec Kubernetes version 1.25.4 :

Note

Le projet Kubernetes en amont a abandonné les politiques de sécurité des pods dans Kubernetes version 1.21 et a supprimé la fonction dans Kubernetes version 1.25. Par conséquent, Kubernetes Engine ne prend pas en charge les politiques de sécurité des pods et le contrôleur d'admission PodSecurityPolicy dans les grappes exécutant Kubernetes version 1.25 et ultérieure.

Si vous avez besoin de fonctionnalités similaires, envisagez plutôt d'utiliser les normes de sécurité des pods Kubernetes et le contrôleur d'admission PodSecurity (ainsi que les politiques Privilégié, Référence et Limité). Par défaut, le moteur Kubernetes active le contrôleur d'admission PodSecurity dans les grappes exécutant Kubernetes version 1.23 et ultérieure, afin de prendre en charge les normes de sécurité des pods. Pour plus d'informations sur les normes de sécurité de pod Kubernetes et le contrôleur d'admission PodSecurity, voir Normes de sécurité de pod dans la documentation sur Kubernetes.

Vous pouvez également envisager d'utiliser d'autres alternatives en cours de développement dans l'écosystème Kubernetes pour appliquer des politiques.

Si vous décidez de passer des politiques de sécurité de pod et du contrôleur d'admission PodSecurityPolicy aux normes de sécurité de pod et au contrôleur d'admission PodSecurity, voir Migrer de PodSecurityPolicy vers le contrôleur d'admission PodSecurity intégré dans la documentation sur Kubernetes. Notez qu'il est important de terminer la migration avant de créer une nouvelle grappe exécutant Kubernetes version 1.25, ou avant de mettre à niveau une grappe Kubernetes version 1.24 existante pour exécuter Kubernetes version 1.25. Notez également que la console offre un moyen pratique de désactiver l'utilisation du contrôleur d'admission PodSecurityPolicy dans les grappes Kubernetes existantes créées et gérées par le moteur Kubernetes (voir Utilisation de la console pour désactiver le contrôleur d'admission PodSecurityPolicy).

Notes sur la prise en charge de Kubernetes Engine pour Kubernetes version 1.22

Notez que la version 1.22 de Kubernetes a cessé de servir un certain nombre d'API Kubernetes obsolètes, notamment :

  • Ressources de webhook
  • CustomResourceDefinition
  • APIService
  • TokenReview
  • Ressources SubjectAccessReview
  • CertificateSigningRequest
  • Location
  • Trafic entrant
  • IngressClass
  • Ressources RBAC
  • PriorityClass
  • Ressources de stockage

Pour plus d'informations sur la migration à partir des API obsolètes, voir le guide de migration des API obsolètes pour Kubernetes.

Soutien planifié pour les versions futures de Kubernetes

La prise en charge de Kubernetes Engine est actuellement prévue pour les versions futures suivantes de Kubernetes. Notez que les dates futures peuvent être modifiées sans préavis. En outre, notez l'avis juridique suivant le tableau.

Version mineure de Kubernetes Version de correctif Kubernetes prise en charge par OKE Date de version mineure en amont Version mineure en amont - Date de fin de vie Date de lancement OKE
1.34 To Be Confirmed To Be Confirmed To Be Confirmed To Be Confirmed
1.35 To Be Confirmed To Be Confirmed To Be Confirmed To Be Confirmed
1.36 À confirmer À confirmer À confirmer À confirmer

Avis de non-responsabilité juridique : Le tableau est destiné à présenter notre orientation produit générale. Il est donné à titre d'information uniquement et ne peut être intégré à aucun contrat. Ce document ne constitue en aucun cas un engagement à fournir des composants, du code ou des fonctionnalités, et ne doit pas être retenu comme base pour une quelconque décision d'achat. Le développement, la commercialisation, la synchronisation et la tarification des fonctions ou fonctionnalités décrites pour les produits Oracle restent à la seule discrétion d'Oracle.

Versions de Kubernetes précédemment prises en charge

Auparavant, Kubernetes Engine prenait en charge les versions suivantes de Kubernetes :

Version de Kubernetes Fin de la prise en charge
1.29.10 Avril 17, 2025
1.29.1 Février 21, 2025
1.28.10 January 27, 2025
1.28.2 October 8, 2024
1.27.10 August 27, 2024
1.27.2 May 21, 2024
1.26.7 April 29, 2024
1.26.2 October 13, 2023
1.25.12 February 15, 2024
1.25.4 October 13, 2023
1.24.1 September 26, 2023
1.23.4 June 22, 2023
1.22.5 February 22, 2023
1.21.5 October 13, 2022
1.20.11 July 19, 2022
1.20.8 November 7, 2021
1.19.15 April 22, 2022
1.19.12 November 7, 2021
1.19.7 August 13, 2021
1.18.10 February 9, 2022
1.17.13 September 8, 2021
1.17.9 April 17, 2021
1.16.15 April 17, 2021
1.15.12 February 2, 2021
1.15.7 February 2, 2021
1.14.8 December 15, 2020
1.13.x March 21, 2020
1.12.7 January 29, 2020
1.12.6 April 15, 2019
1.11.9 September 9, 2019
1.11.8 April 15, 2019
1.11.x versions prior to 1.11.8 March 13, 2019
1.10.x April 12, 2019
1.9.x December 11, 2019
1.8.x September 7, 2018

Notes sur la prise en charge de Kubernetes Engine pour Kubernetes version 1.20

Avec l'annonce de la prise en charge de Kubernetes version 1.20.8, la plate-forme d'exécution de conteneur utilisée par Kubernetes Engine passe de Docker à CRI-O. Toutefois, vous n'avez pas besoin de modifier vos images Docker existantes, car les images Docker sont conformes à Open Container Initiative (OCI). En ce qui concerne Kubernetes, toutes les images conformes à OCI sont identiques.

Notez ce qui suit :

  • CRI-O est une mise en oeuvre de l'interface d'exécution de conteneur (CRI) de Kubernetes, qui permet l'utilisation d'exécutions compatibles OCI. CRI-O peut extraire vos images Docker existantes et les exécuter sur vos grappes Kubernetes version 1.20.8.
  • Lors de l'utilisation de l'exécution Docker, la configuration par défaut capture la sortie standard et les flux d'erreur standard des conteneurs au format JSON. En revanche, CRI-O utilise le format Logrus. Si vous utilisez un outil de journalisation tel que Fluentd ou Fluent Bit, mettez à jour la configuration de l'outil pour utiliser un nouvel analyseur afin d'analyser les journaux CRI. Par exemple :
  • Vous pouvez avoir un flux de travail dans une grappe qui repose sur le connecteur logiciel docker sous-jacent /var/run/docker.sock (un modèle souvent appelé Docker dans Docker). À partir de Kubernetes version 1.20.8, un tel flux de travail ne fonctionne plus.
  • Si vous avez précédemment utilisé l'interface de ligne de commande Docker pour exécuter des commandes sur un hôte, vous devez plutôt utiliser crictl (interface de ligne de commande pour les exécutions de conteneur compatibles avec l'interface de ligne de commande).
  • Le projet Kubernetes en amont est en train d'abandonner Docker en tant que environnement d'exécution de conteneur après Kubernetes version 1.20.

Pour en savoir plus :

  • Voir Kubernetes 1.20.8 Changelog pour plus d'informations sur Kubernetes 1.20.8
  • Voir la FAQ sur l'amortissement de dockershim pour plus d'informations sur l'amortissement de l'adaptateur de dockershim (qui a précédemment permis au kubelet d'interagir avec Docker comme si Docker était un environnement d'exécution compatible avec CRI)