Kubernetes Networking подключиться локально / контейнер
Я разработчик, идущий вверх по кривой обучения, чтобы стать больше DevOps.
Я строю кластер Kubernetes. Я хотел бы иметь возможность "напрямую" подключаться к стручкам. Я не хочу балансировать нагрузку через Сервис, я хочу иметь возможность подключаться к отдельным модулям.
Я читаю о сети, но чувствую себя перегруженным. Я получу ответ сам, когда узнаю подробности, но до этого есть специалист, который может ответить:
Есть ли какая-либо опция сети kubernetes, которая позволит мне общаться по TCP/IP с моего локального компьютера напрямую с отдельными модулями?
Я абсолютно открыт для выполнения чего-то локально для достижения этой цели. Мне все равно, наложен он или нет (нет требований к задержке). Я думаю, что смогу запустить Calico на кластере, Bird на моей машине. Это правда? Кто-нибудь делал что-нибудь подобное?
1 ответ
Есть несколько вариантов для этого.
Если вы хотите подключиться к одному конкретному модулю, вы можете просто kubectl port-forward
который перенаправит локальный порт в порт pods.
Если вам нужно полное сетевое подключение, в зависимости от того, как вы подготовили кластер, вы можете сделать свой компьютер частью той же оверлейной сети, что и ваш кластер kubernetes (я делаю что-то подобное, используя weave net).
В целом, кроме решения для переадресации портов, это скорее общая проблема сети, а не kubernetes в частности. Но с другой стороны, если вам удастся стать равноправным в своем оверлее, у вас все еще есть проблема обнаружения служб, чтобы взломать ее, если вы не хотите использовать службы...