Есть тестовый k8s-кластер на виртуальных машинах, состоящий из трех нод:
MasterNode - 192.168.0.4;
WorkerNode1 -192.168.0.5;
WorkerNode2 -192.168.0.6.
После установки MetalLB и применения следующего манифеста две воркер ноды перестали быть доступны (NotReady):
apiVersion: metallb.io/v1beta1
kind: IPAddressPool
metadata:
name: default
namespace: metallb-system
spec:
addresses:
- 192.168.0.4-192.168.0.9
---
apiVersion: metallb.io/v1beta1
kind: L2Advertisement
metadata:
name: default
namespace: metallb-system
Причину я понял) Я использовал рендж айпи адресов, в который входят айпи адреса моих нод. Я удалил все объекты неймспейса metallb-system.
В ходе диагностики я понял, что арп запросы просто не доходят с мастер ноды до воркер нод:
master-node# arping 192.168.0.5
ARPING 192.168.0.5
Timeout
Timeout
Timeout
Timeout
С воркер ноды арп запросы доходят до мастер ноды:
worker-node1# arping 192.168.0.4
ARPING 192.168.0.4
60 bytes from 08:00:27:5a:81:b7 (192.168.0.4): index=0 time=832.296 usec
60 bytes from 08:00:27:5a:81:b7 (192.168.0.4): index=1 time=305.796 usec
60 bytes from 08:00:27:5a:81:b7 (192.168.0.4): index=2 time=560.864 usec
Ну и при попытке пингануть с воркер ноды мастер выходит
Destination Port Unreachable
.
Предположил, что проблемой может являться какое-то правило в iptables, однако, после очистки всех правил проблема все равно осталась.
Вопрос заключается в следующем:
Есть ли возможность починить кластер без переустановки?