gpt4 book ai didi

kubernetes - 如何在 kubernetes 中 "deploy"没有任何变化,只是为了让 pod 循环

转载 作者:行者123 更新时间:2023-12-02 11:29:37 25 4
gpt4 key购买 nike

我正在尝试做的事情:

在 Pod 中运行的应用程序会在启动时刷新其数据文件。
每次我想刷新数据时都需要重新启动容器。
(刷新可能需要几分钟,所以我有一个探针检查准备情况。)

我认为是一个解决方案:

我将运行 scheduled job进行一种滚动更新的部署,这将一次一个地取出旧的 Pod 并替换它们,而不会停机。

我被困的地方:

如果我没有更改任何内容,如何触发部署?

此外,我需要能够从预定的工作中做到这一点,显然,所以没有手动编辑..

还有其他方法可以做到这一点吗?

最佳答案

从 kubectl 1.15 开始,您可以运行:

kubectl rollout restart deployment <deploymentname>

这在内部做的是用 kubectl.kubernetes.io/restartedAt 修补部署。注释,以便调度程序根据部署更新策略执行部署。

对于之前版本的 Kubernetes,可以模拟类似的事情:
 kubectl set env deployment --env="LAST_MANUAL_RESTART=$(date +%s)"  "deploymentname"

甚至在单个命名空间中替换所有内容:
 kubectl set env --all deployment --env="LAST_MANUAL_RESTART=$(date +%s)" --namespace=...

关于kubernetes - 如何在 kubernetes 中 "deploy"没有任何变化,只是为了让 pod 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40500377/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com