6.5 KiB
6.5 KiB
Kubernetes Dashboard 访问指南
端口说明: Dashboard 使用本地端口 9443(而非常见的 8443),因为 8443 端口已被 Harbor 服务占用。
快速访问
方式 1: 一键访问脚本(推荐)
cd /Users/brunogao/work/codes/tools/macos/k8s
./access-dashboard.sh
脚本功能:
- ✅ 自动检查 Dashboard 部署状态
- ✅ 获取或生成访问 Token(有效期 1 年)
- ✅ 自动复制 Token 到剪贴板
- ✅ 启动端口转发(9443:443)
- ✅ 自动打开浏览器访问 https://localhost:9443
使用步骤:
- 运行脚本
- 等待浏览器自动打开
- 在登录页面选择 "Token" 方式
- 按
Cmd+V粘贴 Token(已在剪贴板) - 点击 "登录"
方式 2: 手动访问
步骤 1: 获取访问 Token
方式 A: 使用保存的长期 Token(推荐)
cat enterprise-k8s-manifests/dashboard-token-new.txt
- Token 有效期: 1 年(8760 小时)
- 无需重复生成
方式 B: 生成新的长期 Token
kubectl -n kubernetes-dashboard create token admin-user --duration=8760h
方式 C: 生成短期 Token(1 小时)
kubectl -n kubernetes-dashboard create token admin-user
步骤 2: 启动端口转发
kubectl port-forward -n kubernetes-dashboard svc/kubernetes-dashboard 9443:443
输出示例:
Forwarding from 127.0.0.1:9443 -> 9443
Forwarding from [::1]:9443 -> 9443
步骤 3: 访问 Dashboard
open https://localhost:9443
或在浏览器中访问: https://localhost:9443
步骤 4: 登录
- 选择 Token 认证方式
- 粘贴步骤 1 中获取的 Token
- 点击 Sign in
Dashboard 功能
登录后可以使用以下功能:
集群概览
- 查看所有 Namespaces
- 查看节点状态和资源使用
- 查看集群事件
工作负载管理
- Deployments: 查看和编辑部署
- Pods: 查看 Pod 状态、日志、终端
- ReplicaSets: 副本集管理
- StatefulSets: 有状态应用
- DaemonSets: 守护进程集
- Jobs/CronJobs: 任务管理
服务和网络
- Services: 服务发现和负载均衡
- Ingress: 入口规则
- Network Policies: 网络策略
配置和存储
- ConfigMaps: 配置管理
- Secrets: 密钥管理
- PersistentVolumeClaims: 持久化存储
资源管理
- ResourceQuotas: 资源配额使用情况
- LimitRanges: 资源限制
- HPAs: 自动扩缩容状态
- PDBs: Pod 中断预算
部署信息
镜像来源
Dashboard 使用本地 Harbor 缓存镜像,通过 EU Harbor 中转解决 Docker Hub 访问超时问题:
| 组件 | 镜像 |
|---|---|
| Dashboard | harbor.omniverseai.net:8080/library/kubernetesui/dashboard:v2.7.0 |
| Metrics Scraper | harbor.omniverseai.net:8080/library/kubernetesui/metrics-scraper:v1.0.8 |
缓存流程
Docker Hub (公网)
↓ (可能超时)
EU Harbor (harbor.eu.lingjingwanxiang.cn)
↓ (快速稳定)
本地 Harbor (harbor.omniverseai.net:8080)
↓ (本地访问)
Kubernetes 集群 ✅
详见: HARBOR-IMAGE-CACHE-SOLUTION.md
服务配置
kubectl get svc -n kubernetes-dashboard
NAME TYPE CLUSTER-IP PORT(S)
kubernetes-dashboard ClusterIP 192.168.194.235 443/TCP
dashboard-metrics-scraper ClusterIP 192.168.194.218 8000/TCP
权限配置
Dashboard 使用 admin-user ServiceAccount,具有 Cluster Admin 权限:
apiVersion: v1
kind: ServiceAccount
metadata:
name: admin-user
namespace: kubernetes-dashboard
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: admin-user
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: admin-user
namespace: kubernetes-dashboard
常见问题
Q1: Token 过期怎么办?
方案 A: 使用长期 Token(推荐)
kubectl -n kubernetes-dashboard create token admin-user --duration=8760h
方案 B: 使用保存的 Token
cat enterprise-k8s-manifests/dashboard-token-new.txt
Q2: 端口转发断开怎么办?
重新启动端口转发:
kubectl port-forward -n kubernetes-dashboard svc/kubernetes-dashboard 9443:443
或使用一键脚本:
./access-dashboard.sh
Q3: 浏览器提示证书不安全
这是正常的,因为 Dashboard 使用自签名证书。点击 "继续访问" 或 "Advanced → Proceed" 即可。
Q4: 找不到 Token 文件
重新生成并保存:
kubectl -n kubernetes-dashboard create token admin-user --duration=8760h > \
enterprise-k8s-manifests/dashboard-token-new.txt
Q5: Dashboard Pod 未运行
检查状态:
kubectl get pods -n kubernetes-dashboard
kubectl describe pod <pod-name> -n kubernetes-dashboard
如果是 ImagePullBackOff,参考 HARBOR-IMAGE-CACHE-SOLUTION.md 重新缓存镜像。
安全建议
Token 管理
- ✅ 使用长期 Token(1 年),避免频繁生成
- ✅ Token 文件已保存在
enterprise-k8s-manifests/dashboard-token-new.txt - ⚠️ 不要将 Token 提交到 Git 仓库
- ⚠️ Token 泄露后需立即删除 ServiceAccount 并重新创建
网络访问
- ✅ Dashboard 仅监听 ClusterIP(集群内部)
- ✅ 通过 kubectl port-forward 本地访问(安全)
- ⚠️ 生产环境不建议使用 NodePort 或 LoadBalancer 暴露
权限控制
- ⚠️ 当前使用 cluster-admin 权限(适合开发环境)
- ⚠️ 生产环境建议使用 RBAC 限制权限
快速参考
一键访问
./access-dashboard.sh
查看 Token
cat enterprise-k8s-manifests/dashboard-token-new.txt
手动访问
# Terminal 1: 启动端口转发
kubectl port-forward -n kubernetes-dashboard svc/kubernetes-dashboard 9443:443
# Terminal 2: 打开浏览器
open https://localhost:9443
查看部署状态
kubectl get all -n kubernetes-dashboard
查看日志
kubectl logs -n kubernetes-dashboard deployment/kubernetes-dashboard
相关文档
- 完整部署指南: README.md
- 镜像缓存方案: HARBOR-IMAGE-CACHE-SOLUTION.md
- 企业级增强报告: ENTERPRISE-K8S-IMPLEMENTATION-REPORT.md
最后更新: 2025-12-24 Dashboard 版本: v2.7.0 访问方式: Token 认证 (Cluster Admin)