Часто под не светит свои порты во внешний мир и сервис в целом не имеет внешнего домена, доступного снаружи.
С опозданием, но теперь и я узнал о команде, которая позволяет бить в закрытые от внешнего мира поды с локальной машины (единственное условие - находиться в той же vpn сети и иметь права на выполнение команды
port-forward в кубере), спешу поделиться.Сначала находим нужный под в нужном окружении:
➜ ~ kubectl get pods -n prod | grep pod_name_prefix
Затем делаем post-forward с порта на найденном поде на наш локальный:
➜ ~ kubectl port-forward pod_full_name -n=prod 7000:7000
➜ ~ Forwarding from 127.0.0.1:7000 -> 7000
➜ ~ Forwarding from [::1]:7000 -> 7000
➜ ~ Handling connection for 7000
И затем в другой вкладке делаем нужный запрос на перенаправленный порт, но уже на нашу локальную машину:
➜ ~ curl -s http://localhost:7000/mypage
И, вуаля, запрос на под, закрытый для внешнего мира, успешно отправлен 🧙