Think twice before using Helm

查看原文

本文作者的一家之言是使用 Helm 之前需要三思,列举了几样 Helm 的缺点,想使用 Helm 的同学一定要想清楚怎么克服这些困难。

  • 它貌似没带来什么价值。
  • 需要额外在 k8s 的 auth/access control 外再加一层 tiller 的 auth/access control, 负担大。
  • 模板工具其实可以用 k apply --dry-run 来做类似的事情
  • Kubernetes Secrets 的管理没有变的更简单。
  • Helm 无法做 Infrastructure 级别的组件管理,例如 kibe-dns, cni provider, cluster autoscaler.
  • Helm state 存在 ConfigMap 里面,有 1MB 的限制
  • 太经常会把东西升挂,error handling 也不友好,很可能最后要 helm delete —purge 清干净再来一遍
  • Tiller 没有 HA,有单点故障的风险。
  • 下一代?可能不走 CS 模型,不需要部署 Tiller,内嵌 Lua 脚本。但是还是在 Charts 里面加了不少复杂度进去。

衍生思考:我觉得 helm 带来的价值至少有: yaml 动态渲染,社区维护的模块。基本同意他列举的问题。