kubernetes - 集群每天都意外重启

标签 kubernetes google-cloud-platform google-kubernetes-engine

最近我们在 Kubernetes Engine (GCP) 上创建了一个集群,我们开始注意到它有一个奇怪的行为。每天,节点都会在一天中的某个时间自动停止并重新创建,从而使应用程序在几分钟内不可用。

事件在 Stackdriver 信息中心中的显示方式:

enter image description here

为了了解问题的根本原因,我分析了 Stackdriver 中的日志,并引用了今天发生的事件( 2017-12-19 12:22pm )。

集群日志:

与该事件相关的最接近的条目位于 下午 12:26 (可能是集群回来的那一刻)。

enter image description here

节点日志:

实例日志似乎也没有太大帮助。最接近事件的记录仅出现在 12:23 下午 (也在实例开始回来之后)。

enter image description here

有没有人曾经经历过这种情况或知道我们如何才能更好地调试它并发现导致这种行为的原因?

Stackdriver 日志中显然没有显示事件的原因。

最佳答案

所描述的行为与 preemptible nodes in GKE 的行为非常相似。行为(他们最多活 24 小时)。

如果您不确定您的节点是否可抢占,请检查 GCP WebUI(我的示例 enter image description here 下面,检查“可抢占节点”行),或通过 CLI:

$ gcloud compute instances list | grep gke | awk '{print $4}'

如果 CLI 命令将返回“true”,则表示节点是可抢占的(见下文):
$ gcloud compute instances list | grep gke | awk '{print $4}'
true
true
true

注意:如果您在同一个项目下有多个 GKE 集群,则在 grep 之后命令添加您的 GKE 集群名称。

关于kubernetes - 集群每天都意外重启,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47890311/

相关文章:

kubernetes - Kubernetes 服务中使用的端口 0 是什么?

kubernetes - 在kubernetes中的http liveness和readiness探针中传递url查询参数

docker - Docker 集群能在多大程度上降低基础设施成本?

谷歌容器集群作为配置

linux - 通过 SSH 连接时我的密码是什么?

kubernetes - 即使我删除了所有部署,pod 仍会继续创建自己

google-cloud-platform - google colab 与 google 云存储数据导出

kubernetes - 是否可以使用单个 GKE 入口 Controller 拥有多个入口资源

kubernetes - 有没有更简单的方法将序号索引传递给 StatefulSet 环境变量?

docker - 由于网络设置不完整,GKE 节点创建失败