ZooKeeper показывает несуществующий узел после отключения сети

У меня есть облачная установка Solr с 3 коробками с ZooKeeper, на каждом сервере установлены Solr и ZK (я знаю, что это не идеально). Все работало нормально, пока сегодня утром не отключилась сеть.

Коробки сообщений о сбоях A и C вернулись, как и ожидалось. В поле B этого не произошло, перезапуск службы Solr выявил ошибку, в которой указано A previous ephemeral live node still exists. Solr cannot continue.

При просмотре пути узла B ZooKeeper Live_Nodes установка Solr уже отображается как активный работающий узел, даже если Solr отключен. Этот узел не отображается в полях A и B пути Live_nodes. Я также не могу delete или rmr этого узла, потому что ZooKeeper сообщает, что он не существует.

Я попытался Solr stop -all на случай, если был скрытый процесс, который я не видел, но Solr заявляет, что запущенных экземпляров нет.

Следующим шагом была установка нового экземпляра ZooKeeper на B. После этого ls /live_nodes продолжает показывать этот экземпляр solr, которого не существует.

Любая помощь приветствуется. Спасибо.


person AJD25    schedule 16.08.2019    source источник
comment
Я должен добавить, что цель состоит в том, чтобы удалить плохой узел из ZooKeeper, чтобы мы могли запустить Solr и снова запустить все. Спасибо еще раз.   -  person AJD25    schedule 16.08.2019


Ответы (1)


К вашему сведению, я продолжил устранение неполадок и в итоге перестроил все 3 узла ZooKeeper. Это привело меня к отдельной ошибке, показывающей, что осколок коллекции сломан. После устранения неполадок с файлом «clusterstate.json» исправлением стало создание дублирующейся коллекции с отдельным именем, а затем псевдонимом для перенаправления трафика. После этого я смог удалить сломанную коллекцию.

Я думаю, что дублирующаяся коллекция и псевдоним исправили бы это все время.

Надеюсь, это поможет кому-то в будущем. Спасибо.

person AJD25    schedule 28.08.2019