Helm Dashboard — Kubernetes 中管理 Helm 版本的 GUI
Helm Dashboard 通过提供图形用户界面,使在 Kubernetes 中管理 Helm 版本变得更加容易,这是许多开发人员所期望的。它可用于在 Kubernetes 中创建、部署和更新应用程序的版本,并跟踪其状态。
本文将探讨 Helm Dashboard 提供的特性和优势,并解释如何使用它来促进 Kubernetes 应用程序管理。我们将介绍它的基本功能和用户界面,并展示一些实际示例。
什么是 Helm 仪表板?
Helm Dashboard 是一个用于 Helm 的开源 GUI,由 Komodor 开发,并被其作者描述为“Helm 缺失的 UI”。您可能知道,Helm 是某种 Kubernetes 包管理器。它简化了在 Kubernetes 中安装应用程序(通过称为 Helm 图表的包)和管理其版本的过程。安装 Helm 图表后,它在 Kubernetes 集群中运行的实例称为 Helm 版本。
Helm Dashboard 提供了一个 Web UI,用于浏览和管理(例如,修改或删除)这些版本。该项目诞生于 2022 年 8 月,并于 2023 年 2 月宣布随其 v1.0.0 正式发布。目前(截至 2023 年 12 月),其最新版本是 v1.3.3,于 2023 年 6 月发布,其 GitHub 存储库拥有近 4500 Stars 和 40 多名贡献者。它是用 TypeScript(Node.js)和 Go 编写的。
安装 Helm Dashboard
项目存储库中的官方文档提出了几种安装 Helm Dashboard 的方法。您可以:
- 下载带有预构建可执行文件的存档。
- 将其安装为 Helm 插件。
- 使用 chart 将其安装在 K8s 集群中(这也将创建一个 Ingress 资源)。
- 自行从源代码生成可执行文件。
在本文中,我们将坚持使用第二个选项——Helm 插件。要安装插件,您需要安装 Helm v3.4.0+ 并执行以下命令:
helm plugin install https://github.com/komodorio/helm-dashboard.git
请注意,插件需要调用配置文件来访问 Kubernetes 集群(K8s 文档详细介绍了这个主题)。kubeconfig
要运行该插件,请输入您的终端:
helm dashboard
默认情况下,这将在浏览器中打开一个 Web UI,显示 Helm 版本的概述页面。
Helm 仪表板功能
页面顶部显示的是“已安装”和“存储库”选项卡。这些是我们将使用的主要选项卡。让我们更详细地看一下它们。
管理已安装的 Helm 版本
通过“已安装”选项卡,您可以查看已安装的版本,并通过选择特定的 Kubernetes 集群和所需的命名空间来筛选它们:

单击任何版本以查看有关其的详细信息。
如果发布被列为失败,则会显示一条错误消息。它将说明版本安装失败的原因:

如果版本安装成功,仪表板将显示相关 Kubernetes 资源的列表。
我们以 zookeeper-operator-dev 版本为例:

页面左侧显示的修订版本是系统在群集中找到的版本的状态。
我们的主要关注点将设置在页面主要部分的“资源”和“清单”选项卡上。
释放资源
“资源”选项卡列出了版本中的资源。每个资源都有一个“描述”按钮。单击一个以查看资源摘要:

如您所见,资源描述是常规输出。kubectl describe
在某些情况下,“描述”按钮旁边也可能有一个“扫描”按钮:

如果安装了 Trivy,它就可用了。此工具扫描容器并检测漏洞和潜在威胁。
单击“扫描”按钮开始扫描资源。它将以如下报告结束:

发布清单
“清单”选项卡显示发行版中的资源清单。您可以从群集中现有的清单中选择任何清单:

随后出现的窗口将有两个选项卡:
- 与先前版本的差异显示了当前版本和先前版本之间的差异。
- 具有特定修订版的差异显示了当前版本和特定版本之间的差异。
例如,以下是当前版本与版本 3 之间的区别,后者无法部署:

释放操作
您可以从集群中升级、回滚或删除任何版本。“已安装”页面上的“重新配置”、“回滚”和“卸载”按钮就是这样做的:

下面是升级窗口的屏幕截图:

管理 Helm 存储库
通过“存储库”窗口,可以管理本地安装的 Helm 存储库。同时,左侧面板显示存储库列表:

