一个长时间运行的作业 (45h) 被移动到另一个 pod 导致它重新启动。
从日志中我可以看到该作业收到了一个 SIGTERM,然后它在另一个 pod 上重新启动,也可能在另一个节点上重新启动。
在谷歌云中检索到的信息没有帮助。除了 pod 创建之外,页面Yaml
或events
不描述此事件。
作业 YamlcreationTimestamp: 2019-06-15T10:39:25Z
pod YamlcreationTimestamp: 2019-06-17T13:26:25Z
我主要使用具有多个节点的默认配置1.12.6-gke.11
,并且服务器不可抢占。
这是 k8s 的默认行为吗?如果是,我该如何禁用它?
既然你说过你正在使用集群自动缩放,我将假设 pod 被删除是因为集群正在缩小。我们看到了类似的问题,因为我们正在使用 0-扩展的节点池(然后随着作业的添加而扩展)。
仔细研究,我们找到了关于自动缩放器的自动缩放器文档,然后相应地修改了我们的作业:
这是最后一个为我们解决问题的人。我建议以此为起点。