最近我们在Kubernetes Engine(GCP)上创建了一个集群,我们开始注意到它上面有一个奇怪的行为。每天节点都会停止并在一天中的某个时间自动重新创建,使应用程序几分钟不可用。
如何在Stackdriver仪表板中显示事件:
为了解问题的根本原因,我分析了Stackdriver中的日志,并将今天发生的事件作为参考( 2017-12-19 12:22 pm < /强>)。
群集日志:
与事件相关的最近条目仅在 12:26 pm (可能是群集回来的那一刻)。
节点日志:
实例日志似乎也没有太大帮助。最接近事件的记录只出现在 12:23 pm (也是在实例开始回来之后)。
有没有人曾经遇到过这种情况,或者有任何想法我们如何更好地调试它并发现造成这种行为的原因?
事件的原因显然没有在Stackdriver日志中显示。
答案 0 :(得分:2)
所描述的行为与preemptible nodes in GKE的行为非常相似(最多24小时)。
如果您不确定您的节点是否可以抢占,请检查GCP WebUI(我的示例,检查“Preemptible nodes”行),或通过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集群名称。