一文搞懂Kubernetes资源管理工具-KUI

本文涉及的产品
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
简介: Hello folks,我是 Luga,今天我们来分享一下关于 Kubernetes 资源管理的工具-KUI,全称为“K ubernetes U ser Interface”。作为一款 Kubernetes 工具的集合,KUI 旨在为管理 Kubernetes 资源提供一种更直观和可视化的方式。

    Hello folks,我是 Luga,今天我们来分享一下关于 Kubernetes 资源管理的工具-KUI,全称为“K ubernetes U ser Interface”。作为一款 Kubernetes 工具的集合,KUI 旨在为管理 Kubernetes 资源提供一种更直观和可视化的方式。


01

KUI 概述


    众所周知,Kubernetes 是当前云原生生态环境使用最广泛的容器编排系统之一,其能够帮助开发人员和 IT 团队在日常的项目活动中进行应用程序的部署及管理。

   基于所提供的一个名为 Kubectl 的强大命令行界面(CLI), Kubernetes 允许用户与所构建的 Kubernetes Cluster 和资源进行交互。

    然而,毕竟基于原生态,使得 Kubectl CLI 在数据的可用性和可视化展现方面存在一些局限性。通常情况下,基于 Kubectl 命令的输出,其结果往往显示为 ASCII 格式,使得难以阅读和理解。此外,特别是对新手来说,浏览复杂的 Kubernetes 资源可能具有挑战性。

    为了解决原生 Kubectl 带来的这些痛点,故此,一种命名为 “KUI” 的工具便应运而生。

    KUI 是一个开源项目,为 Kubectl 提供了图形用户界面。它由 Kubernetes SIG(特殊兴趣小组)开发,提供了一种管理 Kubernetes 资源的替代方法。KUI 使用Electron,一个使用 Web 技术构建桌面应用程序的框架,以提供原生桌面体验。

    同时,KUI 提供了一个强大的 REPL(Read-Eval-Print Loop),允许用户使用更为直观和可视化的界面与 Kubernetes 资源进行交互。基于其所具有的实时表、自动完成和语法高亮显示等功能,KUI 使用户更容易浏览和管理他们的 Kubernetes 资源。

02

KUI 基本工作原理


    KUI 通过利用 Kubectl CLI 工作,并为管理 Kubernetes 资源提供更加友好的用户体验和可视化的互操作界面。当用户在 KUI 中输入 “kubectl” 命令时,KUI 将该命令发送到 Kubectl CLI,并以更直观和可观测的格式展现输出。

    KUI 通常基于 HTML、CSS 和 JavaScript 等技术的组合要素来进行图形用户界面的渲染。除此之外,KUI 还使用 Electron 框架来提供原生桌面体验。

    基于其设计理念, KUI 通过 REST API 与 Kubectl CLI 通信,同时,此 API 允许它执行 Kubectl 命令并检索输出。


03

KUI 部署安装


    基于上述所属,作为一个最具有 GUI 风格的 CLI,KUI 是一款跨平台应用程序,其构建适用于 macOS、Linux 和 Windows。我们也可以基于源代码构建它。它的引擎盖下有 Electron 框架,并作为一个预构建的二进制文件提供。

    乍一看,KUI 和大多数终端一样。有一个选项可以在顶部的选项卡之间切换,还有一个按钮可以将当前选项卡拆分为垂直和水平子窗口。右下角有一个下拉菜单,用于选择外观主题、帮助按钮和通知区域。

    KUI 界面的特别之处在于,每个输入的命令都不是典型的终端行,而是一个带有用于输入命令的字段的面板。

    与其他工具一样,KUI 的安装部署相对来说还是很简单。具体可参考如下所述。

    1. 自定义 macOS 平台安装

    如果我们使用的是 macOS 并安装了 Homebrew,那么,我们可以通过在终端中运行以下命令轻松安装 KUI,具体可参考:


[leonli@leonLab ~ ] % brew tap kui-shell/kui brew install kui

    2. 二进制文件安装(主要限于 Windows 和 Linux 操作系统)

    如果我们使用的是 Windows 或 Linux,我们可以从 GitHub 发布页面下载 KUI 的最新二进制版本。然后,解压缩文件并将解压缩的目录添加到我们所设定的 PATH 环境变量中。此时,可以使用 kubectl kui 命令启动 KUI。

    3. 源代码构建

    如果我们更喜欢从源代码构建 KUI,我们可以从 GitHub 克隆存储库并使用Node.js 构建它。以下是具体的操作步骤:


[leonli@leonLab ~ ] % git clone git@github.com:kui-shell/kui.git
[leonli@leonLab ~ ] % cd kui 
[leonli@leonLab ~ ] % npm ci 
[leonli@leonLab ~ ] % npm run build

    这将为我们当前的平台构建 KUI。然后,我们可以使用 ./bin/kui 命令启动 KUI组件等。

    4.基于 Docker 部署

    如果我们更喜欢使用 Docker命令行,那么,可以使用 kui-shell/kui Docker 镜像。如下为在 Docker 中启动 KUI 的示例命令,具体:


[leonli@leonLab ~ ] % docker run -it -e KUBECONFIG=/path/to/your/kubeconfig kui-shell/kui

    安装 KUI 后,我们可以使用 kubectl kui 命令启动它。这将在我们所构建的默认网页浏览器中打开 KUI 界面。从那里,我们可以使用直观的图形界面与 Kubernetes Cluster 进行交互。

