0

I managed to setup minikube on my system using kvm2 driver, and it seems to work. However i want to be able to launch the dashboard and access it externally, i.e. access it from another device within the network.

I ran 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>

I ran 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

Now first time around i edited the ifcfg-eth0 file to include following line:

BRIDGE=virbr1

Then i created a file in same folder called ifcfg-virbr1 and added this to it:

DEVICE="virbr1"
BOOTPROTO="dhcp"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
ONBOOT="yes"
TYPE="Bridge"
DELAY="0"

I rebooted the VM, in hopes that now my minikube-net will have a DHCP assigned IP address from router, unfortunately no it doesn't. Furthermore i cannot ssh into the VM anymore.

Further info I am running a Centos 7 vm within Hyper-V (nested virtualization).

Any idea how i can setup my minikube-net so that i can access it and the internal contents from outside the network?

Aeseir
  • 101
  • 2

1 Answers1

0

In my opinion the easiest way to access kubernetes-dashboard externally is to expose it first on NodePort and then do port-forwarding on KVM on your host (e.g. 8081:31504).

By default minikube's kubernetes-dashboard addon is exposed on ClusterIP port type. To change it to NodePort, you can use:

kubectl edit svc/kubernetes-dashboard -n kube-system

get NodePort IP with:

kubectl get svc/kubernetes-dashboard -n kube-system -o jsonpath='{.spec.ports[0].nodePort}'

You will access dashboard then in following ways:

  • localhost: <minikube ip>:<NodePort>
  • remotely : <host_ip>:<forwarded_port>
Nepomucen
  • 306
  • 1
  • 4