irrelevantUser
irrelevantUser

Reputation: 1322

Traefik ingress controller on minikube: External IP pending

I am trying to deploy a Traefik Ingress controller in my minikube environment by following this:

helm install stable/traefik --name-template traefik --set dashboard.enabled=true,dashboard.domain=dashboard.traefik,rbac.enabled=true --namespace kube-system

Even after half an hour I still see that External IP is pending:

pascals@pascals:~$ kubectl get svc -l app=traefik -n kube-system 
NAME                TYPE           CLUSTER-IP      EXTERNAL-IP   PORT(S)                      AGE
traefik             LoadBalancer   10.96.172.128   <pending>     443:30812/TCP,80:31078/TCP   20m
traefik-dashboard   ClusterIP      10.96.56.105    <none>        80/TCP                       20m

Ideally I would like to reach http://dashboard.traefik but I am not able to do so.

I tried to assign an External Ip using the kubectl patch Api:

kubectl patch svc traefik -n kube-system -p '{"spec":{"externalIPs":["192.168.99.107"]}}'

where, 192.168.99.107 is the minikube ip. This however still did not solve my problem.

Appreciate any nudge in the right direction!

Upvotes: 2

Views: 6787

Answers (2)

Alex Vorona
Alex Vorona

Reputation: 2285

You should install some Kubernetes bare-metal load balancer, like MetalLB

Upvotes: 1

kitt
kitt

Reputation: 632

The external IP is assigned by the ServiceController if any cloud provider used in the cluster, usually in managed clusters.

In a minikube cluster, LoadBalance-typed Service will never have an external IP. You can access Services through minikubeip:nodeport, or running minikube service. For the Service traefik-dashboard, it should be a NodePort-typed Service first.

Upvotes: 3

Related Questions