RunRestore¶
Un objet RunRestore peut être créé pour déclencher manuellement la restauration d’un espace de noms via kubectl. Chaque RunRestore correspond à une seule tâche de restauration.
Notez qu’une restauration lancée depuis le portail Afi ne crée pas d’objet RunRestore correspondant. Un objet RunRestore est créé uniquement via kubectl et doit porter un nom unique.
Voici un exemple de fichier YAML RunRestore :
apiVersion: k8sbackup.afi.ai/v1alpha1
kind: RunRestore
metadata:
namespace: postgresql-restored
generateName: postgresql-
spec:
policy:
selectors: []
archiveRef: 01GM47ZVFB4KKNXPP6Z0C6AA21
pit: 1
waitStableState: true
- Le champ
namespacede la sectionmetadatapointe vers l’espace de noms de destination de la restauration. Notez que cet espace de noms doit être créé avant la restauration ; il n’est pas créé automatiquement. - Le champ
generateNamepermet de générer un nom unique pour un nouvel objetRunRestore. - Le champ
policy.selectorsde la sectionspecpermet de restaurer, depuis la sauvegarde de l’espace de noms, les objets précis qui correspondent aux sélecteurs (l’utilisation du champselectorsest semblable à celle des paramètres de BackupPolicy), par exemple pour restaurer les objets d’un type donné ou portant une étiquette donnée. - Le champ
archiveRefest l’identifiant d’une archive de sauvegarde (vous pouvez l’obtenir en répertoriant les objetsArchivedans l’espace de noms source de la restauration). - Le champ
pit(abréviation de point-in-time) correspond au numéro d’un instantané dans l’archive de sauvegarde. Il peut être omis pour demander une restauration à partir de l’instantané le plus récent. - Le champ
waitStableStateindique si la tâche de restauration doit attendre que l’application restaurée atteigne un état stable (notamment que tous les StatefulSets aient atteint le nombre souhaité de réplicas, que tous les Pods soient prêts, etc.).
Vous pouvez exécuter une restauration en créant un objet RunRestore comme suit :
Vous pouvez répertorier les restaurations lancées vers un espace de noms donné comme suit :