0
点赞
收藏
分享

微信扫一扫

K8s图形化管理工具Dasboard部署及使用



文章目录

  • 一、Dashboard简介
  • 二、Dashboard部署安装
  • 三、配置Dashboard登入用户
  • 1、通过Token令牌登入
  • 2、通过kubeconfig文件登入
  • 四、Dashboard创建容器
  • 五、扩展


一、Dashboard简介

K8s图形化管理工具Dasboard部署及使用_Pod

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

二、Dashboard部署安装

1、下载文件并执行,国内仓库下:

wget https://gitee.com/qinziteng/K8S/raw/master/YMAL/recommended.yaml

2、默认 Dashboard 只能在集群内部访问 添加Service 类型:

vim recommended.yaml

K8s图形化管理工具Dasboard部署及使用_kubernetes_02

3、修改完成确认无误后执行文件

kubectl apply -f recommended.yaml

4、查看状态 默认在 kubernetes-dashboard 名称空间下:

kubectl get pods -n kubernetes-dashboard

K8s图形化管理工具Dasboard部署及使用_容器_03

5、查看Service暴露端口,我们使用这个端口进行访问:

kubectl get svc -n kubernetes-dashboard

K8s图形化管理工具Dasboard部署及使用_容器_04

6、访问页面

https://IP+SVCPort

K8s图形化管理工具Dasboard部署及使用_命名空间_05

三、配置Dashboard登入用户

1、通过Token令牌登入

1、创建一个 ClusterRoleBinding 对象,并赋予cluster-admin权限,即访问整个集群的权限,包括查看和修改所有资源的权限

kubectl create clusterrolebinding dashboard-cluster-admin --clusterrole=cluster-admin --serviceaccount=kubernetes-dashboard:kubernetes-dashboard

命令参数解析:

  • create:创建资源的命令
  • clusterrolebinding:资源类型,表示创建一个 ClusterRoleBinding 对象
  • dashboard-cluster-admin:ClusterRoleBinding 对象的名称
  • clusterrole=cluster-admin:指定要绑定的 ClusterRole,这里是 cluster-admin,即具有完全访问权限的 ClusterRole。
  • serviceaccount=kubernetes-dashboard:kubernetes-dashboard:指定要绑定的 ServiceAccount,这里是 kubernetes-dashboard 命名空间下的 kubernetes-dashboard ServiceAccount

查看创建的secret

kubectl get secret -n kubernetes-dashboard

K8s图形化管理工具Dasboard部署及使用_Pod_06

2、获取token信息:

kubectl describe secret $(kubectl get secret -n kubernetes-dashboard|grep kubernetes-dashboard-token*|awk '{print $1}') -n kubernetes-dashboard|egrep  -w token:

查看token信息如下圈住信息:

K8s图形化管理工具Dasboard部署及使用_kubernetes_07

3、将token信息复制到浏览器下面即可管理K8S集群了

K8s图形化管理工具Dasboard部署及使用_容器_08

2、通过kubeconfig文件登入

1、创建cluster集群

cd /etc/kubernetes/pki

kubectl config set-cluster kubernetes --certificate-authority=./ca.crt --server="https://16.32.15.201:6443" --embed-certs=true --kubeconfig=/root/dashboard-admin.conf

执行完成后会 /root/dashboard-admin.conf 生成文件

cat /root/dashboard-admin.conf

2、创建credentials

TOKEN=$(kubectl get secret $(kubectl get secret -n kubernetes-dashboard|grep kubernetes-dashboard-token*|awk '{print $1}') -n kubernetes-dashboard  -o jsonpath={.data.token}|base64 -d)

kubectl config set-credentials dashboard-admin --token=$TOKEN --kubeconfig=/root/dashboard-admin.conf

3、创建context

kubectl config set-context dashboard-admin@kubernetes --cluster=kubernetes --user=dashboard-admin --kubeconfig=/root/dashboard-admin.conf

4、切换context的current-context是dashboard-admin@kubernetes

kubectl config use-context dashboard-admin@kubernetes --kubeconfig=/root/dashboard-admin.conf

5、把 /root/dashboard-admin.conf 这个文件下载到本地,之后上传到WEB页面登入即可

K8s图形化管理工具Dasboard部署及使用_kubernetes_09

四、Dashboard创建容器

1、登入上dashboard后点击加号进行添加,如下图:

K8s图形化管理工具Dasboard部署及使用_Pod_10

2、等待Pod全部启动后,查看Service映射端口

K8s图形化管理工具Dasboard部署及使用_kubernetes_11

3、通过映射端口访问网页

K8s图形化管理工具Dasboard部署及使用_命名空间_12

五、扩展

如果是k8s1.24版本以上包括1.24版本创建是不会自动创建token,需要手动创建一下,如下配置:

kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: admin
  annotations:
    rbac.authorization.kubernetes.io/autoupdate: "true"
roleRef:
  kind: ClusterRole
  name: cluster-admin
  apiGroup: rbac.authorization.k8s.io
subjects:
- kind: ServiceAccount
  name: admin
  namespace: kubernetes-dashboard
---
apiVersion: v1
kind: ServiceAccount
metadata:
  name: admin
  namespace: kubernetes-dashboard
  labels:
    kubernetes.io/cluster-service: "true"
    addonmanager.kubernetes.io/mode: Reconcile

执行一下:

kubectl apply -f admin.yml

创建token,将token复制到WEB页面即可。

kubectl create token admin  --namespace kubernetes-dashboard

K8s图形化管理工具Dasboard部署及使用_kubernetes_13

OK,至此结束!


举报

相关推荐

0 条评论