Настройте мост для существующего виртуального поля, на котором запущен миникуб
Мне удалось настроить minikube на моей системе с помощью драйвера kvm2, и это, кажется, работает. Однако я хочу иметь возможность запускать панель мониторинга и получать к ней доступ извне, то есть получать доступ к ней с другого устройства в сети.
Я побежал virsh net-dumpxml minikube-net
<network>
<name>minikube-net</name>
<uuid>c382666a-6aee-48bf-bfd9-3b782c423fad</uuid>
<bridge name='virbr1' stp='on' delay='0'/>
<mac address='52:54:00:da:f8:54'/>
<dns enable='no'/>
<ip address='192.168.39.1' netmask='255.255.255.0'>
<dhcp>
<range start='192.168.39.2' end='192.168.39.254'/>
</dhcp>
</ip>
</network>
Я побежал ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:15:5d:38:01:0c brd ff:ff:ff:ff:ff:ff
inet 10.0.0.201/24 brd 10.0.0.255 scope global noprefixroute dynamic eth0
valid_lft 85622sec preferred_lft 85622sec
inet6 fe80::d286:599c:62eb:c6f1/64 scope link noprefixroute
valid_lft forever preferred_lft forever
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
link/ether 52:54:00:34:cb:78 brd ff:ff:ff:ff:ff:ff
inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
valid_lft forever preferred_lft forever
4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN group default qlen 1000
link/ether 52:54:00:34:cb:78 brd ff:ff:ff:ff:ff:ff
5: virbr1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
link/ether 52:54:00:da:f8:54 brd ff:ff:ff:ff:ff:ff
inet 192.168.39.1/24 brd 192.168.39.255 scope global virbr1
valid_lft forever preferred_lft forever
6: virbr1-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr1 state DOWN group default qlen 1000
link/ether 52:54:00:da:f8:54 brd ff:ff:ff:ff:ff:ff
Теперь я впервые отредактировал файл ifcfg-eth0, добавив в него следующую строку:
BRIDGE=virbr1
Затем я создал файл в той же папке с именем ifcfg-virbr1 и добавил это к нему:
DEVICE="virbr1"
BOOTPROTO="dhcp"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
ONBOOT="yes"
TYPE="Bridge"
DELAY="0"
Я перезагрузил виртуальную машину в надежде, что теперь у моей minikube-net будет назначенный IP-адрес DHCP от маршрутизатора, к сожалению, нет. Кроме того, я не могу больше ssh в виртуальную машину.
Дополнительная информация Я использую Centos 7 vm в Hyper-V (вложенная виртуализация).
Любая идея, как я могу настроить мой Minikube-Net, чтобы я мог получить доступ к нему и внутреннему содержимому извне сети?
1 ответ
На мой взгляд, самый простой способ получить внешний доступ к kubernetes-dashboard - это сначала открыть его на NodePort, а затем выполнить переадресацию портов на KVM на вашем хосте (например, 8081:31504).
По умолчанию аддон kubernetes-dashboard в minikube доступен для типа порта ClusterIP. Чтобы изменить его на NodePort, вы можете использовать:
kubectl edit svc/kubernetes-dashboard -n kube-system
получить IP-адрес NodePort с:
kubectl get svc/kubernetes-dashboard -n kube-system -o jsonpath='{.spec.ports[0].nodePort}'
Затем вы получите доступ к панели инструментов следующими способами:
- локальный:
<minikube ip>:<NodePort>
- дистанционно:
<host_ip>:<forwarded_port>