Kubernetes 当我们将状态集升级到更新的映像版本时会发生什么? 我有两个图像名为ABC:1.1的状态集副本 否我想将状态集升级到更新版本:ABC:1.2

Kubernetes 当我们将状态集升级到更新的映像版本时会发生什么? 我有两个图像名为ABC:1.1的状态集副本 否我想将状态集升级到更新版本:ABC:1.2,kubernetes,kubectl,kubernetes-pod,kubelet,kubernetes-statefulset,Kubernetes,Kubectl,Kubernetes Pod,Kubelet,Kubernetes Statefulset,ImagePullPolicy设置为始终 另外,假设我已经部署了版本为ABC:1.2的my statefulset,然后返回到ABC:1.1 现在我正试图将它升级到ABC:1.2版 1.2(一旦部署)==>返回到版本(1.1)==>现在想再次升级到(1.2) 问题1)我的问题是,我的整个形象是否会再次从Docker回购中恢复? 或者只提取丢失的层 问题2)ImagePullPolicy是强制整个图像拉取还是仅强制缺少层 请帮助我理解这一点。对这两个问题的回答是,整个图像将再次被提取。如果存在任何

ImagePullPolicy设置为始终

另外,假设我已经部署了版本为ABC:1.2的my statefulset,然后返回到ABC:1.1 现在我正试图将它升级到ABC:1.2版

1.2(一旦部署)==>返回到版本(1.1)==>现在想再次升级到(1.2)

问题1)我的问题是,我的整个形象是否会再次从Docker回购中恢复? 或者只提取丢失的层

问题2)ImagePullPolicy是强制整个图像拉取还是仅强制缺少层


请帮助我理解这一点。

对这两个问题的回答是,整个图像将再次被提取。如果存在任何层,则在拉取后会显示
层已存在
。只需提示您总是提取图像,而不是特定的层。

您可以使用以下命令检查部署过程中发生的详细信息:

kubectl rollout status deploy/ABC

kubectl rollout history deploy/ABC

kubectl describe deploy ABC

谢谢你的回答。我还可以得出这样的结论:如果我的新图像尺寸更小,那么升级所需的时间也会更少,因为图像提取时间会减少?还有一件事。除了升级,如果我的Pod被删除/重新启动,那么会发生什么?@himanshusingh部署文件中定义的映像将被拉入。好的,明白了。您是否有任何相同的参考,这将非常有用。您可以在kubernetes中搜索滚动策略。你会明白的