Открыть список
Как стать автором
Обновить

Комментарии 2

Что случится, если consul ляжет?
Есть 3 варианта падения консула, если рассматривать кворум из трёх мастеров:

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

2. Упало больше одного мастера. Сетап из 3х мастеров может пережить падение только одного мастера, поэтому запись в распределенный лог (raft) прекратится, service discovery не будет работать, как и регистрация новых сервисов в консуле будет невозможна. Consul-агенты будут отдавать старое состояние. Это значит, что если не будет миграции аллокаций, то с точки зрения пользователя (сервиса или пользователя сайта) ничего не произошло. В случае активной миграции аллокаций из-за нестабильности в датацентре или по другим причинам, Envoy за счет retry + outlier detection несколько сгладит эффект: попытки сходить из сервиса в другую аллокацию, которая переехала, срезультируют в connection error, после чего envoy уберет из ротации ошибочный адрес. Проблемы будут тем более заметны, чем меньше осталось корректных адресов в залипшем service discovery.

3. Отвалился агент на каком-то сервере с аллокациями с service mesh. Consul-агент, скорее всего, не будет отвечать на пинги от мастеров и пиров. Это приведет к тому, что Consul выкинет эту ноду из кластера и на нее перестанет идти трафик (в нашем случае и внешний с балансеров и внутренний из service mesh). Такое падение обычно приводит еще и к тому, что аллокации с данной ноды номад попробует размигрировать по другим нодам. До тех пор service mesh будет использовать последнее сохраненное состояние service discovery для исходящих запросов.
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.