djk*_*i97 0 kubernetes kubernetes-helm
好吧,您可以轻松安装应用程序,但是与 Kubernetes 中的普通 .yaml 文件相比,好处在哪里?有人可以给我举一个例子,说明使用 helm 很有用,以及为什么普通的 Kubernetes 还不够吗?另外,helm 和 Kubernetes 的对抗也不错。
使用 Helm,一组资源(读作 Kubernetes 清单)在逻辑上定义了一个版本 - 您需要将这组资源视为一个单元。
一个简单的例子说明了为什么这是必要的:想象一个应用程序包总共有 10 个 kubernetes 对象。在下一个版本中,由于应用程序中的更改,现在不再需要 1 个资源 - 总共有 9 个对象。我将如何推出这个新版本?如果我只是这样做kubectl apply -f new_release/,就不会删除不再需要的 1 个资源。这意味着,我无法滚动不需要手动干预的升级。Helm 负责处理这个问题。
Helm 还保留发布历史记录及其确切的资源集,因此您可以使用单个命令回滚到以前的版本,以防出现问题。
此外,您经常需要的事情之一是模板化您的资源 - 假设您想要部署同一个应用程序的多个实例。你会怎么办?
Kubernetes 没有提供很多选项来解决这个问题 - 一种解决方案是使用不同的命名空间:不要在清单中指定命名空间,而是在命令中给出它,例如kubectl apply -n my_namespace -f resources/,但是如果您想部署其中两个实例怎么办在同一个命名空间上?然后您需要某种名称/标签/选择器模板,Helm 会处理这个问题。
这些是 Helm 处理的用例的一些示例。
| 归档时间: |
|
| 查看次数: |
979 次 |
| 最近记录: |