Я построил кластер K3s (https://k3s.io) на наборе компьютеров Raspberry Pi4.
Узел контроллера (ctrl-1
) является шлюзом в том смысле, что он имеет 2 сетевые интерфейсы. Один подключен к моей локальной сети, а другой подключен к создаваемой сети, например, K3S-LAN. Два узла (node-1
и node-2
) развернуты в K3S-LAN.
Я хочу иметь возможность доступа к приложениям, работающим на узлах, через ctrl-1
, например, из локальной сети. Это связано с тем, что этот кластер должен быть переносимым, поэтому к гостевой локальной сети необходимо подключить только узел ctrl-1
. (Да, есть проблемы с DNS-именами и т. Д. c, которые необходимо разобрать, но я хочу, чтобы основы были запущены первыми).
Это означает, что мне нужно иметь возможность "прокси" проникновения через ctrl-1
. Я думал, что у меня была правильная идея для этого, потому что я развернул "nginx -ingress" на мастере, используя Helm. Однако я забыл об услуге для этого - это было запланировано на узлах, тогда как это должно быть на контроллере, чтобы порты были открыты (я думаю). Однако я не могу найти способ запустить службу на контроллере.
В данный момент у меня запущена служба с типом NodePort
. Я мог бы установить MetalLB, чтобы у меня были возможности LoadBalancer
. Однако с тем, что я видел, я не уверен, поможет ли это или нет.
ctrl-1
не имеет никаких настроек, только роль мастера.
Я лаю здесь не то дерево? Я думаю, что это может быть не тот случай использования Kubernetes, но я играю с идеей. Спасибо за любые идеи, которые есть у людей.
Обновление *
Я только что подумал, что можно обойти это, запустив HAProxy на ctrl-1
(как другой сервис на хосте) и настройте правила для прокси на необходимые сервисы в кластере. Это будет действовать как мост между сетями.