У вас есть несколько вариантов. Если вы можете остановить эластичный поиск на старом сервере, просто остановите его и скопируйте каталог данных. Это скопирует все.
Если нет, то вы можете использовать снимки . Сделайте снимок и восстановите данные на новом сервере. Вы можете указать, какие индексы должны быть зарезервированы и / или восстановлены. Пример создания снимка:
PUT /_snapshot/my_backup/snapshot_2?wait_for_completion=true
{
"indices": "index_1,index_2",
"ignore_unavailable": true,
"include_global_state": false,
"metadata": {
"taken_by": "kimchy",
"taken_because": "backup before upgrading"
}
}
Пример восстановления снимка (после копирования папки снимков на новый сервер):
POST /_snapshot/my_backup/snapshot_1/_restore
Если вы уже не настроили какие-либо папки снимков, выпридется перенастроить и перезапустить эластичный поиск.
Третий вариант - скопировать данные с помощью reindex с использованием удаленного сервера.
POST _reindex
{
"source": {
"remote": {
"host": "http://otherhost:9200",
"username": "user",
"password": "pass"
},
"index": "source",
"query": {
"match": {
"test": "data"
}
}
},
"dest": {
"index": "dest"
}
}
Этот третий вариант должен работать без перезапуска эластичного поиска.