Helm添加一个chart仓库

半兽人 发表于: 2023-01-07   最后更新时间: 2023-01-07 16:19:07  
{{totalSubscript}} 订阅, 655 游览

初始化

当已经安装好了Helm之后,可以添加一个 chart 仓库。从 Artifact Hub 中查找有效的Helm chart仓库。

helm repo add bitnami https://charts.bitnami.com/bitnami

添加完成后,可以看到可以被您安装的charts列表:

$ helm search repo bitnami

NAME                                 CHART VERSION    APP VERSION      DESCRIPTION
bitnami/bitnami-common               0.0.9            0.0.9            DEPRECATED Chart with custom templates used in ...
bitnami/airflow                      8.0.2            2.0.0            Apache Airflow is a platform to programmaticall...
bitnami/apache                       8.2.3            2.4.46           Chart for Apache HTTP Server
bitnami/aspnet-core                  1.2.3            3.1.9            ASP.NET Core is an open-source framework create...
# ... and many more

安装Chart示例

您可以通过 helm install 命令安装chart。 Helm可以通过多种途径查找和安装chart, 但最简单的是安装官方的bitnami charts。

$ helm repo update              # 确定我们可以拿到最新的charts列表
$ helm install bitnami/mysql --generate-name
NAME: mysql-1612624192
LAST DEPLOYED: Sat Feb  6 16:09:56 2021
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES: ...

在上面的例子中,bitnami/mysql这个chart被发布,名字是 mysql-1612624192

您可以通过执行 helm show chart bitnami/mysql 命令简单的了解到这个chart的基本信息。 或者您可以执行 helm show all bitnami/mysql 获取关于该chart的所有信息。

每当您执行 helm install 的时候,都会创建一个新的发布版本。 所以一个chart在同一个集群里面可以被安装多次,每一个都可以被独立的管理和升级。

关于版本发布

通过Helm您可以很容易看到哪些chart被发布了:

$ helm list
NAME                NAMESPACE    REVISION    UPDATED                                 STATUS      CHART          APP VERSION
mysql-1612624192    default      1           2021-02-06 16:09:56.283059 +0100 CET    deployed    mysql-8.3.0    8.0.23

helm list (或 helm ls) 命令会列出所有可被部署的版本。

卸载一个版本

可以使用 helm uninstall 命令卸载你的版本

$ helm uninstall mysql-1612624192
release "mysql-1612624192" uninstalled

该命令会从 Kubernetes 卸载 mysql-1612624192,它将删除和该版本相关的所有相关资源(service、deployment、 pod等等)甚至版本历史。

如果您在执行 helm uninstall 的时候提供 --keep-history 选项,Helm将会保存版本历史。 您可以通过命令查看该版本的信息

$ helm status mysql-1612624192
Status: UNINSTALLED
...

因为 --keep-history 选项会让helm跟踪你的版本(即使你卸载了他们),所以你可以审计集群历史甚至使用 helm rollback 回滚版本。

相关链接

https://helm.sh/zh/docs/intro/quickstart/#%e5%88%9d%e5%a7%8b%e5%8c%96

更新于 2023-01-07

查看Helm更多相关的文章或提一个关于Helm的问题,也可以与我们一起分享文章