1

У меня проблема с моим кластером, не уравновешивающим шарды с перезагруженным узлом, который теперь пуст.

  1. Я остановил my_node my_cluster и подождал, пока осколки и реплики не будут восстановлены. Это удалось.
  2. Затем я перезапустил my_node , но кластер не выделил ни одного осколка.
  3. Был создан новый индекс, и кластер назначил my_node .
  4. Один день спустя, у узла все еще есть только сегменты нового индекса.

Есть ли способ принудительного выравнивания осколков по узлам? В моем случае я протестировал перезапуск узла после запуска gateway.recover_after_time , но эта проблема заставляет меня задуматься:

  • Что мне делать, если я добавляю новый узел и хочу инициировать ребалансировку?

1 ответ1

0

NVM, похоже, что my_node - более старая версия, иasticsearch отказывается перераспределять, если версия более старая.

Я запустил curl -XPOST '10.10.1.4:9200/_cluster/reroute' -d '{ "commands" : [ { "allocate" : { "index" : "my_cluster", "node" : "my_node", "shard" : 0 } } ] }' и кластер ответил:

{

"ошибка": «RemoteTransportException [[es-master] [inet [/10.10.1.14:9300]] [cluster: admin/reroute]];

вложенный: ElasticsearchIllegalArgumentException [[allocate] выделение [my_cluster] [0] на узле [my_node] [o7-MlqgXTU-51t4O7iBu6g] [my_node] [inet [10.10.1.4/10.10.1.4:9300]] {max_noal_storage = true} не допускается, причина:

[ДА (шард не назначен одному узлу или хосту)]

[ДА (проходы по узлам включают / исключают / требуют фильтры)]

[ДА (основной уже активен)]

[ДА (ниже предела восстановления осколка [2])]

[ДА (отключение выделения игнорируется)]

[ДА (отключение выделения игнорируется)]

[ДА (не включена информация о распределении)]

[ДА (общий предел шарда отключен: [-1] <= 0)]

[НЕТ (версия целевого узла [1.6.0] старше, чем версия исходного узла [1.6.1])]

[ДА (достаточно диска для шарда на узле, бесплатно: [478.1 ГБ])]

[ДА (осколок не является основным или перемещение отключено)]

]; »,

"статус": 400

}

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .