KVM / Libvirt: Как сделать локальные аренды DHCP доступными для локального DNS сервер через dnsmasq

Мы просто пробуем Docker-Swarm с 3 узлами, каждый узел действует как мастер и как рабочий. Это работает нормально, но я не знаю, является ли следующее поведение «нормальным».

Если я отключу один из этих трех узлов, роя обработает перераспределение служб нормально.

Если я отключу два из них 3, службы все еще работают, но если я подключаюсь к «последнему выжившему» и пытаюсь получить обзор роя с помощью:

docker node ls

, я получаю следующее сообщение об ошибке:

Error response from daemon: rpc error: code = 4 desc = context deadline exceeded

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

1
задан 16 June 2017 в 08:11
1 ответ

Здесь у вас есть объяснение : https://docs.docker.com/engine/swarm/raft/

Плот терпит до (N-1)/2 отказов и требует большинства или кворума (N/2)+1 членов для согласования значений, предложенных для кластера.

Когда вы запускаете 3 узла менеджера, ваш кластер может согласиться с тем, что один узел не работает, потому что оставшиеся 2 могут согласиться с тем, что третий не работает.

Если у вас остался только один узел, возможно, это тот, у которого есть проблема. Поэтому он не примет никаких изменений, и у вас не будет противоречивого состояния, если ваша сеть развалится.

.
2
ответ дан 3 December 2019 в 20:21

Теги

Похожие вопросы