Я пытаюсь сделать резервную копию индекса в ElasticSearch 6.2.2 в Windows и восстановить его в ElasticSearch 6.2.3 в Linux. Я делаю следующие шаги, но я никогда не вижу снимки на машине Linux (на основе https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-snapshots.html):
Регистрация хранилища снимков в Windows
PUT /_snapshot/my_backup
{
"type": "fs",
"settings": {
"location": "C:\\EsBackup",
"compress": true
}
}
Создание снимка в Windows
PUT /_snapshot/my_backup/bcp?wait_for_completion=true
{
"indices":"myindex"
}
Убедитесь, что снимок создан
GET /_snapshot/my_backup/bcp
Показывает успех
{
"snapshots": [
{
"snapshot": "bcp",
"uuid": "xGLvw4JnRqadcyg4fxH1HA",
"version_id": 6020299,
"version": "6.2.2",
"indices": [
"bcp"
],
"include_global_state": true,
"state": "SUCCESS",
"start_time": "2018-05-10T16:48:22.970Z",
"start_time_in_millis": 1525970902970,
"end_time": "2018-05-10T16:48:36.816Z",
"end_time_in_millis": 1525970916816,
"duration_in_millis": 13846,
"failures": [],
"shards": {
"total": 3,
"failed": 0,
"successful": 3
}
}
]
}
Я копирую файлы в linux и проверяю, чтобы размер и количество файлов были одинаковыми. (Это около 200 файлов размером 500 МБ). Я копирую все в папку ~/elasticsearch-6.2.3/backup
Инициализировать хранилище
curl -X PUT "localhost:9200/_snapshot/my_backup" -H 'Content-Type: application/json' -d'{"type": "fs","settings": {"location": "~/elasticsearch-6.2.3/backup","compress": true}}'
и получил подтверждение: {"acknowledged":true}
Итак, я проверяю, какие снимки доступны
curl -X GET "localhost:9200/_snapshot/my_backup/_status"
Но список пуст {"snapshots":[]}
и восстановить
curl -X POST "localhost:9200/_snapshot/my_backup/bcp/_restore?pretty"
возвращает ошибку
{
"error" : {
"root_cause" : [
{
"type" : "snapshot_restore_exception",
"reason" : "[my_backup:bcp] snapshot does not exist"
}
],
"type" : "snapshot_restore_exception",
"reason" : "[my_backup:bcp] snapshot does not exist"
},
"status" : 500
}
Какой шаг я пропускаю? Я пытался проверить хранилище, и оно действительно. Версии 6.2.2 и 6.2.3 должны быть совместимы.