Как добавить второй ZooKeeper на той же машине?
Я использую 2 выделенных сервера, на которые планирую установить Solrcloud. Я установил ZooKeeper, используя apt-get install zookeeperd
и ZooKeeper работает на обеих системах.
Из solr docs я узнал, что 3 зоопарка рекомендованы для производства.
Как я могу добавить второго зоопарка на одну машину? Конфиг позволяет только один.
2 ответа
Вы можете скачать два пакета tar.gz zookeeper, распаковать их в каталог /path/to/zookeepers как zookeeper_one и zookeeper_two. Впоследствии вы можете скопировать сценарий службы zookeeper, который находится в пакете apt-get, изменить путь и порт и запустить двух zookeepers. Обратите внимание, что настоятельно рекомендуется использовать по одному зоопарку на узел, как если бы на одном узле работало несколько зоопарков, и узел вышел из строя, весь кворум упал.
Технически я согласен с @Navern использовать контейнеры, так как это вариант для запуска нескольких зоопарков на одной машине. Однако с точки зрения кворума Zookeeper на одном узле должен быть установлен максимум один сервер Zookeeper. Например, использование 5 zookeepers означает, что 2 узла могут отключиться без каких-либо проблем. 5 зоопарков на двух узлах означают, что если узел выходит из строя, который содержит 3 зоопарка, то кворум понижается, то есть SPOF
Я предлагаю использовать докер для этой задачи.
Вы создаете один образ с помощью Dockerfile, а затем запускаете два контейнера с разными опубликованными портами. В вашем Dockerfile вы можете использовать apt-get install zookeeperd.
Docker поможет в создании изолированной среды.