Выбор ответа Senior Архитектура Kubernetes обновлено

Почему etcd нечётное число узлов

Вопрос

Почему кластер etcd делают из 3 или 5 узлов, а не из 4?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Запись требует кворума: и 3, и 4 узла переживают отказ только одного узла. Raft требует большинства: при 3 узлах кворум 2 (выдерживает 1 отказ), при 4 кворум 3 (тоже 1 отказ), при 5 кворум 3 (2 отказа).

Варианты ответа

  1. etcd не умеет работать с чётным числом узлов: при 4 узлах выборы лидера зацикливаются
  2. Четвёртый узел замедляет чтение, потому что каждое чтение опрашивает все узлы кластера
  3. Так требует лицензия etcd: кластеры с чётным числом узлов не поддерживаются вендором
  4. Запись требует кворума: и 3, и 4 узла переживают отказ только одного узлаправильный ответ

Разбор

Raft требует большинства: при 3 узлах кворум 2 (выдерживает 1 отказ), при 4 кворум 3 (тоже 1 отказ), при 5 кворум 3 (2 отказа). Четвёртый узел не добавляет устойчивости, а запись должна подтвердить больше узлов, и вероятность отказа растёт. Технически etcd работает и с 4 узлами, лицензии тут ни при чём.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме