Zum Inhalt

RunRestore

Ein RunRestore-Objekt kann erstellt werden, um die Wiederherstellung eines Namespace manuell über kubectl auszulösen. Jedes RunRestore-Objekt entspricht einer einzelnen Wiederherstellungsaufgabe.

Beachten Sie, dass bei einer über das Afi-Portal gestarteten Wiederherstellung kein entsprechendes RunRestore-Objekt erstellt wird. Ein RunRestore-Objekt wird ausschließlich über kubectl erstellt und muss einen eindeutigen Namen haben.

Nachfolgend sehen Sie ein Beispiel für eine RunRestore-YAML-Datei:

apiVersion: k8sbackup.afi.ai/v1alpha1
kind: RunRestore
metadata:
  namespace: postgresql-restored
  generateName: postgresql-
spec:
  policy:
    selectors: []
  archiveRef: 01GM47ZVFB4KKNXPP6Z0C6AA21
  pit: 1
  waitStableState: true
  • Das Feld namespace im Abschnitt metadata gibt den Ziel-Namespace der Wiederherstellung an. Dieser Namespace muss vor der Wiederherstellung erstellt werden; er wird nicht automatisch angelegt.
  • Mit dem Feld generateName wird ein eindeutiger Name für ein neues RunRestore-Objekt erzeugt.
  • Mit dem Feld policy.selectors im Abschnitt spec werden bestimmte Objekte aus einer Namespace-Sicherung wiederhergestellt, die den Selektoren entsprechen. Die Verwendung des Feldes selectors ähnelt seiner Verwendung in den BackupPolicy-Einstellungen. So lassen sich beispielsweise Objekte eines bestimmten Typs oder mit einem bestimmten Label wiederherstellen.
  • Das Feld archiveRef enthält die Kennung eines Sicherungsarchivs. Sie können sie abrufen, indem Sie die Archive-Objekte im Quell-Namespace der Wiederherstellung auflisten.
  • Das Feld pit (Abkürzung für „Point in Time“) enthält die Nummer eines Snapshots im Sicherungsarchiv. Sie können das Feld weglassen, um eine Wiederherstellung aus dem neuesten Snapshot anzufordern.
  • Das Feld waitStableState legt fest, ob die Wiederherstellungsaufgabe warten soll, bis die wiederhergestellte Anwendung einen stabilen Zustand erreicht hat. Dazu müssen insbesondere alle StatefulSets die gewünschte Replikatanzahl und alle Pods den Status „Ready“ erreicht haben.

Sie können eine Wiederherstellung ausführen, indem Sie wie folgt ein RunRestore-Objekt erstellen:

 kubectl create -f afi-runrestore.yaml

Mit dem folgenden Befehl können Sie die für einen bestimmten Namespace gestarteten Wiederherstellungen auflisten:

kubectl get runrestore -n postgresql