04

基于 KUI 的价值与意义


    通常,在实际的业务场景中,使用 KUI 能够为我们所构建的云原生架构平台业务支撑提供如下好处,具体:

    1、沉浸式的用户界面体验

    KUI 提供了一个易于导航和使用的用户友好界面。它的图形用户界面消除了记住复杂命令和标志的需要,使其成为初学者和高级用户的最佳选择。

    2、提高生产力

    KUI 允许我们使用比传统的命令行界面更高效地执行任务。其直观的界面和可视化数据的能力使我们能够更快、更准确地投入到生产中。

    3、可观测性渲染:

    KUI 的图形界面增强了可见性,使监控和管理复杂环境变得更加容易。基于其实时更新和动态表特性,使得允许我们在变化发生时能够及时观测最新的活动状态,使我们能够快速做出明智的决策。同时,KUI 的调试功能允许我们能够轻松识别和故障排除问题,再加之友好的交互式界面以及对日志和事件的支持使隔离问题和快速找到解决方案变得更为容易。

    4、可定制性

    KU I的框架允许我们依据自身的业务需求创建自己的 Kubernetes 增强功能,设置自定义主题和图标,并增强我们最喜欢的 CLI 命令行。当然,我们还可以使用 KUI 的托管客户端-服务器架构,或通过 Electron 分发可双击的应用程序等。


    Adiós !

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
5月前
|
Kubernetes Shell Linux
K8S 实用工具之一 - 如何合并多个 kubeconfig?
K8S 实用工具之一 - 如何合并多个 kubeconfig?
|
1月前
|
Ubuntu Linux pouch
Docker容器管理工具
文章介绍了Docker容器管理工具,以及早期使用的LXC容器管理工具,包括它们的安装、使用和相关技术特点。
50 10
Docker容器管理工具
|
1月前
|
Linux pouch 容器
CentOS7部署阿里巴巴开源的pouch容器管理工具实战
关于如何在CentOS 7.6操作系统上安装和使用阿里巴巴开源的Pouch容器管理工具的实战教程。
66 2
CentOS7部署阿里巴巴开源的pouch容器管理工具实战
|
5月前
|
存储 Kubernetes C++
【专栏】Kubernetes VS Docker Swarm了解两者特点,助力选取合适容器编排工具
【4月更文挑战第27天】对比Kubernetes和Docker Swarm:K8s在可扩展性和自动化方面出色,有强大社区支持;Swarm以简易用著称,适合初学者。选择取决于项目需求、团队技能和预期收益。高度复杂项目推荐Kubernetes,快速上手小项目则选Docker Swarm。了解两者特点,助力选取合适容器编排工具。
180 1
|
2月前
|
存储 Kubernetes Cloud Native
容器管理工具Containerd
容器管理工具Containerd
|
2月前
|
Kubernetes 监控 开发者
|
2月前
|
Prometheus Kubernetes 监控
揭秘Kubernetes的秘密武器库:十大工具让你的容器编排如虎添翼!探索这些神秘而强大的工具,它们将如何彻底改变你的Kubernetes体验?
【8月更文挑战第19天】在容器世界里,Kubernetes是部署与管理容器化应用的首选平台。为了增强其功能,本文精选了十大必备工具:Helm简化复杂应用部署;Prometheus监控系统与应用指标;Grafana提供数据可视化;Fluentd统一日志管理;Envoy实现服务间通信与控制;Calico确保网络连接安全;CoreDNS提升DNS服务性能;Velero保障数据安全与迁移;Argo Workflows执行复杂工作流;Istio强化服务网格功能。这些工具覆盖部署、监控、日志等多个方面,助力提升Kubernetes的效率与稳定性。
34 3
|
2月前
|
存储 Kubernetes 监控
在K8S中,Resource Quotas是什么?如何做资源管理的?
在K8S中,Resource Quotas是什么?如何做资源管理的?
|
2月前
|
Kubernetes jenkins 持续交付
Jenkins 与 Kubernetes 的集成:实现高效的资源管理和自动化部署
【8月更文第31天】随着微服务架构的普及,Kubernetes 已经成为了容器编排的事实标准。Kubernetes 提供了一种强大的方式来管理容器化的应用程序,而 Jenkins 则是持续集成与持续部署(CI/CD)领域的一个重要工具。将 Jenkins 与 Kubernetes 集成,不仅可以充分利用 Kubernetes 的资源管理能力,还能通过 Jenkins 实现自动化构建、测试和部署,从而提高开发效率和部署速度。本文将详细介绍如何将 Jenkins 集成到 Kubernetes 环境中,并提供具体的代码示例。
95 0
|
2月前
|
Kubernetes 监控 Shell
在K8S中,我们公司用户反应pod连接数非常多,希望看一下这些连接都是什么信息?什么状态?怎么排查?容器里面没有集成bash环境、网络工具,怎么处理?
在K8S中,我们公司用户反应pod连接数非常多,希望看一下这些连接都是什么信息?什么状态?怎么排查?容器里面没有集成bash环境、网络工具,怎么处理?

热门文章

最新文章

下一篇
无影云桌面