网站首页
手机版

K8s v1.25版本下可视化管理工具dashboardv2.7.0部署实践

更新时间:作者:小小条

今天我们部署一套k8s原生的可视化管理工具kubernetes-dashboard,我当前的k8s集群版本是1.25.0,通过github查询,当前最新版本的dashboard:v2.7.0与k8s 1.25版本兼容。

K8s v1.25版本下可视化管理工具dashboardv2.7.0部署实践

https://github.com/kubernetes/dashboard/releases/tag/v2.7.0

ok,那下面我们就着手部署dashboard:v2.7.0


下载yaml文件

root@dmaster:~# wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml

--2022-10-25 16:47:39-- https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml

正在解析主机 raw.githubusercontent.com (raw.githubusercontent.com)... 185.199.108.133, 185.199.109.133, 185.199.110.133, ...

正在连接 raw.githubusercontent.com (raw.githubusercontent.com)|185.199.108.133|:443... 已连接。

已发出 HTTP 请求,正在等待回应... 200 OK

长度:7621 (7.4K) [text/plain]

正在保存至: “recommended.yaml”


recommended.yaml 100%[=======================================================================================>] 7.44K --.-KB/s 用时 0s


2022-10-25 16:47:39 (48.3 MB/s) - 已保存 “recommended.yaml” [7621/7621])


编辑yaml,新增nodeport配置,注意:nodeport端口规定必须在30000-32767这个区间,否则将配置失败,我们这里选择32443端口

root@dmaster:~# vim recommended.yaml

apiVersion: v1

kind: Namespace

metadata:

name: kubernetes-dashboard


---


apiVersion: v1

kind: ServiceAccount

metadata:

labels:

k8s-app: kubernetes-dashboard

name: kubernetes-dashboard

namespace: kubernetes-dashboard


---


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: 32443 ##新增

selector:

k8s-app: kubernetes-dashboard


---


apiVersion: v1

kind: Secret

metadata:

labels:

k8s-app: kubernetes-dashboard

name: kubernetes-dashboard-certs


部署kubernetes-dashboard


root@dmaster:~# kubectl apply -f recommended.yaml

namespace/kubernetes-dashboard created

serviceaccount/kubernetes-dashboard created

service/kubernetes-dashboard created

secret/kubernetes-dashboard-certs created

secret/kubernetes-dashboard-csrf created

secret/kubernetes-dashboard-key-holder created

configmap/kubernetes-dashboard-settings created

role.rbac.authorization.k8s.io/kubernetes-dashboard created

clusterrole.rbac.authorization.k8s.io/kubernetes-dashboard created

rolebinding.rbac.authorization.k8s.io/kubernetes-dashboard created

clusterrolebinding.rbac.authorization.k8s.io/kubernetes-dashboard created

deployment.apps/kubernetes-dashboard created

service/dashboard-metrics-scraper created

deployment.apps/dashboard-metrics-scraper created

查看部署结果

root@dmaster:~# kubectl get pod,svc -n kubernetes-dashboard

NAME READY STATUS RESTARTS AGE

pod/dashboard-metrics-scraper-64bcc67c9c-wsv8x 1/1 Running 0 48m

pod/kubernetes-dashboard-5c8bd6b59-bktck 1/1 Running 0 48m


NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE

service/dashboard-metrics-scraper ClusterIP 10.96.1.5 <none> 8000/TCP 48m

service/kubernetes-dashboard NodePort 10.96.2.200 <none> 443:32443/TCP 48m

创建服务账号

root@dmaster:~# kubectl create serviceaccount k8sadmin -n kubernetes-dashboard

serviceaccount/k8sadmin created


为账号授予集群管理权限

root@dmaster:~# kubectl create clusterrolebinding k8sadmin-rb --clusterrole=cluster-admin --serviceaccount=kubernetes-dashboard:k8sadmin

clusterrolebinding.rbac.authorization.k8s.io/k8sadmin-rb created

生成该账号的token

root@dmaster:~# kubectl create token k8sadmin -n kubernetes-dashboard

