Elasticsearch: Копирование индексов с использованием _reindex API

Иногда возникают ситуации когда необходимо скопировать один или несколько индексов между кластерами, к примеру для тестирования. В Elasticsearchимеется встроенный механизм, позволяющую скопировать данные между кластерами.

Elasticsearch

Для создании копии индекса, есть несколько вариантов

  • Использовать резервную копию. Было бы слишком тяжело загружать всю резервную копию.
  • Создать новый снимок.
  • Экспортировать индекс в JSON и переиндексировать его.
  • Использовать API reindex с удаленным источником (production)

Для переноса копии, первым делом необходимо разрешить в elasticsearch копировать индексы с сервера, для этого в файле

Добавляем строку

<remoute_ip> - IP адрес ноды, откуда будем копировать.

После чего, потребуется перезапуск Elasticsearch.

После запуска, копируем индексы следующим образом

Где

  • <remoute_ip> - IP адрес ноды, откуда копируем данные
  • <index_name> - имя индекса для копирования
  • <new_index_name> - имя индекса после копирования
Понравилась статья? Поделиться с друзьями:
Добавить комментарий