Kubernetes: 本地部署dashboard

本篇文章主要是介绍如何在本地部署kubernetes dashboard, 部署环境是mac m2

下载dashboard.yaml

官网release地址: kubernetes/dashboard/releases

本篇文章下载的是kubernetes-dashboard-v2.7.0的版本,通过wget命令下载到本地:

bash 复制代码
wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml

部署dashboard

修改recommended.yaml暴露nodeport

首先是要修改recommended.yaml中的service配置,将service端口通过nodeport的方式提供给kubernetes集群外部访问。

yaml 复制代码
kind: Service
apiVersion: v1
metadata:
  labels:
    k8s-app: kubernetes-dashboard
  name: kubernetes-dashboard
  namespace: kubernetes-dashboard
spec:
  type: NodePort #新增
  ports:
    - port: 443
      targetPort: 8443
      nodePort: 30443 #新增
  selector:
    k8s-app: kubernetes-dashboard

在集群中部署kubernetes dashboard

提交recommended.yaml文件进行kubernetes dashboard的安装。
如果不能访问容器镜像不能下载的话,需要梯子或者将docker的镜像源仓库调整为国内的

执行命令:

bash 复制代码
kubectl apply -f recommended.yaml

创建用户SA和Token

新增dashboard-admin.yaml文件,在其中添加dashboard-admin的ServiceAccount配置和ClusterRoleBinding配置。

yaml 复制代码
apiVersion: v1
kind: ServiceAccount
metadata:
  labels:
    k8s-app: kubernetes-dashboard
  name: dashboard-admin
  namespace: kubernetes-dashboard
  
---

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: dashboard-admin-bind-cluster-role
  labels:
    k8s-app: kubernetes-dashboard
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
- kind: ServiceAccount
  name: dashboard-admin
  namespace: kubernetes-dashboard

执行kubectl apply -f 命令将dashboard-admin.yaml提交到集群

bash 复制代码
kubectl apply -f dashboard-admin.yaml

创建dashboard-admin的token

bash 复制代码
kubectl create token dashboard-admin -n kubernetes-dashboard 

执行结果如下图:

将token复制出来用来访问kubernetes dashboard:

#参考
k8s Dashboard 2.7 使用EIP和多权限角色token的解决方案

相关推荐
YYYing.16 小时前
【K8s系列 (一) 】Docker与容器(上篇)
docker·云原生·容器·kubernetes
weirong1 天前
给 Operator 加 Admission Webhook 踩的 4 个坑(其中 3 个本可以不踩)
kubernetes
Goboy1 天前
夯爆了,我被一个一句话接入的免费可观测平台策反了,那一刻我决定放弃用了3年的Prometheus
后端·docker·kubernetes
吴声子夜歌1 天前
Kubernetes权威指南——深入掌握Service(一)
云原生·容器·kubernetes
weirong2 天前
图解 client-go Informer:手写一个 mini-Informer 才敢说懂
kubernetes
.冰块.2 天前
流量大了自动加 Pod!K8s HPA 扩缩容与 ResourceQuota/LimitRange 资源管控实战
linux·云原生·容器·kubernetes·hpa·quota·limitrange
无言听风雨丶3 天前
Linux 容器本质探秘:Cgroup 与 Namespace 深度解析与实战
linux·运维·服务器·kubernetes
无言听风雨丶3 天前
Kubernetes GitOps 持续交付实战:用 Argo CD 让 Git 成为集群事实源
git·elasticsearch·kubernetes
无言听风雨丶3 天前
Kubernetes 控制平面深度剖析:从 kubectl apply 到 etcd 写入的全链路
平面·kubernetes·etcd
openFuyao4 天前
openFuyao x 复旦大学软件工程实验室 Panel 回顾:Agentic时代,集群调度技术体系将如何演进?
kubernetes·openfuyao