tcpdump к назначенным службам балансировщика нагрузки Kubernetes
В моем кластере k8 есть MetalLB. Теперь я хочу получитьtcpdump
для проверки связи. Как описано здесь
В этом режиме сервис принадлежит одному узлу в кластере. Это реализуется путем объявления, что адрес уровня 2 (MAC-адрес), который соответствует внешнему IP-адресу, является MAC-адресом узла. Для внешних устройств узел имеет несколько IP-адресов.
Итак, я взял MAC
адрес моего рабочего узла службы и попытался поставить sudo tcpdump -i eth0 ether host aa:bb:cc:11:22:33
. упомянул
Моя служба 192.168.10.101
IP назначен.
Как следует из официального решения по устранению неполадок, я использовалtcpdump -n -i ens3 arp src host 192.168.10.101
, но пакет еще не захвачен.
metalLB config
Name: config
Namespace: metallb-system
Labels: <none>
Annotations: <none>
Data
====
config:
----
address-pools:
- name: default
protocol: layer2
addresses:
- 192.168.10.100-192.168.10.120
Events: <none>
Но я не могу сопоставить ни один пакет.
Я как бы застрял здесь. я пыталсяkubectl get svc
, получите порт для запуска службы и tcpdump
к этому порту, но все еще не соответствует ни одному пакету. В основном как я могу поставитьtcpdump
к
- Сервис LoadBalancer
- Запущенные службы ClusterIP