Helm简化了应用程序的定义、安装和升级,使得Kubernetes集群的应用管理更为高效且便捷。ACK在控制台上集成了Helm,提供了cert-manager、ack-fluid等常见的第三方应用。
Helm介绍
Helm是一个用于在Kubernetes集群中进行应用管理的开源工具,它提供了统一的应用打包方式,同时支持版本控制,降低了应用分发和部署的复杂性。您可参照下方的表格,了解Helm的基本概念,更多信息请参见官方文档。
Helm概念 | 说明 |
Chart | 一个Helm包,其中包含了运行一个应用所需要的镜像、依赖和资源定义等,还可能包含Kubernetes集群中的服务定义,类似Homebrew中的formula、APT的dpkg或者Yum的rpm文件。 |
Release | 在Kubernetes集群上运行的Chart的一个实例。在同一个集群上,一个Chart可以安装多次。每次安装都会创建一个新的Release。例如,如果一个MySQL Chart想在服务器上运行两个数据库,可以将此Chart安装两次,并在每次安装中生成自己的Release以及Release名称。 |
前提条件
已创建ACK集群。具体操作,请参见创建ACK托管集群。
已使用kubectl连接集群并安装Helm CLI。具体操作,请参见获取集群KubeConfig并通过kubectl工具连接集群、Installing Helm。
通过控制台部署应用
ACK提供了一些常见应用的Chart,您可以在控制台使用这些Chart安装应用。
登录容器服务管理控制台,在左侧导航栏单击集群。
在集群列表页面,单击目标集群名称,然后在左侧导航栏,选择
。在Helm页面,单击创建。参考如下信息完成基础信息配置。
参数
说明
示例值
应用名
Release在集群内的名称。
demo-app
命名空间
Release部署的命名空间。
default
来源
Chart的来源:ACK应用市场或ACR企业版。
应用市场
Chart
安装应用所使用的Chart。
cert-manager
单击面板左下方的下一步,然后选择最新的Chart 版本。确认Chart内容后,单击面板下方的确定。
通过控制台管理已安装的应用
您可以在Helm页面对已安装的Release进行操作:
单击Release的发布名称或详情,可查看该Release的信息,例如资源、YAML文件、历史版本等信息。
单击更新,在更新发布面板中修改相关参数,然后单击确定,可对该Release进行更新。
单击删除,在删除应用对话框中,选中清除发布记录,然后单击确定,删除Release以及包含的Service、Deployment等资源。
重要若不选中清除发布记录,此时该Release会保留在发布列表中,后续在部署应用时,可能会出现重名冲突,导致应用部署失败。
通过Helm CLI使用第三方库部署应用
如果ACK提供的Chart无法满足您的需求,您可参照以下示例,通过Helm CLI使用第三方库部署应用。
helm repo add <REPO_NAME> <REPO_URL> # 添加Chart存储库,REPO_NAME替换为Chart存储库的名称,REPO_URL替换为存储库的地址
helm repo update # 更新存储库信息
helm install <APP_NAME> <REPO_NAME>/<CHART_NAME> # 安装应用,APP_NAME替换为一个应用的名称,CHART_NAME替换为Chart的名称
Helm更多命令请参见Using Helm。
相关文档
如需对集群中的Helm进行升级,请参见将Helm V2升级迁移至Helm V3。
您可以通过容器镜像服务ACR保存并分发您的Chart,具体操作请参见推送和拉取Helm Chart。