如何在Nest中创建快照?

时间:2016-12-02 14:44:09

标签: c# elasticsearch nest

我需要从elasticsearch备份我的索引,然后将其恢复。我无法找到一个例子。我试着写这样的东西:

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

但由于repository参数,它的响应无效。

请帮我创建快照,然后恢复索引。

1 个答案:

答案 0 :(得分:0)

步骤:1

<强>义: e.g。

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

步骤:2

ES Configuration elasticsearch.ym l文件设置备份路径: e.g。

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

步骤:3

C#: e.g。

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));