您可以选择一个存储库并浏览它附带的 Helm 图表。您可以执行的其他操作包括:
- 添加存储库;
- 更新存储库;
- 删除存储库。
存储库中可用的 Helm 图表可以安装到 Kubernetes 集群中。但首先,您必须填写图表值。为此,请单击图表名称旁边的“安装”按钮。这将导致弹出以下窗口:

Helm Dashboard 的优势和微妙之处
现在我们已经了解了 Helm Dashboard 的主要功能,是时候指出其中我最喜欢的功能了:
- Helm Dashboard 可以安装在本地,也可以使用 chart 安装在集群中。
- 您可以查看集群中安装的 Helm 图表并检查其发布历史记录。
- diff 功能显示发布版本之间的差异。
- 您可以回滚或更新它。
- 在本地安装时,您可以浏览多个集群中的版本。
- Helm Dashboard 可以与漏洞扫描程序集成。
- 用户界面直观且使用愉快。
至于 Helm Dashboard 的特殊性,值得注意的是它的 UI 会影响 Kubernetes API 服务器。启动该工具时,服务请求释放机密,从而导致 CPU 利用率增加。例如,这是 Helm 仪表板请求发布机密之前的群集状态:

在这里,您可以看到运行 Helm Dashboard 之前的典型集群状态:CPU 使用率、请求的 K8s 资源以及频率。
下面是 Helm Dashboard 启动请求发布密钥后的集群状态:

