【问题标题】:What happens when we upgrade a Statefulset to a newer image Version?当我们将 Statefulset 升级到更新的镜像版本时会发生什么?
【发布时间】:2020-12-23 11:08:36
【问题描述】:
  1. 我有 2 个状态集副本,图像名称为:ABC:1.1
  2. 不,我想将 statefulset 升级到更新的版本:ABC:1.2

ImagePullPolicy 设置为 always

还假设一旦我已经使用版本 ABC:1.2 部署了我的 statefulset,然后又回到 ABC:1.1 现在我正在尝试将其升级到版本 ABC:1.2。

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

Q1) 我的问题是,我的整个图像会再次从 Docker repo 中提取吗? 还是只会拉取缺失的图层?

Q2) ImagePullPolicy 是强制拉取整个图像还是只是缺少图层?

请帮助我理解这一点。

【问题讨论】:

    标签: kubernetes kubectl kubernetes-pod kubelet kubernetes-statefulset


    【解决方案1】:

    你的两个问题的答案是整个图像将被再次拉出。如果存在任何层,它会在拉动后显示layer already exists。只是提示你总是拉图像而不是特定层。

    【讨论】:

    • 感谢您的回答。我是否还可以得出结论,如果我的新图像尺寸较小,那么升级也将花费更少的时间,因为图像拉取时间会减少?
    • 还有一件事。如果我的 Pod 被删除/重新启动,除了升级之外,还会发生什么?
    • @himanshusingh 你在部署文件中定义的镜像将被拉取。
    • 好的,知道了。你有相同的参考吗,会很有帮助的。
    • 可以在kubernetes中搜索rolling strategy。你会得到它
    【解决方案2】:

    您可以使用以下命令查看部署中发生的情况的详细信息:

    kubectl rollout status deploy/ABC
    
    kubectl rollout history deploy/ABC
    
    kubectl describe deploy ABC
    

    【讨论】:

      猜你喜欢
      • 2018-05-05
      • 2020-12-23
      • 2011-12-20
      • 1970-01-01
      • 2010-12-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多