Добавление нод в кластер

Добрый день.
Мы используем elasticsearch для полнотекстового поиска. При этом основным хранилищем для данных является MS SQL. Так повелось, что в проект используется MS стек, поэтому и база MS SQL. ES используем уже больше года, и он дал нам всё, что требовалось и даже больше, чем ожидалось - это очень крутой продукт. В настоящий момент у нас используется ES на одной виртуальной машине, 1 нода, виртуалка на MS SERVER 2016. Мы использовали Ms Azure для размещения наших ресурсов (хранилища, сайт, виртуальные машины), но теперь переезжаем из облака по экономическим причинам. Встал вопрос, как лучше всего выполнить переезд ES. Есть идея, сделать кластер на двух серверах: текущий и новый. Чтобы данные все синхронизировались и после этого старый (тот что сейчас текущий) отключить, таким образом новый сервер останется единственным. После этого планируется уже в любом случае сделать кластер на нескольких серверах для повышения устойчивости и производительности, но сейчас вопрос про перенос данных на новую машину. Как лучше всего это реализовать?

И также вопрос про обновление версии, сейчас мы используем ES 6.3.1, а вышел уже 7.5. Имеет ли смысл обновиться и потребует ли это каких-то изменений в части интеграции с ES для записи данных и чтения (насколько в этих версиях реализована обратная совместимость). Мы записываем данные в ES, не используя какие-то доп. средства, например, Logstash, а просто пишем через REST API с помощью воркера, которые берет данные в MS SQL и записывает их в ES.

Также хотелось бы уточнить есть ли разница в производительности относительно операционной системы сервера, на котором будет работать ES, если это будет MS SERVER или линукс? И правильно ли понимаю, что в кластере у нод могут быть любые операционные системы?

Зависит от вашего понимания "лучше". Если лучше это проще, то через snapshot/restore.

Зависит от фич, которые вы используете. Запустите upgrade assistant, он вам все скажет.

Я не видел никаких конкретных данных, которые бы показывали, что одна система производительнее другой.

"Любые" - это слишком сильно сказано, но выбор достаточно большой. Смешанный кластер узлами на разных ОС, теоретически, должн работать, так как протокол обмена платформо-независимый. Но на практике, мы это не тестируем.

Игорь, спасибо за обратную связь.
Запустить upgrade assistant не получается, так как в кибане его сейчас нет, видимо у нас установлена упрощенная версия кибаны. Сначала придется обновить кибану и после этого и сделать снэпшоты и посмотреть upgrade assistant.

Можете уточнить порядок действий по переносу данных с одного сервера на другой?

  • остановить индексацию на старом кластере
  • зарегистрировать репозиторию на старом кластере
  • сделать снапшот на старом кластере
  • зарегистрировать репозиторию на новом кластере
  • восстановить данные из снапшота