Kubernetes nodeport не отображается как прослушивающий хост, но служба работает

У меня есть служба, работающая на кубернетах, предоставляемая через nodeport, например:

test-service                        NodePort    100.100.246.5     <none>        30005:30005/TCP

Эта служба доступна с других узлов и работает правильно; однако я не вижу, чтобы кубернеты слушали этот порт, если я выполняю netstat -tunlp | grep 30005.

У меня External Traffic Policy: Local, и если я правильно понимаю, это должно означать, что узел с модулем на нем должен прослушивать указанный порт? Опять же, все работает, но я пытаюсь понять, почему я не вижу, как порт прослушивает хост.


person thewooster    schedule 03.03.2021    source источник


Ответы (1)


Сервисы Kubernetes не реализованы как процессы, прослушивающие определенный порт. Вместо этого используется iptables (или IPVS), а службы в основном являются правилами iptables. Вот почему они не будут отображаться в вашей netstat. Дополнительную информацию об этом можно найти здесь.

person ITChap    schedule 03.03.2021