Helm Chart仓库
操作场景
容器镜像服务企业版支持托管Helm Chart。您可以在同一个命名空间内同时管理容器镜像和Helm Chart,实现在业务项目内同时使用容器镜像和Helm Chart。
背景信息
Kubernetes提供了统一模式的API,能以YAML格式的文件定义Kubernetes集群中的资源,包括Pod、Service、Deployment、StatefulSet、Job等等。这些资源种类繁多,且分散的kubernetes应用配置文件难以管理、编辑和更新,因此云原生社区衍生了一个更高维度的概念及其实现工具,即Chart和Helm。
- Chart是描述相关的一组Kubernetes集群内资源的文件集合。
- Helm是一个命令行程序,用于管理这些Chart,以及其运行态Release。
约束与限制
Helm版本必须为 3.7.0 及版本以上。
使用Helm客户端上传及下载Helm Chart
容器镜像服务企业版支持通过Helm客户端管理Helm Chart,允许用户在本地终端直接推送、下载和更新Chart包,实现与Kubernetes集群的无缝集成
- 执行以下命令安装Helm 3:
curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 chmod 700 get_helm.sh ./get_helm.sh
- 验证安装:
helm version
添加Helm仓库
需要将企业版Chart仓库添加为本地Helm客户端的远程仓库。
操作步骤
- 获取长期访问凭证,详见创建长期凭证。
- 执行以下命令添加仓库:
helm repo add {本地仓库名称} https://<命名空间>.swr.<region>.myhuaweicloud.com/chartrepo/<命名空间> --username <AccessKey> --password <SecretKey>- 示例:
helm repo add group https://test-01-2v8iom.swr.cn-east-3.myhuaweicloud.com/chartrepo/group --username 0504186e6a8010e01f3ec00111122a --password <SecretKey>
- 示例:
- 验证添加:
helm repo list
推送Helm Chart
需要将本地Chart包推送至企业版仓库。
操作步骤
- 安装Helm Push插件。
在安装Helm Push插件前,需要预先安装Git。
helm plugin install https://github.com/chartmuseum/helm-push
- 在节点上执行如下命令,创建一个Chart。
helm create [Chart名称]
示例:helm create chart-demo
- 推送Chart:
- 目录方式:helm push [Chart名称] [本地仓库名称]
helm push chart-demo group
- 压缩包方式:helm push [Chart名称]-[Chart版本].tgz [本地仓库名称]
# 压缩Chart文件 tar zcvf chart-demo-1.0.0.tgz chart-demo/ # 上传Chart压缩包 helm push chart-demo-1.0.0.tgz group
- 目录方式:helm push [Chart名称] [本地仓库名称]
下载Helm Chart
需要从企业版仓库下载指定版本的Chart包。
- 更新仓库Chart信息。
helm repo update
- 下载指定版本Chart。
helm pull [本地仓库名称]/[Chart名称] --version [Chart版本]
示例:
helm pull group/chart-demo --version 1.0.0