昨晚,我的Kubernetes集群终止了我的2个节点,我无法弄清楚发生了什么。
kubectl describe nodes
在失败的节点上提供以下内容
Conditions:
Type Status LastHeartbeatTime LastTransitionTime Reason Message
---- ------ ----------------- ------------------ ------ -------
NetworkUnavailable False Tue, 04 Sep 2018 21:57:00 +0000 Tue, 04 Sep 2018 21:57:00 +0000 RouteCreated RouteController created a route
OutOfDisk False Wed, 05 Sep 2018 12:12:33 +0000 Tue, 04 Sep 2018 21:56:27 +0000 KubeletHasSufficientDisk kubelet has sufficient disk space available
MemoryPressure False Wed, 05 Sep 2018 12:12:33 +0000 Tue, 04 Sep 2018 21:56:27 +0000 KubeletHasSufficientMemory kubelet has sufficient memory available
DiskPressure False Wed, 05 Sep 2018 12:12:33 +0000 Tue, 04 Sep 2018 21:56:27 +0000 KubeletHasNoDiskPressure kubelet has no disk pressure
Ready True Wed, 05 Sep 2018 12:12:33 +0000 Tue, 04 Sep 2018 21:57:01 +0000 KubeletReady kubelet is posting ready status
所以我知道OutOfDisk, MemoryPressure and DiskPressure
昨晚某个时刻都处于错误状态,但是是什么导致了这种情况发生?
我也检查了kubectl get events --all-namespaces
,但一无所获。
最后kubectl describe pods
只是给了我这些无用的信息
State: Running
Started: Tue, 04 Sep 2018 22:03:47 +0000
Last State: Terminated
Reason: Error
Exit Code: 1
Started: Thu, 30 Aug 2018 14:36:48 +0000
Finished: Tue, 04 Sep 2018 21:25:16 +0000
有没有办法对此事进行验尸?我想知道的不只是磁盘空间不足。
答案 0 :(得分:1)
我建议您阅读以下文档:https://kubernetes.io/docs/tasks/administer-cluster/out-of-resource/
我想到的第一个想法是检查节点/吊舱的日志。
kubectl logs
答案 1 :(得分:0)
尝试使用此grafana仪表板: https://grafana.com/grafana/dashboards/11802
在节点级别,您可以找到以下详细信息,可以帮助您关联事件:
正常运行时间 节点准备 CPU,内存和节点上的负载。 与PLEG相关的Kubelet错误 按名称空间在节点上的pod数量 内存/磁盘/ PID压力 排名前5位的令人讨厌的记忆豆荚 NTP时间偏差 Kubelet搬迁统计数据