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的解决方案

相关推荐
张忠琳5 小时前
【client-go v0.36.1】(store Part 3)Store 超深度分析 — 集成模式、完整数据流、不变量、与 DeltaFIFO 协作
云原生·kubernetes·informer·store·client-go
赵渝强老师8 小时前
【赵渝强老师】Kubernetes(K8s)中的金丝雀升级
linux·docker·云原生·容器·kubernetes
鹤落晴春8 小时前
【K8s】配置存储卷
云原生·容器·kubernetes
张忠琳9 小时前
【client-go v0.36.1】(DeltaFIFO Part 1)DeltaFIFO 超深度分析 — 模块定位、类结构、接口层次、构造与初始化
云原生·kubernetes·deltafifo·informer·client-go
ba_pi11 小时前
k8s删除pod
linux·容器·kubernetes
张忠琳13 小时前
【client-go v0.36.1】tools/cache 深度分析(下篇)— RealFIFO 深度、集成架构、生命周期、设计模式总结
云原生·kubernetes·cache·informer·client-go
张忠琳13 小时前
【client-go v0.36.1】(store Part 2)Store 超深度分析 — threadSafeMap 核心、索引体系、RV追踪、事务机制
云原生·kubernetes·informer·store·client-go
sbjdhjd14 小时前
04(上)| k8s中的微服务
微服务·云原生·kubernetes·开源·云计算·excel·kubelet
qq_4523962317 小时前
第二篇:《K8s 集群搭建:Minikube、kubeadm、Kind 对比与实操》
容器·kubernetes·kind
小哈里18 小时前
【K8S】OCI标准下的企业级镜像治理:Harbor+Skopeo+Trivy 最佳实践
云原生·容器·kubernetes·harbor·镜像·skopen