kubernetes dashboard will not load

7/8/2018

I am completely new to Kubernetes, so go easy on me.

I am running kubectl proxy but am only seeing the JSON output. Based on this discussion I attempted to set the memory limits by running:

kubectl edit deployment kubernetes-dashboard --namespace kube-system

I then changed the container memory limit:

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  ...
spec:
  ...
  template:
    metadata:
    ...
  spec:
    containers:
    - image: k8s.gcr.io/kubernetes-dashboard-amd64:v1.8.1
      imagePullPolicy: IfNotPresent
      livenessProbe:
        ...
      name: kubernetes-dashboard
      ports:
      - containerPort: 9090
        protocol: TCP 
      resources:
        limits:
          memory: 1Gi

I still only get the JSON served when I save that and visit http://127.0.0.1:8001/ui

Running kubectl logs --namespace kube-system kubernetes-dashboard-665756d87d-jssd8 I see the following:

Starting overwatch
Using in-cluster config to connect to apiserver
Using service account token for csrf signing
No request provided. Skipping authorization
Successful initial request to the apiserver, version: v1.10.0
Generating JWE encryption key
New synchronizer has been registered: kubernetes-dashboard-key-holder-kube-system. Starting
Starting secret synchronizer for kubernetes-dashboard-key-holder in namespace kube-system
Initializing JWE encryption key from synchronized object
Creating in-cluster Heapster client
Metric client health check failed: the server could not find the requested resource (get services heapster). Retrying in 30 seconds.
Serving insecurely on HTTP port: 9090

I read through a bunch of links from a Google search on the error but nothing really worked.

Key components are:

  • Local: Ubuntu 18.04 LTS
  • minikube: v0.28.0
  • Kubernetes Dashboard: 1.8.3

Installed via:

kubectl create -f https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml

Halp!

-- el n00b
kubernetes
kubernetes-dashboard
minikube

1 Answer

7/9/2018

Have you considered using the minikube dashboard? You can reach it by:

minikube dashboard

Also you will get json on http://127.0.0.1:8001/ui because it is deprecated, so you have to use full proxy URL as it states in the dashboard github page.

If you still want to use this 'external' dashboard for some future not minikube related projects or there is some other reason I don't know about you can reach it by:

kubectl proxy

and then: http://localhost:8001/api/v1/namespaces/kube-system/services/http:kubernetes-dashboard:/proxy/

  • note that in the documentation it is https which is not correct in this case (might be documentation error or it might be clarified in the documentation part which I suggest you read if you need further information on web UI).

Hope this helps.

-- aurelius
Source: StackOverflow