舵手版本支持策略
本文档描述了 Helm 和 Kubernetes 之间支持的最大版本偏差。
支持的版本
Helm 版本表示为 x.y.z
,其中 x
是主版本,y
是次版本,z
是修补程序版本,遵循 语义版本控制 术语。
Helm 项目为最新的次要版本维护一个发布分支。根据严重程度和可行性,将适用的修复程序(包括安全修复程序)cherry-pick 到发布分支。更多详细信息可以在 Helm 的发布策略 中找到。
支持的版本偏差
当发布 Helm 的新版本时,它会针对特定版本的 Kubernetes 次要版本进行编译。例如,Helm 3.0.0 使用 Kubernetes 1.16.2 客户端与 Kubernetes 交互,因此它与 Kubernetes 1.16 兼容。
从 Helm 3 开始,假设 Helm 与它编译的 Kubernetes 的 n-3
版本兼容。由于 Kubernetes 在次要版本之间发生了变化,因此 Helm 2 的支持策略略微严格,假设它与 Kubernetes 的 n-1
版本兼容。
例如,如果您使用的是针对 Kubernetes 1.17 客户端 API 编译的 Helm 3 版本,那么它应该与 Kubernetes 1.17、1.16、1.15 和 1.14 安全使用。如果您使用的是针对 Kubernetes 1.16 客户端 API 编译的 Helm 2 版本,那么它应该与 Kubernetes 1.16 和 1.15 安全使用。
不建议将 Helm 与比它编译的版本更新的 Kubernetes 版本一起使用,因为 Helm 不会做出任何向前兼容性保证。
如果您选择将 Helm 与它不支持的 Kubernetes 版本一起使用,那么您将自行承担风险。
请参考下表以确定哪个版本的 Helm 与您的集群兼容。
舵手版本 | 支持的 Kubernetes 版本 |
---|---|
3.14.x | 1.29.x - 1.26.x |
3.13.x | 1.28.x - 1.25.x |
3.12.x | 1.27.x - 1.24.x |
3.11.x | 1.26.x - 1.23.x |
3.10.x | 1.25.x - 1.22.x |
3.9.x | 1.24.x - 1.21.x |
3.8.x | 1.23.x - 1.20.x |
3.7.x | 1.22.x - 1.19.x |
3.6.x | 1.21.x - 1.18.x |
3.5.x | 1.20.x - 1.17.x |
3.4.x | 1.19.x - 1.16.x |
3.3.x | 1.18.x - 1.15.x |
3.2.x | 1.18.x - 1.15.x |
3.1.x | 1.17.x - 1.14.x |
3.0.x | 1.16.x - 1.13.x |
2.16.x | 1.16.x - 1.15.x |
2.15.x | 1.15.x - 1.14.x |
2.14.x | 1.14.x - 1.13.x |
2.13.x | 1.13.x - 1.12.x |
2.12.x | 1.12.x - 1.11.x |
2.11.x | 1.11.x - 1.10.x |
2.10.x | 1.10.x - 1.9.x |
2.9.x | 1.10.x - 1.9.x |
2.8.x | 1.9.x - 1.8.x |
2.7.x | 1.8.x - 1.7.x |
2.6.x | 1.7.x - 1.6.x |
2.5.x | 1.6.x - 1.5.x |
2.4.x | 1.6.x - 1.5.x |
2.3.x | 1.5.x - 1.4.x |
2.2.x | 1.5.x - 1.4.x |
2.1.x | 1.5.x - 1.4.x |
2.0.x | 1.4.x - 1.3.x |