eyJhbGciOiJSUzI1NiIsImtpZCI6InFfZzZIdC03bnQ3b2hqd19EV0hoY0xYcWJYUW1FeW15RGJ5R2EwUUJjVFEifQ.eyJhdWQiOlsiaHR0cHM6Ly9rdWJlcm5ldGVzLmRlZmF1bHQuc3ZjLmNsdXN0ZXIubG9jYWwiXSwiZXhwIjoxNjY2Njk2Njc1LCJpYXQiOjE2NjY2OTMwNzUsImlzcyI6Imh0dHBzOi8va3ViZXJuZXRlcy5kZWZhdWx0LnN2Yy5jbHVzdGVyLmxvY2FsIiwia3ViZXJuZXRlcy5pbyI6eyJuYW1lc3BhY2UiOiJrdWJlcm5ldGVzLWRhc2hib2FyZCIsInNlcnZpY2VhY2NvdW50Ijp7Im5hbWUiOiJrOHNhZG1pbiIsInVpZCI6IjhiNjJmZGE4LTYyMjItNGM3YS05MzE1LTRlNmRiYjA0N2IzYiJ9fSwibmJmIjoxNjY2NjkzMDc1LCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6a3ViZXJuZXRlcy1kYXNoYm9hcmQ6azhzYWRtaW4ifQ.EMjbdGZEhPhN382iyFE0zaIJXUZ0g7fhjxbUKqcY-FpYh7shbpqqr35nELpYo5XJ6deu_Vs6eFnFRwAVXTgKdRy038hkF5D1KQmnFrdELCa2dBLaJsUzV1bbmYIXCkDaw2ejb72mS9LHKReBa1kEfp2vEYta3PTnqe4AnATFNG3gNwMKQCXM-2XTL7Rj6UnlXNGRA1eZCY4mPatmVumRcqU_w-77anGJ_scP7U1Cgj5zWJ9EtOXIeccfnxcgpuat6Y7B6wFZwLZ85lIFIQKrU5Eb7gK4K2Rh9aaZnd8dBm3NDZWiq89MqyFYxcpHSKEDIrOxHKAgrjppZK4aoTCXjg

接下来我们就可以登录dashboard的管理界面了,在浏览器输入https://[集群内任一节点IP]:<nodeport>,会跳转到如下登录界面




我们选择token登录方式,输入刚刚生成的token,即可登入集群管理界面




本章节到此结束,后续会另开一个章节着重讲一下dashboard下的常用功能

版权声明:本文转载于今日头条,版权归作者所有,如果侵权,请联系本站编辑删除

为您推荐

湖南公办专科大学名单及录取分数线(2026参考)

  湖南地处长江中游地区,省内不仅有 “山水洲城” 长沙这样的省会都市,也有永州、衡阳等底蕴深厚的历史名城,还坐拥张家界这类享誉国内外的旅游胜地。作为教育大省,湖南的职业

2026-01-26 11:09

2025湖南128个专科录取分数,物理类高分444,最低264公办大专!

2025湖南128个专科录取分数,物理类高分444,最低264分公办大专!湖南高考是一个传统高考大省,2025大专院校还在进行最后的征集补录,林木楠整理了2025年湖南128个专科录取分数线,是物

2026-01-26 11:09

了解吉首大学从这里开始

吉首大学简介吉首大学创办于1958年9月,是湖南省属综合性大学。吉首大学分吉首校区和张家界校区,校本部在湖南省吉首市。学科专业:吉首大学建有35个一级学科,80个本科专业,覆盖12

2026-01-26 11:08

吉首大学,旅游管理专业,同宿舍4人毕业5年后去向?谁当导游?

旅游管理专业的毕业生,选择其实挺多的,有人想着进旅行社干导游,有人想考公务员或者进国企,也有人考编,留在高校、博物馆做讲解,还有的干脆去了酒店或旅游公司做管理。像吉首大学这

2026-01-26 11:08

毕业修飞机,四所民航机务维修核心院校推荐

飞机维修,妥妥的维修天花板,门槛高,待遇好,就业稳得一匹,这篇聚焦民航机务维修领域核心院校(中飞院、中国民航大学、广州民航职业技术学院、上海民航职业技术学院)四所行业标杆,进行

2026-01-26 11:07

民航机务维修单位分类全景解析(一)总体分类

来杯美式,咱们坐下里,聊一聊。对于机务专业的同学们而言,即将面临的职业选择可能是人生中最重要的决定之一。当你手握民用航空器维修人员执照(CCAR-66)的准考证,站在航空公司维修

2026-01-26 11:07