I am deploy kubernetes UI using this command:
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/recommended/kubernetes-dashboard.yamlstart proxy:
kubectl proxy --address='172.19.104.231' --port=8001 --accept-hosts='^*#x27;access ui:
curl http://172.19.104.231:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/
http://kubernetes.example.com/api/v1/namespaces/kube-system/services/kube-ui/#/dashboard/the log output:
[root@iZuf63refzweg1d9dh94t8Z ~]# curl http://172.19.104.231:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/
{
"kind": "Status",
"apiVersion": "v1",
"metadata": {
},
"status": "Failure",
"message": "services \"kubernetes-dashboard\" not found",
"reason": "NotFound",
"details": {
"name": "kubernetes-dashboard",
"kind": "services"
},
"code": 404}how to fix the problem? Check pods status:
[root@iZuf63refzweg1d9dh94t8Z ~]# kubectl get pod --namespace=kube-system
NAME READY STATUS RESTARTS AGE
kubernetes-dashboard-7d75c474bb-b2lwd 0/1 Pending 0 34hIf you use K8S dashboard v2.0.0-betax,
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-beta8/aio/deploy/recommended.yamlThen use this to access the dashboard:
http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/If you use K8S dashboard v1.10.1,
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/recommended/kubernetes-dashboard.yamlThen use this to access the dashboard:
http://localhost:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/I also faced the same problem, but then i realized that dashboard v2.0.0-betax and v1.10.1 use different namespace. Latest version use kubernetes-dashboard namespace, but the older one use kube-system namespace
Apparently, the error message states for not existing k8s Service in kube-system Namespace throughout exposed HTTP API proxy method, as @jt97 mentioned in the answer.
For further reference, you might also consider querying K8s inventory objects, once you have exposed K8s REST API directly within HTTP calls in JSON data format.
For example:
curl http://172.19.104.231:8001/api/v1/namespaces/kube-system/services/
This message:
"message": "services \"kubernetes-dashboard\" not found"Simply means that the service doesn't exist.
First of all check if you'r dashboard (service and pod) are working with this command
kubectl get pods,svc --all-namespaces -o widePlease follow the tutorial Command line proxy
About the problem with pod status, please use this command so you will know why the status is pending instead of running.
kubectl describe pod kubernetes-dashboard-7d75c474bb-b2lwd -n kubernetes-dashboardtry this endpoint:
curl http://172.19.104.231:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/
or this one:
If you followed instructions from kubernetes.io you might have gotten the wrong link. It's true that service doesn't exist, it might be name that is changed somehow. I had the same issue and noticed that
kubectl get all --all-namespacesshows (snippet)
kubernetes-dashboard service/dashboard-metrics-scraper ClusterIP 10.x.y.z <none> 8000/TCP 2d14h
kubernetes-dashboard service/kubernetes-dashboard ClusterIP 10.x.x.y <none> 443/TCP 2d14hshowed nothing special (as in bored). Try this link and notice the namespace difference:
That worked for me