第四章 helm 轻松完爆 chart

目录

1 chart 介绍

2 chart 使用

    2.1 chart 搜索

    2.2 chart 下载

    2.3 chart 自建

    2.4 chart 打包

    2.5 chart 上传

        2.5.1 自建私有仓库

        2.5.2 生成或更新 chart 索引文件

        2.5.3 上传 chart 和索引文件

        2.5.4 更新本地 chart 仓库


1 chart 介绍

        kubernetes(k8s) 管理的对象叫做资源(比如 pod)。helm 作为 k8s 生态工具之一,将互相关联的多个资源统一打包成一个整体,交给 k8s 去运行。这个被打包的整体就叫做 chart。可以把 chart 跟程序的源码包做类比。

        有了 chart,我们操作的对象不再是单个资源,而是实体。比如我们需要一个有负载均衡能力的 web 服务,如果不使用 chart,我们需要写 deployment,service 和 ingress 才可以让集群外部的客户使用。但是如果使用 chart,直接使用一个 install 命令便可以实现相同的功能。


2 chart 使用

2.1 chart 搜索

## helm search repo chart_name(可以只是关键字,比如 nginx)

# helm search repo nginx

2.2 chart 下载

## helm pull chart_name(名称须具体,例 google/nginx-ingress。不能只是关键字,否则下载不到 )

# helm pull google/nginx-ingress

2.3 chart 自建

        除了从远程 helm 仓库中获取第三方 chart 外,你也可以创建自己的 chart。

# helm create mychart

2.4 chart 打包

        如果你想上传自建的 chart 到私有仓库中去,需要先将自建的 chart 打包。

# helm package mychart

2.5 chart 上传

        上传 chart 需要 4 个步骤:

        1)自建私有仓库

        2)生成或更新 chart 索引文件

        3)上传 chart 和索引文件

        4)更新本地 chart 仓库

2.5.1 自建私有仓库

        关于如何创建私有仓库,可以参考第三章内容。

2.5.2 生成或更新 chart 索引文件

# helm repo index /root/helm/repo

        索引文件 index.yaml 内容如下,由内容可知,已经更新了准备上传的 chart 信息。

2.5.3 上传 chart 和索引文件

        登录私有仓库,上传 chart 和索引文件 index.yaml。

2.5.4 更新本地 chart 仓库

# 更新本地 chart 仓库,跟远程仓库的 chart 保持同步

# helm repo update

        更新本地 chart 仓库之后,就可以检索到刚上传的自定义 chart 了。

        自此,整个 helm chart 被轻松完爆。

猜你喜欢

转载自blog.51cto.com/14625168/2455533