Aller au contenu principal

Mettre à niveau les nœuds

Pour assurer les nouvelles fonctionnalités délivrées par la communauté de Kubernetes et les mises à jour de sécurité, il est nécessaire d'effectuer des mises à niveau des nœuds du cluster Kubernetes.

Concurrence des opérations

La suppression de nœuds dans un cluster rentre dans les actions qui impactent techniquement le cluster.
Cette action peut être lancée seulement si le cluster en question n'a pas d'autre opération en cours. Pour rappel, toute opération constitue une demande qui a un impacte technique sur le cluster. Voici la liste des opérations:

  • Ajouter des workers
  • Supprimer des workers
  • Mettre à jour les paquets OS des workers
  • Mettre à niveau les workers
  • Mettre à niveau le planel de contrôle
  • Créer un cluster
  • Supprimer un cluster

Prérequis

  • Un compte NumSpot.
  • Un espace NumSpot auquel le compte est associé.
  • Un compte avec le rôle Kubernetes Admin sur l'espace ou des accès RBAC qui accordent les droits nécessaires à la mettre à niveau les workers dans le cluster ciblé.
  • Un jeton de connexion associé au compte NumSpot utilisé.

Mettre à niveau les workers

Choix de la version

La liste des versions disponibles peut être consultée depuis une API qui liste toutes les versions disponibles.

À noter qu'il est impossible pour les workers d'avoir une version supérieure à celle des masters.

Mise à niveau de version importante

L'écart de version entre la version initiale de Kubernetes du cluster et celle demandée ne doit pas dépasser deux versions MINOR. Il est donc requis pour une mise à niveau MINOR, d'effectuer d'abord une mise à niveau vers la dernière version PATCH, puis procéder à une mise à niveau MINOR.

Les données qu'il faut avoir

  • SPACE_ID est l'identifiant de l'espace NumSpot dans lequel le cluster a été créé
  • REGION est la région dans laquelle l'espace NumSpot a été créé
  • ACCESS_TOKEN est le jeton (token) généré via la connexion (consulter la génération d'un token d'accès)
  • CLUSTER_ID est l'identifiant du cluster NumSpot sur lequel on veut effectuer la mise à jour

Requête de mise à niveau des workers

Exemple de requête: Mise à niveau des **workers** dans un cluster Kubernetes
export REGION="myregion"
export SPACE_ID="myspaceid"
export ACCESS_TOKEN="myaccesstoken"
export CLUSTER_ID="myclusterid"

curl -X POST https://api.$REGION.numspot.com/kubernetes/spaces/$SPACE_ID/clusters/$CLUSTER_ID/workers/upgrade \
--header "Authorization: Bearer $ACCESS_TOKEN" \
--header 'Content-Type: application/json' \
--data '{
"version": "1.29.5"
}'

Si l'opération lancée est validée et acceptée, un objet Operation est retourné par l'API avec un code de statut 202 Accepted:

Exemple de réponse: Mise à niveau des **workers** dans un cluster Kubernetes

{
"id": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
"operationType": "UpgradeWorkers",
"status": "PENDING",
"progress": "During step",
"target": "https://..../kubernetes/spaces/{spaceId}/clusters/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
"selfLink": "https://..../kubernetes/spaces/{spaceId}/operations/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
"targetName": "myCluster",
"clusterid": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
...
}