将资源的任何更改恢复到 kubectl.kubernetes.io/last-applied-configuration

Whi*_*cal 1 kubernetes kubectl

是否有任何命令可以恢复到资源上以前的配置?

例如,如果我以声明方式创建了服务类资源,然后手动更改端口,如何丢弃实时更改,以便重新应用创建资源的原始定义?

是否有对以前应用的配置的任何跟踪?如果我们可以说:将我的服务重新配置为当前的应用配置 - 2 版本,那就更好了。

编辑:我知道部署有推出选项,但我想知道一种明智的机制

uli*_*tko 7

既然你明确询问last-applied-configuration...

\n

很简单的:

\n
kubectl apply view-last-applied deployment/foobar-module | kubectl apply -f -\n
Run Code Online (Sandbox Code Playgroud)\n

鉴于apply通过 stdin 进行如此灵活的组合 \xe2\x80\x94 没有专用的kubectl apply revert-to-last-applied子命令,因为它是上面简单管道的冗余重新实现。

\n

人们还可能怀疑,由于复杂的原因,这样的revert内置程序永远不可能变得完美(正如 Nick_Kh 所注意到的)。名为的子命令revert引起了用户的很多期望,但它永远无法实现。

\n

所以我们得到了一个简化的近似值:aspec.bak保存在资源注释中,准备好重新apply编写。

\n