我按照这个指南链接安装了一个 kubernetes </跨度> 群集,我没有错误,但我无法访问 kubernetes </跨度> -仪表板
我做到了kubectl create -f https://rawgit.com/ kubernetes </跨度> / dashboard / master / src … / deploy / kubernetes </跨度> -dashboard.yaml当我去https://192.168.11.20/ui什么都没有
我该如何访问仪表板?
一些额外的信息
[root @ kubeMaster~] #kubectl get nodes名称 …
使用:
kubectl proxy
这将允许您访问仪表板:
localhost:8001
1使用ssh connect master node和config ssh tunnel如下:
ssh tunnel config
2启动kubectl代理 kubectl代理
3在localhost中,使用了http url访问仪表板 HTTP://本地主机:8001 / API / V1 /命名空间/ KUBE-系统/服务/ HTTPS:kubernetes的仪表板:!?/代理/#/关于命名空间=默认
我知道这是一个老问题,但我们花了几个小时寻找解决方案。太傻了...... 将它发布给下一个角落......
当您启动代理并浏览到127.0.0.1:8080/ui/时,您将被重定向到以下URL:
http://127.0.0.1:8001/api/v1/namespaces/kube-system/services/kubernetes-dashboard/proxy
在我们的案例中,这个网址被打开为白色空屏幕。 问题是这个网址最后缺少斜线。添加后,everething正在作为魅力... :(
http://127.0.0.1:8001/api/v1/namespaces/kube-system/services/kubernetes-dashboard/proxy/
它实际上并没有运行。如果是,您的“获取部署”结果将返回1而不是0。
尝试做一个 kubectl describe deployment kubernetes-dashboard --namespace=kube-system 这将是您进行故障排除的第一步。在结果的最后,它可能在事件中有所作为。
kubectl describe deployment kubernetes-dashboard --namespace=kube-system
您可能还需要查看pod的日志内容,具体取决于部署查询的结果。
要实际找到带仪表板的pod,您应该运行
kubectl get pods --all-namespaces --show-all
要么
kubectl get pods --namespace=kube-system
从我们在您的输出中看到的内容,您可以运行 kubectl proxy (已经描述过)或者只是去 http://{any_node}:31785 。
http://{any_node}:31785
你有仪表板服务 Type: NodePort ,这意味着它将被访问 NodePort 在此群集中的任何节点上。
Type: NodePort
NodePort
192.168.0.0/16是私有IP范围,这意味着您需要在群集的网络中才能访问它。
在群集外访问服务的最简单方法是运行 kubectl proxy ,它会将对localhost端口8001的请求代理到Kubernetes API服务器。从那里,apiserver可以代理您的服务:
HTTP://您当前位置:8001 / API / V1 /代理/命名空间/ KUBE-系统/服务/ kubernetes的仪表板