Helm的历史规模是否受到限制?

时间:2019-01-02 22:09:23

标签: kubernetes kubernetes-helm

命令helm history打印一个发行版的过去修订列表。此历史记录的大小是否有限制?即数字n,这样如果有n + 1个修订版本,那么第一个修订版本将不再可用?我知道max命令的helm history标志会限制返回列表的长度,因此可以等效地问这个问题,因为:max标志是否有限制它的价值?

这是在要执行helm rollback的情况下-该命令需要修订,并且我想确认Helm忘记旧修订永远不会有问题。

谢谢

2 个答案:

答案 0 :(得分:3)

是的。它确实有一个限制,如果您查看source code(也是here),就会发现它在Golang中被定义为int32

然后,如果查看int32文档中的内建类型,您会发现它的范围是-21474836482147483647。理论上,您可以在helm命令行上将--max指定为正数,因此2147483647是您的限制。 (令人惊讶的是,我看不到int32的绝对值是在哪里生成的)

releaseInfo结构占用内存,因此,如果发布的版本很多,则会遇到限制,具体取决于系统上有多少内存。

答案 1 :(得分:0)

在 helm 3 中。除非您指定了最大历史记录,否则默认值为 10。

例如使用命令 --history-max 进行 helm 升级: https://helm.sh/docs/helm/helm_upgrade/

--history-max int 限制每个版本保存的最大修订数。使用 0 表示没有限制(默认 10)