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 sollte 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 sollte 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 StatefulSet-Objekte die gewünschte Anzahl von Replikaten aufweisen, alle Pod-Objekte bereit sein usw.

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