初始化
当已经安装好了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