Helm 是 Kubernetes(k8s)服务编排实施的标准,它提供了多种功能来支持 Kubernetes 的服务编排。以下是对 Helm 的详细介绍:
一、定义与功能
- Helm 是 Kubernetes 的包管理器,主要用于管理 Chart 包。 Chart 包中包含一系列 yaml 格式的
- Kubernetes 资源定义文件以及资源的配置。
- Helm 通过命令行工具,支持 Kubernetes 应用 Chart 的创建、打包、发布和管理。
二、关键组件
- Chart:代表一个 Helm 包,包含了在 Kubernetes 集群中运行应用程序、工具或服务所需的所有 yaml 格式的资源定义文件。
- Repository(仓库):存放和共享 Helm Chart 的地方。
- Release(版本):基于Chart的部署实体。一个 Chart 被 Helm 运行后将会生成一个对应的新的 Release,然后将在 Kubernetes 中创建出真正运行的资源对象,它是一个应用级别的版本管理。
三、文件结构
Helm 中主要包含两类文件:模板文件和配置文件。
- 模板文件:通常有多个,基于 text/template 模板文件,可将配置文件中的值渲染进模板文件中,最终生成一个可部署的 Kubernetes 的 yaml 格式的资源定义文