Kubernetes dashboardv2.7.0安装指南:从零开始搭建可视化界面
创始人
2025-07-05 11:00:40
0

一、K8S管理控制台

Kubernetes Web UI(或Kubernetes Dashboard)是用于管理和监视Kubernetes集群的不同工具和用户界面。以下是一些常见的Kubernetes Web UI工具和用户界面:

  • Kubernetes Dashboard: Kubernetes官方提供的Web用户界面,用于管理和监视Kubernetes集群中的各种资源。它是最常见和广泛使用的Kubernetes Web UI。
  • KubeSphere: KubeSphere是一个开源的容器化应用管理平台,提供了一个Web UI,用于创建、部署和管理容器化应用程序,以及监视和调优Kubernetes集群。
  • Rancher: Rancher是一个用于管理和操作Kubernetes、Docker和其他容器编排引擎的平台。它提供了一个直观的Web界面,支持多个Kubernetes集群的管理。
  • Octant: Octant是一个开源的Kubernetes Web UI工具,它提供了直观的集群资源查看和交互式探索功能,可以帮助开发人员更容易地理解和调试他们的应用程序。
  • Lens: Lens是一个强大的开源Kubernetes IDE,提供了一个跨平台的桌面应用程序,用于管理和监视Kubernetes集群。它支持多个集群、多个命名空间和内置的CLI终端。
  • Kubernetes Web View: Kubernetes Web View是一个轻量级的开源Web UI,用于查看和导航Kubernetes集群中的资源。它的设计简单,适用于快速查看集群状态。
  • K9s: 虽然不是传统的Web UI,但K9s是一个基于终端的TUI(文本用户界面)工具,用于管理和监视Kubernetes集群。它提供了强大的命令行交互性能。
  • Supergiant: Supergiant是一个用于部署、管理和监视Kubernetes集群的平台。它提供了一个Web界面,用于自动化Kubernetes基础设施。

二、Kubernetes-Dashboard v2.7.0

Kubernetes Dashboard 是 Kubernetes 的官方 Web UI。它提供了集群的详细信息和管理功能。以下是安装和使用 Kubernetes Dashboard 的步骤:

安装前需要先选择与你安装的Kubernetes对应版本的Dashboard,不然会出现各种问题。每个releases都会有一张对应表,如下图:

https://github.com/kubernetes/dashboard/releases。

步骤 1:安装Dashboard

首先,您需要安装 Kubernetes Dashboard。执行以下命令:

wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml

为了可以在集群外面访问,我们把recommended.yaml里访问方式调整为nodeport。

找到这一段,大约在30行左右,特点是:

  • kind: Service
  • k8s-app: kubernetes-dashboard

增加一行,type=NodePort。

再执行apply部署 Kubernetes-Dashboard v2.7.0。

kubectl apply -y recommended.yaml

执行后会卡很长时间,主要是在下载docker镜像,从配置文件可以看到是以下两个镜像,如果发现最后下载出问题也可以单独的docker pull下面两镜像。

  • kubernetesui/dashboard:v2.7.0
  • kubernetesui/metrics-scraper:v1.0.8

步骤 2:创建 Dashboard 用户

Dashboard 默认启用了令牌认证,因此您需要创建一个用户帐户来登录。首先,创建一个 YAML 文件(例如 dashboard-adminuser.yaml):

apiVersion: v1
kind: ServiceAccount
metadata:
  name: admin-user
  namespace: kubernetes-dashboard
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: admin-user
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
  - kind: ServiceAccount
    name: admin-user
    namespace: kubernetes-dashboard

然后,通过以下命令创建用户:

kubectl apply -f dashboard-adminuser.yaml

步骤 3:获取令牌

要获取登录到 Dashboard 所需的令牌,请运行以下命令:

kubectl -n kubernetes-dashboard describe secret $(kubectl -n kubernetes-dashboard get secret | grep admin-user | awk '{print $1}')

这将显示一个长令牌字符串,将其复制以备用。

步骤 4:查看端口

kubectl get pod,svc -n kubernetes-dashboard

这样我们通过主机的ip+30081就可以访问dashboard了。下面用的ip是主机的ip,并不是上面出现的cluster-ip,cluster-ip是集群内部访问的ip。

总结:总体来说dashboard安装还是比较简单,但如果你安装的是新版本,感觉还是会出现不少问题,还是得把版本控制好。

三、Dashboard界面

  • 登录界面

  • 主界面-监控集群的状态

  • 部署应用-可以通过这里直接部署应用

  • 部署应用-详细配置

包含应用名称、容器镒、pod数量、Service非常的方便,不想设置配置yaml的可以很方便的部署。

  • Deployments

  • Pods

  • Nodes

  • Services

  • 监控

四、相关问题

1、token没有生成

(1)创建serviceaccount

kubectl create serviceaccount myadmin -n kubernetes-dashboard

(2)查看账户信息

kubectl get serviceaccount myadmin -o yaml  -n kubernetes-dashboard

(3)绑定角色

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

(4)生成token

kubectl create token myadmin  -n kubernetes-dashboard

相关内容

热门资讯

PHP新手之PHP入门 PHP是一种易于学习和使用的服务器端脚本语言。只需要很少的编程知识你就能使用PHP建立一个真正交互的...
网络中立的未来 网络中立性是什... 《牛津词典》中对“网络中立”的解释是“电信运营商应秉持的一种原则,即不考虑来源地提供所有内容和应用的...
各种千兆交换机的数据接口类型详... 千兆交换机有很多值得学习的地方,这里我们主要介绍各种千兆交换机的数据接口类型,作为局域网的主要连接设...
粉嫩如何诠释霸道 东芝M805... “霸道粉”是个什么玩意东芝M805拿过来的时候,笔者扑哧笑了,不是笑这款笔记本,而是笑这款产品的颜色...
什么是大数据安全 什么是大数据... 在《为什么需要大数据安全分析》一文中,我们已经阐述了一个重要观点,即:安全要素信息呈现出大数据的特征...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
全面诠释网络负载均衡 负载均衡的出现大大缓解了服务器的压力,更是有效的利用了资源,提高了效率。那么我们现在来说一下网络负载...
如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
30分钟搞定iOS自定义相机 最近公司的项目中用到了相机,由于不用系统的相机,UI给的相机切图,必须自定义才可以。就花时间简单研究...
Intel将Moblin社区控... 本周二,非营利机构Linux基金会宣布,他们将担负起Moblin社区的管理工作,而这之前,Mobli...