Consul.IO - Почему для Consul Cluster требуется как минимум кворум серверных узлов, чтобы быть активным
Я потратил немного времени на изучение Консула. Я читал о протоколе консенсуса. Я видел, что если кластер Консул хочет быть доступным, ему нужен узел кворума серверов, чтобы выбрать лидера. Интересно, что когда в консольном кластере работает менее чем кворум узлов, почему он не использует оставшиеся работающие узлы? Кто-нибудь может ответить за меня? огромное спасибо
1 ответ
Кворум необходим, чтобы гарантировать, что у вас никогда не будет противоречивых результатов. В противном случае кластер из восьми узлов (A B C D E F G H)
может произойти сбой в сети и разделиться на два кластера (A B C D) (E F G H)
, Затем эти два кластера принимают два отдельных решения, которые несовместимы (скажем, обновите одно и то же свойство некоторой конфигурации). Когда раздел заживает, нет возможности объединить два изменения.
Если требуется кворум, то вы знаете, что в любом кворуме имеется как минимум одна копия каждого принятого решения; таким образом, любые конфликты будут обнаружены по крайней мере одним узлом и запрещены.