Helm 命令速查表
介绍
Helm 是 Kubernetes 的包管理器,它简化了 Kubernetes 集群中软件的安装和管理。它提供了一种简单的方法来打包、部署和管理 Kubernetes 之上的应用程序。此工具允许开发者创建可重用的图表,这些图表可以与其他人共享,从而更轻松地以一致的方式管理复杂的应用程序。
Helm 包含两个主要组件:Helm 客户端和 Helm 服务器。客户端用于与服务器交互和管理图表,而服务器包含有关可用图表的所有必要信息。
基本的 Helm 命令
Helm Install:安装你的第一个图表
helm install 命令是安装图表的'最基本命令。图表是 Kubernetes 资源的捆绑包,可以使用单个 Helm 命令进行部署。
使用 Helm 安装图表的语法是“helm install [发布名称] [图表名称]”。发布名称可以是您选择的任何名称,它将用作部署的标识符。
helm install [name-of-release] [chart-name]
图表名称应该是您要部署的图表的名称。运行此命令时,Helm 将从其存储库中下载指定的图表并将其安装到您的 Kubernetes 集群中。
Helm Upgrade:更新您的部署
helm upgrade 命令用于将现有部署更新到同一图表的较新版本,或修改已运行发布的某些参数。其语法为“helm upgrade [发布名称] [图表名称]”。
helm upgrade [name-of-release] [chart-name]
此命令使用图表新版本中指定的更改更新所有相应的 Kubernetes 资源。它还支持传递自定义值,允许用户在运行时修改某些模板值。
Helm List:查看已部署的图表
helm list 命令显示当前在您的集群中部署的所有发布。您可以使用此命令根据需要监视和管理您的部署。此命令的语法很简单:“helm list”,它将返回有关每个发布的详细信息,包括它们的名称、状态、版本号等等。
Helm Uninstall:删除现有图表
如果您想从 Kubernetes 集群中删除已部署的应用程序,可以使用 helm uninstall 命令,后跟要删除的发布的名称。例如,“helm uninstall [发布名称]”将删除与该发布关联的所有资源。这有助于确保在删除应用程序后不会留下任何残留资源。
高级 Helm 命令
使用 Helm Repo Add 添加存储库
Helm 提供了一种简单的方法来使用“helm repo add”命令将新存储库添加到您的本地环境。此命令需要两个参数:存储库的名称及其 URL。
添加新存储库后,您可以像它们是默认存储库的一部分一样搜索其中的图表。例如,要添加 Bitnami Helm 图表存储库:
$ helm repo add bitnami https://charts.bitnami.com/bitnami
使用 Helm Repo Update 更新存储库
保持本地图表存储库副本的最新状态非常重要。您可以通过运行“helm repo update”一次更新所有存储库。
此命令将从所有已配置的存储库中获取有关可用包的最新信息。如果只需要更新一个特定的存储库,则可以使用:
$ helm repo update
使用 Helm Search 搜索图表
如果您想了解已配置的存储库中有哪些图表可用,请使用“helm search”。此命令将提供与给定关键字或过滤器匹配的所有可用图表的列表。如果只需要搜索一个特定存储库中的包,则可以使用:
$ helm search -r
使用 Helm Lint 检查图表
从头开始创建图表时,代码检查非常重要。在您的图表上运行“helm lint”可以验证所有内容是否已正确格式化以及图表是否没有错误。
helm lint
此命令可以通过在简单错误成为严重问题之前捕获它们来节省大量时间和精力。要使用它,请导航到图表所在的目录并运行:
$ helm lint
该命令将返回在图表中找到的可能问题的列表。您可以在打包或安装图表之前修复它们。
使用 Helm 命令自定义图表
Helm 命令使用户能够创建和自定义满足其需求的图表。在本节中,我们将探讨四个用于图表自定义的高级 helm 命令:helm create、helm package、helm install --name my-release 和 helm upgrade --set key=value。
helm create helm package helm install --name my-release helm upgrade --set key=value
Helm Create:创建你自己的图表
Helm Create 命令允许用户创建一个新的图表,可以根据需要进行自定义。使用此命令时,Helm 将生成一个新的图表目录,其中包含一些默认文件,例如 Chart.yaml 文件,其中包含图表的元数据。
用户可以通过添加版本控制或提供图表的依赖项来进一步自定义此文件。此外,templates 文件夹包含 Kubernetes 清单,这些清单包含变量的占位符,这些变量可以在安装期间或通过升级轻松替换。
使用 Helm Create 的一个好处是它为从头开始创建图表提供了一个极好的起点。这使得开发人员可以轻松地将他们的应用程序打包为图表,并与可能需要在不同环境中部署这些应用程序的其他人共享。
Helm Package:打包你的图表
Helm Package 命令允许用户将其自定义图表捆绑到其他人可以轻松地在生产环境中部署的存档中。这种存档格式称为“图表包”。打包版本的图表可能包括附加的自定义,例如附加的配置文件或模板。
在实施持续集成/持续部署 (CI/CD) 管道时,Helm 包非常有用,因为它们提供了一种高效的方式来分发应用程序更新。开发人员可以在每个开发阶段自动构建和打包其应用程序代码库到图表中,并最终将这些包提升到生产环境。
Helm Install --name my-release:使用自定义名称安装图表
Helm Install 命令将图表部署到 Kubernetes 集群。此命令支持可选标志“--name”,允许用户为其发布指定唯一名称。安装不同的图表时,此功能非常方便,因为它可以防止发布相互覆盖。
例如,如果您要在同一集群上部署两个不同版本的应用程序,则可以使用“--name”来区分它们。稍后运行“helm list”命令时,两个版本都将按名称分别列出。
Helm Upgrade --set key=value:更新您的发布
Helm Upgrade 命令用于将现有发布更新到较新版本或更改其配置。“--set”标志可用于更新发布的配置文件中自初始部署值以来已更改的值。这些值可能包括密钥和密码。
要使用此功能,您需要在运行 helm upgrade 命令时提供键/值对,以指定这些配置的新值。例如,如果您的应用程序由于安全原因需要在运行时启用 HTTPS 协议,则可以在升级应用程序图表时传递 --set https.enabled=true 作为参数。
结论
在本文中,我们探讨了构成完整的 Helm 命令速查表的 Helm 基本命令和高级命令。我们了解了如何使用基本命令轻松安装、升级、列出和卸载 Helm 图表。
添加存储库、更新存储库、搜索图表和代码检查等高级命令对于根据您的需求自定义图表也至关重要。我们研究了一些重要的技巧和窍门,以帮助您在使用速查表时避免常见的错误。