【发布时间】:2018-06-09 14:51:16
【问题描述】:
问题
不清楚如何使用 HTTPS 访问仪表板,也找不到清晰的文档(它只是告诉使用 kubectl 代理)。那么使用 HTTPS 访问仪表板的方法是什么?
Kubernetes Dashboard GitHub 告诉:
不推荐使用快捷方式http://localhost:8001/ui。使用上面显示的完整代理 URL。
K8S Dashboard Recommended Setup 或 K8S Dashboard FAQ 不告诉如何在没有代理的情况下访问仪表板。
我正在通过 HTTPS 访问仪表板
/ui 重定向对 HTTPS 不起作用的原因是它尚未在核心存储库中更新。您可以跟踪https://github.com/kubernetes/kubernetes/pull/53046#discussion_r145338754 以了解何时合并。可能要到 K8S 1.8.3+ 才能使用。
可用于访问仪表板的正确链接在我们的文档中。检查访问仪表板以了解更多信息。
但是,kubernetes-dashboard.yaml 清单将服务端点定义到仪表板,如下所示:
kind: Service
apiVersion: v1
metadata:
labels:
k8s-app: kubernetes-dashboard
name: kubernetes-dashboard
namespace: kube-system
spec:
ports:
- port: 443
targetPort: 8443
selector:
k8s-app: kubernetes-dashboard
分配的集群IP(在我的环境中)如下。
# kubectl get svc -n kube-system
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes-dashboard ClusterIP 10.101.199.14 <none> 443/TCP 4h
只需创建一个到 10.101.199.14:443 的 SSH 隧道并访问它 (https://localhost:8001) 即可显示仪表板。
那么,基本上不需要使用kubectl代理直接访问clusterIP:443是用HTTPS访问dashboard的方式吗?
请建议哪里有关于如何使用 K8S 仪表板的最新且准确的文档。
环境
# kubectl version
Client Version: version.Info{Major:"1", Minor:"9", GitVersion:"v1.9.0", GitCommit:"925c127ec6b946659ad0fd596fa959be43f0cc05", GitTreeState:"clean", BuildDate:"2017-12-15T21:07:38Z", GoVersion:"go1.9.2", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"9", GitVersion:"v1.9.0", GitCommit:"925c127ec6b946659ad0fd596fa959be43f0cc05", GitTreeState:"clean", BuildDate:"2017-12-15T20:55:30Z", GoVersion:"go1.9.2", Compiler:"gc", Platform:"linux/amd64"}
【问题讨论】:
标签: https kubernetes dashboard