Files
loadtest/History/2026-07-10-sonnet-answer-kubevip.md
T
naeel 91d717585a
Deploy loadtest / validate (push) Waiting to run
fix: debug=False, force read body, bump 1.0.6→1.0.7
2026-07-10 22:59:56 +04:00

1.7 KiB
Raw Blame History

2026-07-10 — Ответ Соннета: kube-vip ARP split-brain

Диагноз подтверждён

ARP split-brain: все 4 ноды анонсят VIP, 2 без ingress → ~50% трафика в никуда.

Почему svc_election: true не помогает

Lease есть, holder = v8zq4. Но svc_election управляет только k8s-объектами (кто обновляет Service/Endpoints), а НЕ тем, кто добавляет IP на интерфейс и шлёт ARP. Все 4 пода всё равно делают ip addr add 185.247.187.151/32.

Почему vip_leaderelection: true не применился

Это флаг для control-plane VIP (api-server HA), а не для LoadBalancer-сервисов. Бесполезен для нашей задачи.

Решения

# Вариант Сложность Риск
1 Taint на ноды без ingress Низкая Низкий
2 nodeSelector через Shturval customvalues Средняя Синтаксис
3 nodeAffinity через customvalues Средняя Синтаксис
4 BGP вместо ARP Высокая Роутер

Рекомендация Соннета

Taint на ноды без ingress — убрать kube-vip с control-plane и worker-6f74n:

kubectl taint node control-plane no-ingress=true:NoExecute
kubectl taint node worker-6f74n no-ingress=true:NoExecute

Kube-vip DaemonSet не имеет toleration → поды выселятся с этих нод. ARP будут слать только 2 ноды с ingress → 100% трафика в цель. Откат: kubectl taint node X no-ingress-