<p>I've just set up a single node Kubernetes cluster following the kubeadm guide to the letter. The cluster itself looks good, and all pods are running correctly:</p>

<pre><code>will@kubemaster:~$ sudo kubectl get pods --all-namespaces
NAMESPACE     NAME                                        READY     STATUS    RESTARTS   AGE
kube-system   calico-etcd-w6dkj                           1/1       Running   0          16m
kube-system   calico-node-mjsnr                           2/2       Running   0          16m
kube-system   calico-policy-controller-59fc4f7888-vc6x6   1/1       Running   0          16m
kube-system   etcd-kubemaster                             1/1       Running   0          16m
kube-system   kube-apiserver-kubemaster                   1/1       Running   1          16m
kube-system   kube-controller-manager-kubemaster          1/1       Running   0          16m
kube-system   kube-dns-545bc4bfd4-mbbrl                   3/3       Running   0          16m
kube-system   kube-proxy-wkmlj                            1/1       Running   0          16m
kube-system   kube-scheduler-kubemaster                   1/1       Running   0          16m
kube-system   kubernetes-dashboard-7f9dbb8685-rxwfw       1/1       Running   0          4m
</code></pre>

<p>I installed the dashboard using:</p>

<pre><code>sudo kubectl create -f https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml
</code></pre>

<p>I've tried serving up the kubrnetes dashboard locally by running "sudo kubectl proxy".</p>

<p>When I load "<a href="http://127.0.0.1:8001" rel="nofollow noreferrer">http://127.0.0.1:8001</a>" I get the API endpoint listing, and all looks well. But when I add the /ui to load the dashboard (<a href="http://127.0.0.1:8001/ui" rel="nofollow noreferrer">http://127.0.0.1:8001/ui</a>), I get the following response:</p>

<pre><code>Error: 'malformed HTTP response "\x15\x03\x01\x00\x02\x02"'
Trying to reach: 'http://192.167.141.3:8443/'
</code></pre>

<p>Also note, the above URL gets redirected to the API:</p>

<pre><code>http://localhost:8001/api/v1/namespaces/kube-system/services/kubernetes-dashboard/proxy/
</code></pre>

<p>If I replace the HTTP with HTTPS, I get a "Secure connection failed, SSL recieved a record that exceeded the maximum permisslbe length".</p>

<p>If I try loading the dashboard without using the kubectl proxy, e.g. using the master IP, I get a connection refused.</p>

<p>I'm running on Ubuntu 16.04, my kubectl version details are as follows:</p>

<pre><code>will@kubemaster:~$ sudo kubectl version
Client Version: version.Info{Major:"1", Minor:"8", GitVersion:"v1.8.0", GitCommit:"6e937839ac04a38cac63e6a7a306c5d035fe7b0a", GitTreeState:"clean", BuildDate:"2017-09-28T22:57:57Z", GoVersion:"go1.8.3", Compiler:"gc", Platform:"linux/amd64"}
</code></pre>

<h3>Since v1.7, Dashboard can only be accessed over HTTPS by default.</h3>

<p>It is available at <a href="http://localhost:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/" rel="noreferrer">http://localhost:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/</a> with <code>kubectl proxy</code>.</p>

<h3>To deploy dashboard with HTTP (Not recommended for Production)</h3>

<pre><code>$ kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/alternative/kubernetes-dashboard.yaml
</code></pre>

<p>Dashboard can be loaded at <a href="http://localhost:8001/ui" rel="noreferrer">http://localhost:8001/ui</a> with <code>kubectl proxy</code>.</p>
