Как подключить VLAN к контейнеру Kubernetes?
У меня есть среда, в которой у нас есть "голый" сервер (Сервер 1), сетевая карта которого настроена для передачи трафика VLAN 5.
На этом сервере развернута CentOS. Теперь у меня есть модуль kubernetes поверх этого, на котором запущена служба DHCP.
Теперь у меня есть другой сервер (Сервер 2) в той же VLAN 5, который должен получать IP-адрес от службы DHCP, о которой я упоминал выше.
Когда DHCP-запрос приходит от Сервера 2, он достигает Сервера 1, поскольку Сервер 1 настроен на прохождение VLAN 5.
Но как мне сделать так, чтобы этот запрос достиг моего модуля службы DHCP, работающего на CentOS? Как мне настроить сеть этого модуля?
1 ответ
Если я вас правильно понял, вы развернули модуль DHCP-сервера.
Это нужно для того, чтобы выставить службу DHCP. Прямо сейчас похоже, что капсула не была обнаружена. В Kubernetes существует концепция службы, которая представляет собой абстрактный способ представить приложение, работающее на наборе модулей, в качестве сетевой службы.
Есть разные виды услуг. Один из них - NodePort.
NodePort: предоставляет услугу на каждом IP-адресе узла на статическом порте (NodePort). Служба ClusterIP, к которой маршрутизируется служба NodePort, создается автоматически. Вы сможете связаться со службой NodePort вне кластера, запросив
<NodeIP>:<NodePort>
.
Предостережение: обычно вы можете использовать только порты 30000–32767 (которые не используются протоколом DHCP).
Поэтому необходимо перенаправлять входящие DHCP-запросы с порта 67 на порт, используемый службой NodePort (например, iptables redirect).
Надеюсь, это поможет.