k8s1.28部署dashboard仪表盘

下载最新资源清单

wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml

自定义暴露方式(外部访问)
若需从集群外部访问 Dashboard,修改 recommended.yaml 中的服务配置:

# 找到 Service 部分(原文件约 120 行)
apiVersion: v1
kind: Service
metadata:
  labels:
    k8s-app: kubernetes-dashboard
  name: kubernetes-dashboard
  namespace: kube-system  # K8s 1.24+ 固定命名空间
spec:
  type: NodePort  # 修改为 NodePort 或 LoadBalancer(云厂商适用)
  ports:
  - port: 443
    targetPort: 8443
    nodePort: 30001  # 可选,指定 NodePort 端口(范围 30000-32767)
  selector:
    k8s-app: kubernetes-dashboard

修改后重新应用配置:

kubectl apply -f recommended.yaml

创建访问凭证(Token 或 Kubeconfig)
Dashboard 支持 Token 认证 和 Kubeconfig 认证,以下为常用方案:

创建服务账户并绑定权限
创建 admin-user.yaml 文件:

apiVersion: v1
kind: ServiceAccount
metadata:
  name: admin-user
  namespace: kube-system  # 与 Dashboard 同命名空间

---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: admin-user-binding
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin  # 授予集群管理员权限
subjects:
- kind: ServiceAccount
  name: admin-user
  namespace: kube-system

应用配置:

kubectl apply -f admin-user.yaml

生成 Token

TOKEN=$(kubectl create token admin-user -n kube-system)
echo $TOKEN  # 保存此 Token,后续登录需使用

通过 NodePort 访问
https://<节点IP>:30001

posted @ 2025-05-28 10:59  还得多长时间·  阅读(64)  评论(0)    收藏  举报
//雪花飘落效果