etcd w klastrze Kubernetes HA¶
W przypadku etcd osiągnięcie HA jest nieco trudniejsze. Konieczne jest osiągnięcie quorum do poprawnego działania klastra etcd.
Wynika to z algorytmu, który działa wewnątrz etcd, jest to RAFT. Jeden z węzłów pełni rolę lidera, reszta jest Read-Only, lecz może przekazywać zapisy do lidera.
Gdy nie jest zapewnione quorum, cały klaster przechodzi w stan Read-only, nic nie zapisuje.
Do osiągnięcia Quorum konieczne jest, aby:
Do awarii jednego z wezłów konieczne jest posiadanie chociaż 3 węzłów etcd:
$$ N = 3 $$
$$ Quorum = floor(3/2) + 1 = 1 + 1 = 2 $$
wtedy dwa działające węzły tworzą już Quorum.
Warning
Najlepiej wybierać nieparzystą liczbę węzłów do klastra etcd - nie ma ryzyka wystąpienia partycji sieciowych z quorum (np. dla 6 węzłów, gdy nastąpi podział sieci po 3 węzły nigdy nie wystąpi quorum).