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

相关推荐
cui_hao_nan1 小时前
Kubernetes 核心概念总结
云原生·容器·kubernetes
张洛闻Eren1 小时前
云原生k8s【第八课】: ETCD 备份与恢复
linux·运维·docker·kubernetes·k8s
IT大白鼠10 小时前
Ingress 与 Ingress-Controller:K8s 七层 HTTP 反向代理技术详解与实践
http·容器·kubernetes
IT大白鼠17 小时前
Istio 结合 K8s 实现流量管理:服务网格灰度、熔断、限流实战
云原生·kubernetes·istio
鹤落晴春17 小时前
【K8s】认识Kubernetes API:从CRD出发的一次梳理
云原生·容器·kubernetes
玉&心1 天前
在dockers desktop上面部署k8s的前端和后端
云原生·容器·kubernetes
张洛闻Eren1 天前
云原生k8s【第七课】:集群监控与可观测性
linux·运维·docker·云原生·容器·kubernetes·k8s
LRL_2 天前
深入浅出 Kubernetes 控制器:Deployment 与 StatefulSet 核心区别全景图
云原生·容器·kubernetes
MrSYJ2 天前
Network Namespace 到底是个啥,别人再问你告诉他
docker·云原生·kubernetes
彬冷的心2 天前
K8s 部署若依项目 + Harbor 私有仓库(双节点版)
云原生·容器·kubernetes