Мы планируем перенести наши кластеры с ElasticSearch 2.x на последнюю версию. Как это сделать проще всего?
Я уже написал сценарий развертывания для развертывания стека ELK 2 и стека ELK 6. К сожалению, ElasticSearch 6.x не может читать данные из ElasticSearch 2.x.
Перейти через ElasticSearch 5
Стоит ли также создавать сценарий развертывания для ELK-5, чтобы он автоматически обновлял все мои данные без потери данных? В основном это бревна.
Затем нам нужно было бы выполнить 2 развертывания во всех средах, и ElasticSearch преобразовал бы все данные для нас из старой в более новую версию.
ElasticSearch 2 и 6 рядом друг с другом
Не можем ли мы лучше изменить конфигурацию fluentd, чтобы записывать файлы журналов в ELK-2 и ELK-6 в течение недели одновременно. Потом через неделю удаляем кластер ELK-2? Таким образом, нам не придется делать странных вещей, создавая новый скрипт ElasticSearch-5 и выполняя 2 развертывания и 2 обновления данных.
Возможны как обновление, так и строительство нового. Что использовать - это ваше решение, в зависимости от того, какие данные вы хотите сохранить и сколько времени вы хотите потратить на обновления.
Обновление на месте останавливается на 5, да. Плагин миграции проверки, полный перезапуск кластера до 5, скользящий перезапуск до 6.
При создании новой 6 этап обновления пропускается, но у вас не будет старых индексов. Вы можете принимать данные одновременно на 2 и 6 устройствах, если ваше приложение поддерживает это. Вы можете использовать переиндексировать с удаленного для импорта из более старого кластера.