Elasticsearch Cleanup-Snapshot-Repository

Elasticsearch Cleanup Snapshot Repository



„Sicherungen sind eine sehr wichtige Funktion bei der Arbeit mit Datenbanken. In Elasticsearch können wir mithilfe von Snapshots Backups von bestimmten Indizes, Datenströmen, globalen Zuständen, Funktionen oder dem gesamten Cluster erstellen.

Wie bei allen Datenbanken kann sich der Status des Clusters jedoch im Laufe der Zeit ändern und hängt von der Snapshot-Häufigkeit ab, was dazu führen kann, dass ein Snapshot veraltete Daten enthält, auf die der aktuelle Snapshot nicht mehr verweist.







In diesem Beitrag besprechen wir, wie Sie die Elasticsearch-Snapshot-Repository-API verwenden, mit der Sie den Inhalt des Snapshot-Repositorys scannen und die aktuellen Daten berücksichtigen können. Die API entfernt dann alle nicht referenzierten Daten.“



Tauchen wir ein.



HINWEIS : Es ist am besten zu verstehen, dass die nicht referenzierten Daten die Repository-, Snapshot- oder Cluster-Leistung nicht beeinträchtigen. Es nimmt jedoch Speicherplatz in Anspruch, was in großen Umgebungen von entscheidender Bedeutung sein kann.





Anforderungssyntax

Der folgende Code zeigt die Anforderungssyntax zum Abfragen der Snapshot-Bereinigungs-API.

POST / _Schnappschuss /< Repository >/ _Aufräumen



Der API-Endpunkt erfordert je nach Sicherheits- und Berechtigungskonfigurationen möglicherweise „Verwaltungs“-Berechtigungen auf dem Cluster.

Pfadparameter

Die Anfrage unterstützt die folgenden Pfadparameter:

  1. – gibt den Namen des Repositorys an, auf dem die Bereinigungsoperation ausgeführt wird. Dies ist ein erforderlicher Parameter.

Abfrageparameter

Um die Abfrage zu ändern, können Sie die folgenden Abfrageparameter einschließen:

  1. master_timeout – definiert die Wartezeit auf eine Antwort vom Master-Knoten. Die Anforderung schlägt mit einem Fehler fehl, wenn nach Ablauf der Dauer keine Antwort empfangen wird. Der Standardwert für die Master-Timeout-Dauer beträgt 30 Sekunden.
  2. Auszeit – gibt die Wartezeit für die Antwort an. Standardmäßig 30 Sekunden.

Antworttext

Die folgenden Eigenschaften sind im Antworttext enthalten:

  1. Ergebnisse – Dies ist ein Objekt, das Statistiken enthält, die von der Bereinigungsoperation durchgeführt wurden. Diese Statistiken beinhalten:
    a. gelöschte_bytes – Anzahl der von der Bereinigungs-API entfernten Bytes.
    b. gelöschte_blobs – Anzahl der aus dem Repository gelöschten großen Binärobjekte.

Beispiel

Das folgende Beispiel zeigt, wie eine Bereinigungsoperation für das Snapshot-Repository unter dem Namen „sample_repo“ ausgeführt wird.

kräuseln -XPOST 'http://localhost:9200/_snapshot/sample_repo/_cleanup' -H 'kbn-xsrf: Berichterstattung'

Ausgabe

{
'Ergebnisse' : {
'gelöschte_bytes' : 100 ,
'gelöschte_blobs' : 25
}
}

Sie können die Snapshot-Repository-Bereinigung auch über das Kibana-Dashboard ausführen.

Navigieren Sie zu Management -> Stack Management -> Snapshot and Restore -> Repositories.

Öffnen Sie das Ziel-Repository und wählen Sie das saubere Repository aus.

Nachdem die Bereinigung abgeschlossen ist, sollte die Anfrage die bereinigten Statistiken anzeigen:

Fazit

In diesem Tutorial haben wir den Prozess der Durchführung einer Snapshot-Repository-Bereinigung mit der Elasticsearch-API und dem Kibana-Dashboard besprochen. Sammeln Sie die Dokumente für weitere Informationen.

Danke fürs Lesen!!