介绍
Helm是 Kubernetes 的包管理器,它允许开发人员和网络管理员员更轻松地在 Kubernetes 集群上配置和部署应用程序。
Helm 包称为charts,它们包含资源定义模板,这些模板可以部署和配置给定的应用程序,用户只需付出最少的工作。
使用模板,你可以通过传入变量定义来管理图表、其设置和行为,而无需修改实际图表。Helm 自动管理自定义资源定义以及对已部署定义的修改。具有可能自定义的已部署 chart 称为发布。
在本教程中,你将设置 Helm 3 并学习如何安装、升级、回滚和管理图表和版本。你还将学习创建和打包自己的图表,以及设置图表存储库,其中托管你可以立即安装的图表。
第 0 步 - 创建k8s环境
本教程采用CSDN 开发云提供了k8s学习环境,一键创建了k8s环境。CSDN 开发云k8s 学习环境按小时付费使用,每小时仅 0.1元。学习完毕后可以释放主机资源即会停止计费。
点这里一键拥有 k8s 环境。
你也可以使用其他方法创建自己的k8s集群。
点击【立即购买】后,几分钟后你可以拥有自己的k8s集群。
- 安装在本地计算机上的
kubectl
命令行工具,配置为连接到你的集群。kubectl
你可以在官方文档中阅读有关安装的更多信息。
你也可以使用 ssh 终端工具登录k8s集群主机,在服务器的终端中进行下面的操作
你可以使用以下命令测试你的连接性:
kubectl cluster-info
如果你没有收到任何错误,则你已连接到集群。如果你使用访问多个集群kubectl
,请确保通过运行以下命令来验证你是否选择了正确的集群上下文:
kubectl config get-contexts
以上命令列出可用的配置:
CURRENT NAME CLUSTER AUTHINFO NAMESPACE
* default default default
在这里,星号 ( *
) 表示我们已连接到default
集群。要切换集群,请运行:
kubectl config use-context <context-name>
当你连接到正确的集群后,继续执行步骤 1 开始安装 Helm。
第 1 步 — 安装 Helm 3
在本节中,你将使用官方提供的 shell 脚本安装 Helm 3 。
首先切换到/tmp
,你将在其中运行以下命令来存储安装脚本:
cd /tmp
使用以下命令下载脚本:
curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3
你可以使用文本编辑器查看get_helm.sh
内容以确保其安全。
通过以下命令将其权限设置可执行:
chmod +x get_helm.sh
最后,运行它来安装 Helm 3:
./get_helm.sh
你将收到类似于以下内容的输出:
Downloading https://get.helm.sh/helm-v3.9.0-linux-amd64.tar.gz
Verifying checksum... Done.
Preparing to install helm into /usr/local/bin
helm installed into /usr/local/bin/helm
你的机器上安装了 Helm 3。现在你将了解charts存储库以及如何使用它们
第 2 步 — 设置图表存储库
Helm charts 存储在charts存储库中,任何人都可以托管。默认情况下,Helm 3 没有预配置任何存储库。以前版本的 Helm 包括一个中央charts存储库;然而,Helm 3 的设计演变为charts开发人员管理他们自己的存储库,从而允许更多的自由和更快的发布。这意味着对于你希望使用的每个chart,你需要确保将托管存储库添加到你的 Helm 安装中。
为了帮助你找到正确的存储库,你可以使用ArtifactHub.io ,这是一个由CNCF管理的开源网站,对Helm charts及其存储库进行分类。它还跟踪其他 CNCF 项目使用的流行和有用的图表,因此它不同于stable
以前版本的 Helm 使用的存储库。对于常见的项目,例如 Nginx ingresses 或 monitoring 工具,它是一个很好的选择。
你可以通过主页搜索要安装的chart。搜索nginx
将显示与其相关的所有chart。