Vous pouvez sauvegarder et restaurer des charges de travail de cluster Tanzu Kubernetes à l'aide du Plug-in Velero pour vSphere. Cependant, si vous avez besoin d'une portabilité, utilisez une instance autonome de Velero.

Conditions requises

Pour sauvegarder et restaurer des charges de travail de clusters Tanzu Kubernetes à l'aide du Plug-in Velero pour vSphere, vous devez d'abord installer Velero et Plug-in Velero pour vSphere sur le cluster cible. Reportez-vous à la section Installer et configurer le Plug-in Velero pour vSphere sur un cluster Tanzu Kubernetes.

Sauvegarder une charge de travail

Vous trouverez ci-dessous un exemple de commande pour créer une sauvegarde Velero.
velero backup create <backup name> --include-namespaces=my-namespace

La sauvegarde Velero est marquée comme Completed une fois que tous les snapshots ont été pris et que les métadonnées Kubernetes, à l'exception des snapshots de volume, ont été chargées dans le magasin d'objets. À ce stade, les tâches de mouvement de données asynchrones, c'est-à-dire le chargement d'un snapshot de volume, s'exécutent toujours en arrière-plan et peuvent prendre un certain temps. Nous pouvons vérifier l'état du snapshot de volume en surveillant les ressources personnalisées (CR) de snapshot.

Snapshots

Les snapshots sont utilisés pour la sauvegarde de volumes persistants. Pour chaque snapshot de volume, un snapshot de CR est créé dans le même espace de noms que la réclamation de volume persistant (PVC) faisant l'objet d'un snapshot.

Vous pouvez obtenir tous les snapshots dans l'espace de noms PVC en exécutant la commande suivante.
kubectl get -n <pvc namespace> snapshot
La définition de ressources personnalisées (CRD) de snapshot comporte un certain nombre de phases pour le champ .status.phase, notamment :
Phase de snapshot Description
New Pas encore traité
Snapshotted Un snapshot local a été pris
SnapshotFailed Échec du snapshot local
Uploading Le snapshot est en cours de téléchargement
Uploaded Le snapshot est téléchargé
UploadFailed Le snapshot n'a pas pu être téléchargé
Canceling Le téléchargement du snapshot est en cours d’annulation
Canceled Le téléchargement du snapshot est annulé
CleanupAfterUploadFailed Échec du nettoyage du snapshot local après le téléchargement du snapshot

Restaurer une charge de travail

Vous trouverez ci-dessous un exemple de commande de restauration de Velero.
velero restore create --from-backup <velero-backup-name>

La restauration de Velero est marquée comme Completed lorsque des snapshots de volume et d'autres métadonnées Kubernetes ont été restaurés sur le cluster actuel. À ce stade, toutes les tâches de plug-in vSphere liées à cette restauration sont également terminées. Il n'y a pas de tâches de déplacement de données asynchrones en arrière-plan comme dans le cas de la sauvegarde Velero.

CloneFromSnapshots

Pour restaurer chaque snapshot de volume, une ressource personnalisée (CR) CloneFromSnapshot est créée dans le même espace de noms que le snapshot de PVC initial. Nous pouvons obtenir toutes les instances de CloneFromSnapshots dans l'espace de noms PVC en exécutant la commande suivante.
kubectl -n <pvc namespace> get clonefromsnapshot
La CRD CloneFromSnapshot comporte des phases clés pour le champ .status.phase :
Phase de snapshot Description
New Le clonage à partir du snapshot n'est pas terminé
InProgress Le snapshot du volume vSphere est en cours de téléchargement à partir du référentiel distant
Completed Le clonage à partir du snapshot est terminé
Failed Le clonage à partir du snapshot a échoué