Mise à jour

Processus de mise à niveau

Requête

La mise à jour d'un PaaS Kubernetes peut-être effectuée en self-service sur la page ressource du cluster Kubernetes depuis ITCare

Il est recommandé de procéder à la mise à jour de vos environnements de non-production dans un premier temps afin de pouvoir valider la nouvelle version ainsi que la compatibilité avec votre cluster.

Déroulement

L'upgrade du cluster Kubernetes suit ces étapes en mode Rolling Update :

  1. Les pods sont redémarrés noeud par noeud : 10% des noeuds worker à la fois

  2. Validation post-mise à jour (health check, monitoring).

Impacts

Les version api de ressources Kubernetes peuvent être obsolètes, voir supprimés lors de la mise à jour de version Kubernetes. Il y a une risque de cassure si vous avez des ressources avec une version api supprimé dans la nouvelle version de Kubernetes.

Pour éviter cela, une des solutions est d'utiliser l'outil "kubent" pour vérifier la compatibilité .

Kubent détecte les objets obsolètes du cluster Kubernetes. Vous devez migrer/modifier les ressources identifiés avant la mise à jour de version Kubernetes.

Vérification de compatibilité avant une mise à jour de version Kubernetes

Pour installer kubent :

sh -c "$(curl -sSL 'https://git.io/install-kubent')"

Pour identifier les objets obsolètes qui vont être supprimés dans la prochain version Kubernetes :

kubent [--context my-cluster]

Un exemple de l'output :

...
__________________________________________________________________________________________
>>> Deprecated APIs removed in 1.22 <<<
------------------------------------------------------------------------------------------
KIND                       NAMESPACE      NAME                                   API_VERSION                         REPLACE_WITH (SINCE)
Ingress                    <undefined>     toto                                 networking.k8s.io/v1beta1           networking.k8s.io/v1 (1.19.0)
...

Dans ce tutoriel, si votre cluster est planifié pour une mise à jour vers version Kubernetes 1.22, vous devez migrer votre resource ingress nommé "toto" de version api networking.k8s.io/v1beta1 vers networking.k8s.io/v1 avant la mise à jour.

Cette migration peut impliquer une modification des champs supplémentaires de la ressource. Veillez consulter la documentation officielle :

Mettre à jour votre cluster

En haut de la page du cluster, cliquez sur le bouton Gérer, puis sur Mettre à jour. Un message d'information apparait, cliquez sur Soumettre.

Temps de référence

Une mise à jour d'un cluster Kubernetes prend environ 15 minutes en moyenne. Les noeuds sont mis à jour les un après les autres en respectant un maximum de 10% de noeud sur le cluster.

Ces temps sont indicatifs et peuvent varier selon les spécificités du cluster.

Matrice de support OS / Kubernetes

Distribution Linux supportées par cegedim.cloud en fonction de la version de Kubernetes :

Versions de Kubernetes
Distribution Linux supportée

Kubernetes 1.28

Ubuntu 22.04, 24.04

Kubernetes 1.30

Ubuntu 22.04, 24.04

Kubernetes 1.32

Ubuntu 20.04, 22.04, 24.04

Chemins de mises à jour Kubernetes supportés

Version Source
Kubernetes 1.28
Kubernetes 1.30
Kubernetes 1.31
Kubernetes 1.32

Kubernetes 1.28

Kubernetes 1.28 → Kubernetes 1.30

Kubernetes 1.28 → Kubernetes 1.30 → Kubernetes 1.31

Kubernetes 1.28 → Kubernetes 1.30 → Kubernetes 1.31 → Kubernetes 1.32

Kubernetes 1.30

Kubernetes 1.30 → Kubernetes 1.31

Kubernetes 1.30 → Kubernetes 1.31 → Kubernetes 1.32

Kubernetes 1.31

Kubernetes 1.31

Kubernetes 1.31 → Kubernetes 1.32

Kubernetes 1.32

Kubernetes 1.31 → Kubernetes 1.32

Last updated