Back to Docker Practice

14.7 Dashboard

14_kubernetes_setup/14.7_dashboard.md

1.11.02.0 KB
Original Source

14.7 可视化管理界面

Kubernetes Dashboard 是历史上常用的 Kubernetes Web UI,但项目已停止维护。

注意:Kubernetes 官方文档已将 Dashboard 标记为 deprecated and unmaintained,新安装建议考虑 Headlamp 等仍在维护的替代方案。以下 Dashboard 内容仅供历史迁移或存量环境参考。

14.7.1 推荐替代:Headlamp

Headlamp 是 Kubernetes SIG UI 下的现代 Web UI,可通过 Helm 安装:

bash
$ helm repo add headlamp https://kubernetes-sigs.github.io/headlamp/
$ helm install headlamp headlamp/headlamp --namespace kube-system

本地访问时优先使用端口转发,避免直接把管理界面暴露到公网:

bash
$ kubectl -n kube-system port-forward svc/headlamp 4466:80

14.7.2 历史 Dashboard 部署

Dashboard 7.0+ 版本仅支持通过 Helm 安装:

bash
$ 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

14.7.3 访问

通过端口转发访问 Dashboard:

bash
$ kubectl -n kubernetes-dashboard port-forward svc/kubernetes-dashboard-kong-proxy 8443:443

然后在浏览器打开 https://localhost:8443 即可访问。

14.7.4 登录

为历史 Dashboard 创建只读服务账户并获取短期登录令牌。不要为 Dashboard 创建 cluster-admin 绑定;如果确实需要临时管理员权限,应走单独的 break-glass 审批和审计流程。

bash
$ 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

将输出的令牌粘贴到登录页面,即可登录。