部署 K8s 图形化管理工具 Dashboard

文章目录

一、Dashboard 概述

Kubernetes Dashboard是一个Web UI,用于管理Kubernetes集群中的应用程序和资源。它提供了一个可视化的界面,可以方便地查看和管理Kubernetes集群中的各种资源,如Pod、Deployment、Service、ConfigMap等。Dashboard还提供了一些高级功能,如日志查看、资源监控、命名空间管理等。

二、GitHub 地址

dashboard

三、Dashboard 部署安装

1、选择兼容版本

由于之前升级 k8s 集群至 1.23.16 所以这里选择 Dashboard v2.5.1

2、下载配置文件

进入到master节点,下载dashboard对应版本的 recommended.yaml 文件

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

3、添加 Dashboard 的Service类型

指定 Service 的类型为 NodePort

指定 NodePort Service 在每个节点上使用的端口号 (30000-32767 )

bash 复制代码
vim recommended.yaml

kind: Service
apiVersion: v1
metadata:
  labels:
    k8s-app: dashboard-metrics-scraper
  name: dashboard-metrics-scraper
  namespace: kubernetes-dashboard
spec:
  type: NodePort	#添加
  ports:
    - port: 8000
      targetPort: 8000
      nodePort: 32111	#添加
  selector:
    k8s-app: dashboard-metrics-scraper

4、应用部署

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

5、查看 kubernetes-dashboard 命名空间下资源状态

bash 复制代码
kubectl get pods,svc -n kubernetes-dashboard

6、创建访问账户

1.24 版本前的操作

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

7、授权

bash 复制代码
kubectl create clusterrolebinding dashboard-admin-rb --clusterrole=cluster-admin --serviceaccount=kubernetes-dashboard:dashboard-admin

8、获取账号token

获取 token 登录Dashboard

bash 复制代码
kubectl get secrets -n kubernetes-dashboard | grep dashboard-admin

kubectl describe secrets dashboard-admin-token-qfz2z -n kubernetes-dashboard

9、1.24 版本以后的需要创建一个Pod

yaml 复制代码
cat << EOF > pod1.yaml
apiVersion: v1
kind: Pod
metadata:
  creationTimestamp: null
  labels:
    run: pod1
  name: pod1
  namespace: kubernetes-dashboard
spec:
  terminationGracePeriodSeconds: 0
  serviceAccount: dashboard-admin
  containers:
  - image: nginx
    imagePullPolicy: IfNotPresent
    name: pod1
    resources: {}
  dnsPolicy: ClusterFirst
  restartPolicy: Always
status: {}
EOF
bash 复制代码
kubectl apply -f pod1.yaml

kubectl exec -it pod1 -n kubernetes-dashboard -- cat /run/secrets/kubernetes.io/serviceaccount/token

四、浏览器访问Dashboard

遇到显示 Your connection is not private 在页面空白处英文输入法输入

thisisunsafe

1、输入 token 登录

2、页面

相关推荐
JANYI201812 分钟前
一文读懂-嵌入式Ubuntu平台
linux·运维·ubuntu
Will_11301 小时前
如何实现k8s高可用
运维·docker·容器
编程、小哥哥1 小时前
互联网大厂Java面试场景:从缓存到容器化的技术问答
redis·docker·微服务·kubernetes·spring security·java面试·gitlab ci
李白你好2 小时前
H3C网络设备(交换机、路由器、防火墙)常用命令整理
运维·网络·智能路由器
无敌的牛2 小时前
Linux梦开始的地方
linux·运维·服务器
laocui12 小时前
Ubuntu22.04开机运行程序
linux·运维·服务器
卡戎-caryon2 小时前
【Linux网络与网络编程】12.NAT技术&&内网穿透&&代理服务
linux·运维·服务器·网络·网络协议·https
我的老子姓彭2 小时前
LWIP的Socket接口
运维·服务器·网络
朱包林2 小时前
day10-别名-MD5,aide-堡垒机
linux·运维·安全·ubuntu·centos·云计算
叶子爱分享3 小时前
浅谈无服务器WebSocket的优势
websocket·云原生·serverless