从这些图中我们可以看出,随着秘密资源被主动检索,CPU 利用率也有所增加。
结论
我相信 Helm Dashboard 是一个方便的 Web UI,用于在 Kubernetes 中查看和管理 Helm 版本。我特别喜欢 diff 函数,它允许您将版本相互比较。
该工具的简约、舒适和整洁的界面给人留下了愉快的印象。在使用测试集群时,它将作为开发团队的天赐之物,并帮助他们找出问题所在并快速修复它。
相关文章:
Helm Dashboard — Kubernetes 中管理 Helm 版本的 GUI
Helm Dashboard 通过提供图形用户界面,使在 Kubernetes 中管理 Helm 版本变得更加容易,这是许多开发人员所期望的。它可用于在 Kubernetes 中创建、部署和更新应用程序的版本,并跟踪其状态。 本文将探讨 Helm Dashboard 提供的特性和优势&am…...
【Guava笔记01】Guava Cache本地缓存的常用操作方法
这篇文章,主要介绍Guava Cache本地缓存的常用操作方法。 目录 一、Guava Cache本地缓存 1.1、引入guava依赖 1.2、CacheBuilder类 1.3、Guava-Cache使用案例...
Flink(十三)【Flink SQL(上)SqlClient、DDL、查询】
前言 最近在假期实训,但是实在水的不行,三天要学完SSM,实在一言难尽,浪费那时间干什么呢。SSM 之前学了一半,等后面忙完了,再去好好重学一遍,毕竟这玩意真是面试必会的东西。 今天开始学习 Flin…...
Labview局部变量、全局变量、引用、属性节点、调用节点用法理解及精讲
写本章前想起题主初学Labview时面对一个位移台程序,傻傻搞不清局部变量和属性节点值有什么区别,概念很模糊。所以更新这篇文章让大家更具象和深刻的去理解这几个概念,看完记得点赞加关注喔~ 本文程序源代码附在后面,大家可以自行下…...
openssl3.2 - 官方demo学习 - signature - EVP_ED_Signature_demo.c
文章目录 openssl3.2 - 官方demo学习 - signature - EVP_ED_Signature_demo.c概述笔记END openssl3.2 - 官方demo学习 - signature - EVP_ED_Signature_demo.c 概述 ED25519 签名/验签算法, 现在是最好的. 产生ED25519私钥/公钥 用私钥对明文签名, 得到签名数据 用公钥对明文…...
AI辅助编程工具—Github Copilot
一、概述 Copilot是一种基于Transformer模型的神经网络,具有12B个参数。是GitHub和OpenAPI共同开发的编程辅助工具。GitHubCopilot是一款由人工智能驱动的结对编程编辑器,旨在帮助开发人员更加高效地工作。它利用OpenAICodex技术,将开发…...
三大3D引擎对比,直观感受AMRT3D渲染能力
作为当前热门的内容呈现形式,3D已经成为了广大开发者、设计师工作里不可或缺的一部分。 用户对于3D的热衷,源于其带来的【沉浸式体验】和【超仿真视觉效果】。借此我们从用户重点关注的四个3D视觉呈现内容: 材质- 呈现多元化内容水效果- 展…...
k8s之对外服务ingress
一、service 1、service作用 ①集群内部:不断跟踪pod的变化,不断更新endpoint中的pod对象,基于pod的IP地址不断变化的一种服务发现机制(endpoint存储最终对外提供服务的IP地址和端口) ②集群外部:类似负…...
Ubuntu使用docker-compose安装mysql8或mysql5.7
ubuntu环境搭建专栏🔗点击跳转 Ubuntu系统环境搭建(十四)——使用docker-compose安装mysql8或mysql5.7 文章目录 Ubuntu系统环境搭建(十四)——使用docker-compose安装mysql8或mysql5.7MySQL81.新建文件夹2.创建docke…...
【办公类-21-02】20240118育婴员操作题word打印2.0
作品展示 把12页一套的操作题批量制作10份,便于打印 背景需求 将昨天整理的育婴师操作题共享, 因为题目里面有大量的红蓝颜色文字,中大班办公室都是黑白单面手动翻页打印。只有我待的教务室办公室有彩色打印机打印(可以自动双面…...
SpringMVC 文件上传和下载
文章目录 1、文件下载2、文件上传3. 应用 Spring MVC 提供了简单而强大的文件上传和下载功能。 下面是对两者的简要介绍: 文件上传: 在Spring MVC中进行文件上传的步骤如下: 在表单中设置 enctype“multipart/form-data”,这样…...
强缓存、协商缓存(浏览器的缓存机制)是么子?
文章目录 一.为什么要用强缓存和协商缓存?二.什么是强缓存?三.什么是协商缓存?四.总结 一.为什么要用强缓存和协商缓存? 为了减少资源请求次数,加快资源访问速度,浏览器会对资源文件如图片、css文件、js文…...
android 13.0 Camera2 去掉后置摄像头 仅支持前置摄像头功能
1.概述 在定制化13.0系统rom定制化开发中,当产品只有一个前置摄像头单摄像头,这时调用相机时就需要默认打开前置摄像头就需要来看调用摄像头这块的代码,屏蔽掉后置摄像头的调用api就可以了,接下来就来具体实现相关功能的开发 2.Camera2 去掉后置摄像头 仅支持前置摄像头功…...
【蓝桥杯EDA设计与开发】立创开源社区分享的关于蓝桥被EDA真题与仿真题的项目分析
立创开源社区内有几个项目分享了往年 EDA 设计题目与仿真题,对此展开了学习。 【本人非科班出身,以下对项目的学习仅在我的眼界范围内发表意见,如有错误,请指正。】 项目一 来源:第十四届蓝桥杯EDA赛模拟题一 - 嘉立…...
电影《潜行》中说的蜜罐是什么(网络安全知识)
近期刘德华、彭于晏主演的电影《潜行》在网上掀起了轩然大波,电影中有提到网络蜜罐,这引起了很多观众的疑问,蜜罐到底是什么? 从字面意思上来看,蜜罐就是为黑客设下的诱饵。这是一种具有牺牲性质的计算机系统ÿ…...
基于 UniAPP 社区论坛项目多端开发实战
社区论坛项目多端开发实战 基于 UniAPP 社区论坛项目多端开发实战一、项目准备1.1 ThinkSNS 简介及相关文档1.2 使用 UniAPP 构建项目1.3 构建项目文件结构1.4 配置页面 TabBar 导航1.5 使用 npm 引入 uView UI 插件库 二、首页功能实现2.1 首页 header 广告位轮播图功能实现2.…...
Ubuntu 22.04 安装MySql
MySQL是非常常用的关系型数据库,无论是大厂还是小厂,都有它的身影。最大的优点是免费,安装起来也比较简单。 MySQL的架构 画了个简图,描述了下MySQL的架构。 其中的比较有趣的点在于连接池和存储引擎。连接池缓存了数据库和客户端的TCP连接,以减少建立连接的开销。存储引…...
Centos常用命令整理,常用的比较全了
目 录 1、更改文件拥有者 2、修改权限 3、修改⽂件⽇期 4、链接⽂件 5、⽇期操作 6、显⽰⽇历 7、显⽰⽂件头部 8、显⽰⽂件尾部 9、显⽰⽤户标识 10、查看当前登录的⽤户 11、显⽰都谁登录到机器上 12、显⽰当前终端上的⽤户名 13、寻找⽂件…...
专业137总分439东南大学920专业基础综合考研经验电子信息与通信电路系统芯片
我本科是南京信息工程大学,今年报考东南大学信息学院,成功逆袭,专业137,政治69,英语86,数一147,总分439。以下总结了自己的复习心得和经验,希望对大家复习有一点帮助。啰嗦一句&…...
C++总结笔记
1. 简介 1、面向对象程序设计 面向对象的四大特性 1)封装 2)继承 3)多态 4)抽象 2、标准库 标准C由三个部分组成 1)核心语言:提供了所有的构件块 2)C标准库:提供了大量的函…...
C++的std--ranges算法自定义比较器与等价类划分在分组操作中的运用
C20引入的std::ranges库为算法操作带来了声明式编程的革新,其中自定义比较器与等价类划分在分组操作中展现出强大的灵活性。通过自定义谓词控制元素分组逻辑,开发者能高效处理复杂数据结构,如数据库查询结果分类或日志事件聚合。本文将深入探…...
NetCoreServer高级特性揭秘:自定义协议、会话管理和扩展机制
NetCoreServer高级特性揭秘:自定义协议、会话管理和扩展机制 【免费下载链接】NetCoreServer Ultra fast and low latency asynchronous socket server & client C# .NET Core library with support TCP, SSL, UDP, HTTP, HTTPS, WebSocket protocols and 10K c…...
【手把手教学】Tesseract-OCR图片文字识别从安装到实战
1. Tesseract-OCR简介与安装准备 第一次接触图片文字识别技术时,我和很多人一样觉得这是个遥不可及的黑科技。直到发现了Tesseract-OCR这个开源工具,才发现原来OCR技术可以如此亲民。Tesseract最初由HP实验室开发,后来由Google接手维护&#…...
从零实践:个人电脑上运行26M小参数GPT的预训练、微调与推理全流程指南
1. 为什么选择26M小参数GPT 在个人电脑上训练大语言模型听起来像天方夜谭,但26M参数的GPT模型让这成为可能。这个参数规模比主流的数十亿参数模型小了上千倍,但保留了GPT的核心架构和训练流程。我实测下来,在消费级显卡(如RTX 306…...
从‘它又挂了’到‘稳如老狗’:我是如何用Prometheus+Grafana给自家小破站做监控的
从“它又挂了”到“稳如老狗”:我是如何用PrometheusGrafana给自家小破站做监控的 凌晨三点,手机突然响起钉钉告警——这已经是本周第三次被“502 Bad Gateway”的提示音吵醒。揉着惺忪睡眼重启Nginx时,我突然意识到:这个用业余时…...
打造高效离线文字识别系统:Umi-OCR插件深度应用指南
打造高效离线文字识别系统:Umi-OCR插件深度应用指南 【免费下载链接】Umi-OCR_plugins Umi-OCR 插件库 项目地址: https://gitcode.com/gh_mirrors/um/Umi-OCR_plugins 在数字化办公与信息处理领域,离线OCR技术正成为保护数据隐私与提升处理效率的…...
WPF装饰器(Adorner)的妙用:打造可交互的矩形标注控件(附避坑指南)
WPF装饰器实战:构建智能矩形标注控件的完整指南 在图像处理、数据标注或UI设计工具中,矩形标注功能几乎是标配需求。想象一下这样的场景:用户双击图片生成标注区域,通过拖拽调整位置,自由缩放大小,所有操作…...
PredRNN++:从单元到系统,逐层拆解与实战解析
1. PredRNN核心单元拆解 PredRNN作为视频预测领域的里程碑模型,其核心创新在于Causal LSTM和GHU两大单元的设计。我们先从代码层面看看它们如何运作。 1.1 Causal LSTM的三明治结构 打开CausalLSTMCell.py文件,你会发现这个单元像三明治一样分为三层&…...
别再被机械按键坑了!FPGA消抖模块Verilog代码保姆级解析(附仿真波形)
FPGA按键消抖实战:从原理到Verilog实现的深度解析 刚接触FPGA开发的朋友们,一定遇到过这样的困扰——明明按下了按键,系统却像没反应一样;或者只按了一次,设备却识别出多次触发。这背后隐藏着一个看似简单却至关重要的…...
3步解锁:让老旧电脑流畅运行Windows 11的终极精简方案
3步解锁:让老旧电脑流畅运行Windows 11的终极精简方案 【免费下载链接】tiny11builder Scripts to build a trimmed-down Windows 11 image. 项目地址: https://gitcode.com/GitHub_Trending/ti/tiny11builder 在数字时代,系统性能直接影响工作效…...
