Helm 回滚命令在子图表场景中回滚整个版本

Helm rollback commands rollback the entire release in sub-chart scenario

假设我们有 Helm 图表 A,其中包含一个子图表 B。让我们执行以下操作顺序。

  1. helm install test /path/to/A。它安装子图表 B 以及相同的 Helm release 名称,即 test
  2. 做一些影响两个图表的配置更改。例如更改一些环境变量。
  3. helm upgrade test /path/to/A。升级图表 AB
  4. 下所有受影响的 pods
  5. 由于某些原因,我只想回滚 sub-chart B 上所做的新更改,但保留 A 上的新更改。
  6. helm rollback test.

现在,第 5 步回滚图表 A 更改。现在,问题是,我可以将回滚限制为图表 B 吗?可以吗

这是不可能的。父图表 A 和子图表 B 是同一 Helm 版本的一部分,一旦安装,您只能升级或回滚整个版本,不能升级或回滚它的片段。

如果您将部署配置保留在源代码管理中,则可以像对任何其他文件进行部分还原一样,对每个环境的配置文件进行部分还原,然后 helm upgrade再次回到“新”(部分还原)配置。