## Voraussetzungen
– Ein ElasticSearch (ES)-Cluster mit Version 7.5 oder höher.
- Ein dateibasierter Speicherort (z. B. Amazon S3, Google Cloud Storage oder ein lokales Dateisystem) zum Speichern von ES-Backups.
– Ein Tool zum Verwalten von Snapshots (z. B. das ES-Snapshot-Tool oder ein Snapshot-Management-Tool eines Drittanbieters).
Schritt 1:Snapshot/Wiederherstellung aktivieren
Standardmäßig ist die Snapshot-/Wiederherstellungsfunktion in ElasticSearch deaktiviert. Um es zu aktivieren, fügen Sie die folgenden Zeilen zur Datei „elasticsearch.yml“ hinzu und starten Sie den Cluster neu.
„
Cluster.routing.allocation.enable:lokal
Folgende Zeile hinzufügen, um Snapshot/Wiederherstellung zu aktivieren
xpack.security.transport.ssl.enabled:false
„
Schritt 2:Repository für Backups vorbereiten
Für dieses Tutorial verwenden wir das lokale Dateisystem zum Speichern von Backups. Erstellen wir ein Verzeichnis:
„Bash
sudo mkdir -p /es-backups
„
Konfigurieren Sie nun ES, indem Sie der Datei „elasticsearch.yml“ die folgenden Zeilen hinzufügen:
„
Repository-Konfiguration
path.repo:["/es-backups"]
Repository definieren:Sicherungsverzeichnis
xpack.repositories.backup-dir.type:fs
xpack.repositories.backup-dir.location:„/es-backups“
„
Starten Sie den ES-Cluster neu.
Schritt 3:Snapshot erstellen
Als nächstes verwenden wir das „Snapshot“-Tool zur Snapshot-Erstellung. Führen Sie den folgenden Befehl aus:
„Bash
sudo bin/elasticsearch-snapshot create my-backup --repository backup-dir
„
Dadurch wird ein Snapshot mit dem Namen „my-backup“ im Verzeichnis „/es-backups“ erstellt.
Schritt 4:Sicherung überprüfen
Um das Vorhandensein eines Backup-Snapshots zu überprüfen, führen Sie den folgenden Befehl aus:
„Bash
sudo bin/elasticsearch-snapshot status --repository backup-dir
„
Eine Ausgabe wie diese sollte gedruckt werden:
„
GET _snapshot/backup-dir/my-backup gestartet
{
"Schnappschüsse" :[
{
„snapshot“:„mein-Backup“,
„repository“:„backup-dir“,
„state“:„ERFOLGREICH“,
"Indizes" :[
"alle",
„Blog“,
„Beiträge“,
„Autoren“,
"Kommentare",
„Tags“
],
„version_id“:7875,
"Scherben" :{
„gesamt“:200,
„fehlgeschlagen“ :0,
„erfolgreich“:200
}
}
]
}
„
Schritt 5:Aus Backup wiederherstellen
Um von einem Snapshot wiederherzustellen, führen Sie den folgenden Befehl aus:
„Bash
sudo bin/elasticsearch-snapshot restart my-backup --repository backup-dir --indices Blogbeiträge
„
Dadurch werden die Indizes „blog“ und „posts“ aus dem Backup-Snapshot „my-backup“ wiederhergestellt.