你可以看下这篇文章,希望对你有帮助。 标题:【通过容器镜像服务企业版的 Helm Chart 功能,您可以高效便捷地托管和分发 Kubernetes 集群内的各种资源。在安装并配置 Helm Chart 客户端和配置企业版实例之后,您才可以推送和拉取 Chart。 】 地址:https://www.alibabacloud.com/help/zh/doc-detail/128090.htm
通过容器镜像服务企业版的 Helm Chart 功能,您可以高效便捷地托管和分发 Kubernetes 集群内的各种资源。在安装并配置 Helm Chart 客户端和配置企业版实例之后,您才可以推送和拉取 Chart。 背景信息 Kubernetes 提供了统一模式的 API,能以 YAML 格式的文件定义 Kubernetes 集群内的资源。这些资源的种类繁多,例如无状态应用的部署 Deployment、有状态应用的部署 StatefulSet、配置项 ConfigMap 等。
在这个基于 YAML 文件的软件交付体系不断完善过程中,云原生社区衍生了一个更高维度的概念及其实现工具,即 Chart 和 Helm。
Chart 是一系列 Kubernetes 集群内资源描述文件的组合,一个 Chart 可以是一个 WordPress 和 MySQL 的组合,也可以是一个 etcd 集群的组合。
Helm 是一个命令行程序,用于管理这些 Chart,以及其运行态 Release。
容器镜像服务企业版支持 v2 版本的 Chart 安全托管,帮助您在云上便捷管理云原生资产。在企业版实例概览页开启 Charts 组件,待组件状态变为运行中,即可开始托管 Chart 类型仓库。 开启Chart 安装并配置客户端
从官方下载需要的Helm Chart版本。
说明 请确保客户端为 v2 及以上版本,建议使用 v2.14.2 版本。可以通过执行 helm version -c 命令查看客户端版本。
# 解压缩
tar -zxvf helm-v2.14.2-linux-amd64.tgz
# 移动至指定位置
mv linux-amd64/helm /usr/local/bin/helm
安装 Helm 插件。
说明 在安装 Helm 插件前,需要预先安装 git。
# 安装 Helm 插件,请注意预先安装 git
helm plugin install https://github.com/AliyunContainerService/helm-acr
# 初始化
# 1. 如果你当前在容器服务集群节点上,默认已经有初始化完成的 tiller ,只需要初始化 client。可以使用 skip-refresh 命令避免访问 google Chart 源:
helm init --client-only --skip-refresh
# 2. 如果你当前在自建的 Kubernetes 集群节点上,并且希望避免访问 google Chart 源,可以使用以下命令:
helm init --skip-refresh
配置企业版实例
配置访问凭证
在企业版实例管理的访问凭证页面,通过设置固定密码或者临时密码作为访问凭证的密码,控制台右侧获取访问凭证的账号名。这对账号名与密码将作为后续 Helm Chart 的访问凭证。
获取凭证
配置访问控制策略
在企业版实例管理的访问控制页面,可以打开公网访问或者添加指定 VPC 打开专有网络访问,保证后续 Helm Chart 的上传。
添加VPC打开公网访问入口
配置访问格式
在命名空间 namespace 下,创建一个 Chart 仓库 repository,如下图所示:配置访问格式
当命名空间开启了自动创建仓库功能后,无需提前在界面创建 Chart 仓库,可直接在终端 Helm Push Chart 仓库。
企业版中 Chart 仓库的格式为 <实例名称>-chart.<Region ID>.cr.aliyuncs.com/<命名空间>/<Chart 仓库名>,Chart 仓库的版本为<Chart 名称>-<版本号>。
配置本地仓库映射
需要指定一个本地仓库名称,映射到线上的某一个命名空间下的某一个 Chart 仓库。
export HELM_REPO_USERNAME='<企业版实例访问凭证中账号>';
export HELM_REPO_PASSWORD='<企业版实例访问凭证中密码>';
helm repo add <本地仓库名称> acr://<实例名称>-chart.<Region ID>.cr.aliyuncs.com/<命名空间>/<Chart 仓库> --username ${HELM_REPO_USERNAME} --password ${HELM_REPO_PASSWORD}
配置本地仓库映射
推送 Chart
helm create <Chart 名称>
helm push <Chart 名称> <本地仓库名称>
helm push <Chart 名称>-<Chart 版本>.tgz <本地仓库名称>
推送chart
返回企业版实例控制台,可以看到 Chart 仓库新增一个版本,如下图所示: 版本列表 拉取 Chart
helm repo update
helm fetch <本地仓库名称>/<Chart 名称> --version <Chart 版本>
helm install -f values.yaml <本地仓库名称>/<Chart 名称> --version <Chart 版本>
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。