14_kubernetes_setup/14.7_dashboard.md
Kubernetes Dashboard 是历史上常用的 Kubernetes Web UI,但项目已停止维护。
注意:Kubernetes 官方文档已将 Dashboard 标记为 deprecated and unmaintained,新安装建议考虑 Headlamp 等仍在维护的替代方案。以下 Dashboard 内容仅供历史迁移或存量环境参考。
Headlamp 是 Kubernetes SIG UI 下的现代 Web UI,可通过 Helm 安装:
$ helm repo add headlamp https://kubernetes-sigs.github.io/headlamp/
$ helm install headlamp headlamp/headlamp --namespace kube-system
本地访问时优先使用端口转发,避免直接把管理界面暴露到公网:
$ kubectl -n kube-system port-forward svc/headlamp 4466:80
Dashboard 7.0+ 版本仅支持通过 Helm 安装:
$ helm repo add kubernetes-dashboard https://kubernetes-retired.github.io/dashboard/
$ helm upgrade --install kubernetes-dashboard kubernetes-dashboard/kubernetes-dashboard \
--create-namespace --namespace kubernetes-dashboard
通过端口转发访问 Dashboard:
$ kubectl -n kubernetes-dashboard port-forward svc/kubernetes-dashboard-kong-proxy 8443:443
然后在浏览器打开 https://localhost:8443 即可访问。
为历史 Dashboard 创建只读服务账户并获取短期登录令牌。不要为 Dashboard 创建 cluster-admin 绑定;如果确实需要临时管理员权限,应走单独的 break-glass 审批和审计流程。
$ kubectl create sa dashboard-readonly -n kubernetes-dashboard
$ kubectl create clusterrolebinding dashboard-readonly \
--clusterrole=view \
--serviceaccount=kubernetes-dashboard:dashboard-readonly
$ kubectl create token dashboard-readonly -n kubernetes-dashboard --duration=1h
将输出的令牌粘贴到登录页面,即可登录。