Я собираюсь реализовать кластер kafka, состоящий из 3 машин, один для zookeeper и других 2 в качестве брокеров. У меня около 6 бытовых машин и около сотни производителей.Kafka кластер zookeeper отказ обработки
Теперь, если один из брокерских сбоев не удается потерять данные благодаря функции репликации. Но что, если zookeeper терпит неудачу, и тот же самый компьютер не может быть запущен? У меня есть несколько вопросов:
- Я заметил, что даже после неудач подрядчиков продолжали нажимать сообщения в назначенных брокерах. Но потребители больше не могли их получить. Потому что потребители получили незарегистрированные. Итак, в этом случае данные теряются постоянно?
- Как изменить zookeeper ip в конфигурации брокера во время выполнения? Должны ли они быть выключены, чтобы изменить zookeeper ip?
- Даже если новая машина zookeeper каким-то образом внедрена в кластер, предыдущие данные будут потеряны?
так предположим, что в установке, упомянутой выше, я также добавляю еще 2 машины для zookeeper, и если один из них не работает, может быть подключен любой из оставшихся двух? Будут ли у них все современные данные? – Shades88
Если вы добавите еще две машины, то только один может выйти из строя. Посмотрите на это: http://stackoverflow.com/questions/4228227/what-does-2n-1-quorum-mean Да, данные будут синхронизироваться, потому что эти машины реплицируются. – Markon
на среде разработки Я взял две машины и добавил эту конфигурацию в файл zookeeper.config каждой машины 'initLimit = 5 syncLimit = 2 server.1 = xxxx: 2888: 3888 server.2 = localhost: 2888: 3888' Server.2 сервер, с которого я собираюсь запустить zookeeper. Поэтому, когда я попадал в сценарий запуска, я получаю сообщение об ошибке, что сервер.1 с x.x.x.x: 3888 не может быть подключен. – Shades88