首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >实例状态失败的原因

实例状态失败的原因
EN

Stack Overflow用户
提问于 2019-04-08 17:27:22
回答 3查看 2.7K关注 0票数 2

如果Pod的状态为Failed,Kubernetes会尝试创建新的Pod,直到它到达kube-controller-manager中的terminated-pod-gc-threshold。这将在集群中留下多个Failed Pod,需要清理。

除了Evicted之外,是否还有其他原因会导致Pod Failed

EN

回答 3

Stack Overflow用户

发布于 2019-04-09 02:26:21

导致POD状态为FAILED的原因有很多。您只需通过运行以下命令来检查问题(如果存在

代码语言:javascript
复制
kubectl -n <namespace> describe pod <pod-name>

仔细检查EVENTS部分,其中列出了在POD创建过程中发生的所有事件。希望你能从中找出失败的原因。

然而,POD失败有几个原因,其中一些原因如下:

  • 用于POD的映像错误。
  • 错误的命令/参数被传递到POD。
  • Kubelet无法检查POD的活动性(即活动性探测失败)。
  • POD在网络CNI插件中的健康配置失败(用于POD的CNI插件配置错误

例如:

在上面的示例中,由于镜像"not- so -busybox“不存在而无法拉取,因此pod无法运行。pod状态和事件清楚地描述了问题。

票数 4
EN

Stack Overflow用户

发布于 2019-04-08 23:48:46

PODs不会在调度失败、节点故障或其他驱逐(例如资源不足)或节点维护的情况下幸存下来。Pod不应该手动创建,而是几乎总是通过部署(自我修复、复制等)之类的控制器创建。

pod失败或销毁的原因可以通过

代码语言:javascript
复制
kubeclt describe pod <pod_name>

pod出现故障时遇到的其他情况:

当pod尝试访问卷或密码,但在namespace.

  • Liveness探测器中找不到时,卷出现映像问题(已不存在)
  • fails to Failure
  • Persistent Error

此外,逐出基于资源- EvictionPolicy

这也可能是由DRAINing节点/实例引起的。您可以阅读有关DRAIN here的内容。

票数 2
EN

Stack Overflow用户

发布于 2020-07-08 00:59:39

只需执行以下操作:

代码语言:javascript
复制
kubectl get pods <pod_name> -o yaml

在接近尾声的输出中,您可以看到如下所示:

这将使您很好地了解pod到底发生了什么故障以及发生了什么。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55570194

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档