2016-12-02 10 views
0

Ich muss meine Indizes von Elasticsearch sichern und dann wiederherstellen. Ich kann kein Beispiel finden. Ich habe versucht, so etwas zu schreiben: wegen repository ParameterWie erstelle ich einen Snapshot in Nest?

public virtual ISnapshotResponse BackUp() 
{ 
    return _client.Snapshot("D:\\snapshots", "1", descriptor => descriptor 
     .Indices(_indexString) 
     .IncludeGlobalState(false)); 
} 

Aber es hat ungültige Antwort.

Bitte helfen Sie mir, einen Snapshot zu erstellen und dann meine Indizes wiederherzustellen.

+0

Sie benötigen einen Snapshot-Repository mit Elasticsearch zuerst registrieren, bevor Sie einen Snapshot erstellen können. Siehe https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-snapshots.html. –

Antwort

0

Schritt: 1

Sense: z.B.

PUT /_snapshot/es_backup 
{ 
    "type": "fs", 
    "settings": { 
     "location": "C:/SIEM/New/elasticsearch-5.4.3/es_backup", 
     "compress": true 
    } 
} 

Schritt: 2

ES Configuration elasticsearch.ym l Datei gesetzt den Sicherungspfad: z.B.

path.repo: ["C:/SIEM/New/elasticsearch-5.4.3/es_backup"] 

Schritt: 3

C#: z.B.

var uri = new Uri("http://localhost:9200"); 
       var settings = new ConnectionSettings(uri); 
       var client = new ElasticClient(settings); 

       var result = client.Snapshot("es_backup", "snapshot_4", x => x.WaitForCompletion(true)); 
Verwandte Themen