Kubernetes Dashboard UI 部署安装

K8S 集群环境: Ubuntu 24 / K8S 1.28.2

1. 推荐使用helm 安装Kubernetes Dashboard

bash 复制代码
sudo snap install helm --classic

2. 部署Kubernetes Dashboard

bash 复制代码
# Add kubernetes-dashboard repository
helm repo add kubernetes-dashboard https://kubernetes.github.io/dashboard/
# Deploy a Helm Release named "kubernetes-dashboard" using the kubernetes-dashboard chart
helm upgrade --install kubernetes-dashboard kubernetes-dashboard/kubernetes-dashboard --create-namespace --namespace kubernetes-dashboard

3. 查看Pod 启动状态,如果pending状态,查看events确认是否镜像拉取问题,可手动拉取kong:3.8

bash 复制代码
kubectl --namespace=kubernetes-dashboard get pods
bash 复制代码
ctr i pull --all-platforms xxxxx.xuanyuan.dev/bitnami/kong:3.8

再次确认Pod 启动状态

bash 复制代码
root@k8s-master:~/manifects# kubectl --namespace=kubernetes-dashboard get pods
NAME                                                    READY   STATUS    RESTARTS   AGE
kubernetes-dashboard-api-5d7fbc9746-h2ssw               1/1     Running   0          68m
kubernetes-dashboard-auth-7896497d46-9mjc7              1/1     Running   0          68m
kubernetes-dashboard-kong-6bf7cb4d8c-htl4z              1/1     Running   0          68m
kubernetes-dashboard-metrics-scraper-79ddb8cd78-4dg6f   1/1     Running   0          68m
kubernetes-dashboard-web-5c84bb867f-twl9t               1/1     Running   0          68m

4. 查看kong proxy Service 端口

bash 复制代码
root@k8s-master:~/manifects# kubectl --namespace=kubernetes-dashboard  get service
NAME                                   TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)         AGE
kubernetes-dashboard   kubernetes-dashboard-api               ClusterIP   10.97.5.78       <none>        8000/TCP                 50m
kubernetes-dashboard   kubernetes-dashboard-auth              ClusterIP   10.107.21.211    <none>        8000/TCP                 50m
kubernetes-dashboard   kubernetes-dashboard-kong-proxy        ClusterIP   10.98.134.37     <none>        443/TCP                  50m
kubernetes-dashboard   kubernetes-dashboard-metrics-scraper   ClusterIP   10.110.95.33     <none>        8000/TCP                 50m
kubernetes-dashboard   kubernetes-dashboard-web               ClusterIP   10.97.129.119    <none>        8000/TCP                 50m

默认为ClusterIP, 需手动更新为NodePort 以便节点外部访问

bash 复制代码
kubectl --namespace=kubernetes-dashboard edit service kubernetes-dashboard-kong-proxy

5. 再次查看service,已经更改为NodePort

bash 复制代码
root@k8s-master:~/manifects# kubectl --namespace=kubernetes-dashboard  get service
NAME                                   TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)         AGE
kubernetes-dashboard-api               ClusterIP   10.97.5.78      <none>        8000/TCP        72m
kubernetes-dashboard-auth              ClusterIP   10.107.21.211   <none>        8000/TCP        72m
kubernetes-dashboard-kong-proxy        NodePort    10.98.134.37    <none>        443:30118/TCP   72m
kubernetes-dashboard-metrics-scraper   ClusterIP   10.110.95.33    <none>        8000/TCP        72m
kubernetes-dashboard-web               ClusterIP   10.97.129.119   <none>        8000/TCP        72m
  1. 创建User 和Role
perl 复制代码
vim k8s-dashboard-sa.yaml

kubectl apply -f k8s-dashboard-sa.yaml
XML 复制代码
---
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

7. 获取token

perl 复制代码
root@k8s-master:~/manifects# kubectl -n kubernetes-dashboard create token admin-user
eyJhbGciOiJSUzI1NiIsImtpZCI6Ikx4eVpYWWpUcXBna28zS3AtcWozaUZZUU1GbW42QWNiN1lXM1Y0ZllTX2MifQ.

8. 用上一步获取的token进行登录

相关推荐
雪可问春风21 小时前
docker环境部署
运维·docker·容器
AI攻城狮21 小时前
用 Obsidian CLI + LLM 构建本地 RAG:让你的笔记真正「活」起来
人工智能·云原生·aigc
科技小花1 天前
AI重塑数据治理:2026年核心方案评估与场景适配
大数据·人工智能·云原生·ai原生
kobe_OKOK_1 天前
S7 adapter Docker run
运维·docker·容器
阿里云云原生1 天前
基于 HiClaw 的运维场景多智能体协同实践
云原生
阿里云云原生1 天前
从 OpenSearch 到阿里云 SLS:极致弹性、更低成本、生态兼容
云原生
yuanlaile1 天前
从入门到部署|2026年Koa全栈开发实战:覆盖Node.js、数据库、部署与云架构全链路
微服务·云原生·kubernetes·node.js·serverless·nodejs全栈开发
Learn-Python1 天前
修改docker容器内文件后让其生效
运维·docker·容器
http阿拉丁神猫1 天前
kubernetes知识点汇总37-42
云原生·容器·kubernetes
L1624761 天前
Containerd 完整部署安装与使用指南
容器