Zookeeper - замена неисправного члена кластера

Я знаю, что пока есть кворум, мой ансамбль zookeeper будет продолжать работать. Но имеет ли отсутствующий сервер какое-либо заметное влияние на производительность кластера?

Предположим, что 1 из 3 серверов выходит из строя (и его жесткий диск уничтожается). Думаю, я могу присоединиться к новому (чистому) серверу без простоя, если он имеет тот же идентификатор сервера, что и старый, и два других сервера могут подключаться к нему (он имеет тот же IP / имя хоста, что и старый, в своих конфигурациях) ?

Каково влияние «повторной синхронизации» третьего сервера (т. Е. Повлияет ли это на скорость достижения консенсуса для нового материала)? Сколько времени обычно занимает эта операция (в зависимости от объема данных в zookeeper)?

Могу (или должен) я просто скопировать данные и журнал данных с одного из существующих серверов? Моментальные снимки, вероятно, безопасно копировать как есть, но для журналов транзакций может потребоваться «копия на определенный момент времени» (у меня есть btrfs CoW, так что это не проблема)?

Или, чтобы быть более конкретным, мне также интересно, являются ли данные на всех узлах эквивалентными (кроме последних записей) и взаимозаменяемыми. Или каким-то образом внутри хранится специфический для идентификатора сервера материал?

1
задан 28 February 2016 в 15:32
1 ответ

повторное соединение с тем же самым идентификатором сервера, но никакие данные не нарушат кворум. Вам нужно сначала удалить старый ID сервера и добавить новый сервер, используя новый ID.

.
0
ответ дан 4 December 2019 в 06:36