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进行登录

相关推荐
KubeSphere 云原生16 小时前
云原生周刊:在 Kubernetes 上运行机器学习
云原生·容器·kubernetes
码界奇点16 小时前
通往Docker之路从单机到容器编排的架构演进全景
docker·容器·架构
阿Y加油吧16 小时前
Docker从入门到实战——含容器部署、docker基础、项目部署
运维·docker·容器
不知道累,只知道类17 小时前
记一次诡异的“偶发 404”排查:CDN 回源到 OSS 导致 REST API 失败
java·云原生
victory043118 小时前
progen2 docker镜像打包命令文档
运维·docker·容器
AKAMAI18 小时前
Akamai推出Akamai Inference Cloud (AI推理云),重新定义人工智能的应用场景与实现方式
人工智能·云原生·云计算
算是难了19 小时前
Docker基础总结
运维·docker·容器
ityangs20 小时前
GitLab 私服(基于 Docker)搭建方案
git·docker·容器·gitlab
沐雨风栉21 小时前
告别设备限制!CodeServer+cpolar让VS Code随时随地在线编程
云原生·eureka·重构·pdf·开源
技术杠精1 天前
Docker Swarm 的负载均衡和平滑切换原理
docker·容器·负载均衡·1024程序员节