我正在考虑一种解决方案,可以在不真正发布内容的情况下对时间表进行滚动更新。我想通过kubectl补丁对ENV变量进行更改,以启动GKE中的更新。
上下文是,我们有不进行垃圾收集的容器,以及临时修复和最简单的前进路径,我们可以在夜间频繁地循环使用pod。
我们天真的方法是通过我们的构建管道来安排,但似乎有很多活动部件。
我还没有看过云函数,但我相信有一个API可以做到这一点,我倾向于使用云函数实现自动化。
或者已经有GKE解决方案可以做到这一点了吗?
这个问题还有其他解决办法吗?
我知道AWS的ec2为ASG提供了这个功能,我一直在寻找同样的东西,所以我不想在清单上做一个糟糕的ENV var更改。
我可以想到两种可能性:
- Cronjobs。您可以使用CronJobs在特定时间或间隔运行任务。建议用于自动任务,如备份、报告、发送电子邮件或清理任务。更多详细信息请点击此处
- 带有CloudBuild的CI/CD。当您将更改推送到存储库时,Cloud Build会自动构建容器并将其部署到GKE集群