Minikube, and LoadBalancer in “Pending” status

Minikube, and LoadBalancer in “Pending” status

After running Pritunl in Minikube, it is not possible to connect to the VPN:

2022-10-03 13:50:32 TCP/UDP: Preserving recently used remote address: [AF_INET]
2022-10-03 13:50:32 UDP link local: (not bound)
2022-10-03 13:50:32 UDP link remote: [AF_INET]

We check its Kubernetes Service:

kubectl -n pritunl-local get svc

NAME              TYPE           CLUSTER-IP      EXTERNAL-IP   PORT(S)          AGE

pritunl           LoadBalancer        1194:30166/TCP   47m

Type – LoadBalancerbut his EXTERNAL-IP – in status Pendingsince Minikube does not have a service with the LoadBalancer type, because they must be created at the infrastructure level – AWS, GCE, Azure, and then from them Kubernetes receives an IP or URL to which it will route requests to this load balancer.

There are several solutions for Minicube:

  • shove minikube tunnel – will create a tunnel between the host and the Service in Kubernetes
  • or minikube service – we get a direct URL for connection
  • or specify externalIPs for Kubenetes LoadBalancer Service – configure it manually

Let’s all try.

Minikube tunnel

We check the routes on the host machine:

route -n

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface AND 100 0 0 enp38s0     U     0      0        0 docker0     U     0      0        0 br-9c291321e71a   U     100    0        0 enp38s0 U 0 0 0 vboxnet0

Here we see the route to our VirtualBox – U 0 0 0 vboxnet0.

Let’s start tunnel:

minikube tunnel

[sudo] password for setevoy:


machine: minikube

pid: 333552

route: ->

minikube: Running

services: [pritunl]


minikube: no errors

router: no errors

loadbalancer emulator: no errors

We are checking the routes now – a new route to the network has appeared (Kubernetes CIDR) via is a virtual machine from VirtualBox, on which Minikube itself is running:

route -n

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface AND 100 0 0 enp38s0 AND 0 0 0 vboxnet0     U     0      0        0 docker0     U     0      0        0 br-9c291321e71a   U     100    0        0 enp38s0 U 0 0 0 vboxnet0

Let’s test the Kubernetes LoadBalancer now:

kubectl -n pritunl-local get svc pritunl

NAME      TYPE           CLUSTER-IP      EXTERNAL-IP     PORT(S)          AGE

pritunl   LoadBalancer   1194:30166/TCP   54m

“It works!” (c)

Minikube service

Let’s start minikube servicespecify the namespace and the name of the Service – Minicube will return the URL for connection:

minikube service -n pritunl-local pritunl


|   NAMESPACE   |  NAME   | TARGET PORT  |             URL             |


| pritunl-local | pritunl | openvpn/1194 |  |


🎉  Opening service pritunl-local/pritunl in default browser…

Here – the address of our VirtualBox server, a 32350 – The NodePort on which the Pritunl Server is running.

Also, it is possible to display all Kubernetes Service using list:

minikube service -n pritunl-local list


|   NAMESPACE   |      NAME       | TARGET PORT  |             URL             |


| pritunl-local | pritunl         | openvpn/1194 |  |

| pritunl-local | pritunl-mongodb | No node port |

| pritunl-local | pritunl-web     | No node port |


Or get a URL with one string instead of a table:

kubectl -n priminikube service -n pritunl-local pritunl –url

Trying to connect:

telnet 32350


Connected to

Escape character is ‘^]’.

Pritunl logs:

“It works!” (c)

LoadBalancer externalIPs

Let’s get the IP of the VirtualBox machine:

minikube ip

We edit the LoadBalancer:

kubectl -n pritunl-local edit svc pritunl

We indicate externalIPs:


Save, check the Service itself:

kubectl -n pritunl-local get svc pritunl

NAME      TYPE           CLUSTER-IP     EXTERNAL-IP      PORT(S)          AGE

pritunl   LoadBalancer   1194:32350/TCP   81m

And connecting to it:

telnet 1194


Connected to

Escape character is ‘^]’.

“It works!” (c)


HOWTO’s,Kubernetes,Networking,Virtualization,Проблеми та рішення,minikube,

#Minikube #LoadBalancer #Pending #status

Leave a Comment

Your email address will not be published. Required fields are marked *