当前位置: 首页 > 知识库问答 >
问题:

检查Kubernetes群集中失败的pods日志

方韬
2023-03-14

我有一个Kubernetes集群,其中不同的pod在不同的名称空间中运行。我如何知道是否有pod出现故障?

是否有任何单个命令来检查失败的pod列表或重述的pod列表?

重新启动的原因(日志)?

共有2个答案

司马钱明
2023-03-14

这将起作用:kubectl get pods——所有名称空间| | grep-Ev'([0-9])/\1'

此外,镜头在这种情况下非常好。

燕鸿文
2023-03-14

这取决于您是想获得详细信息,还是只想检查最后几个失败的Pod。

我建议您阅读有关日志体系结构的内容。

如果您想要获得这些详细信息,您应该使用第三方软件,如Kubernetes文档中所述-使用Elasticsearch和Kibana或其他FluentD进行日志记录。

如果您使用的是云环境,则可以使用与云日志记录集成的工具(即在谷歌云平台中,您可以使用堆栈驱动程序)。

若您想检查日志以找出pod失败的原因,K8s文档调试运行的pod中很好地描述了这一点。

如果你想从特定的吊舱获取日志

$ kubectl logs ${POD_NAME} -n {NAMESPACE}

首先,查看受影响容器的日志:

$ kubectl logs ${POD_NAME} ${CONTAINER_NAME} 

如果您的容器以前已崩溃,您可以通过以下方式访问以前容器的崩溃日志:

$ kubectl logs --previous ${POD_NAME} ${CONTAINER_NAME}

您可以使用

$ kubectl get events -o wide --all-namespaces | grep <your condition>

类似的问题被张贴在这个SO帖子中,您可以查看更多细节。

 类似资料:
  • 此外,根据kubernetes文档,节点的容量是不同的,pvc分配绑定到pv上,而pv就像节点一样是一个完全独立的集群资源。 在这种情况下,我需要检查什么存储来查找是否有任何可用空间,比如说一个x gb动态PVC?还有,我怎么检查?

  • kubectl get Pods-N队列-前门 客户端XML SpringConfig文件

  • 我有一个编织网络插件。 我的wave pod正在运行,dns pod也在运行,但是当我想像一个简单的nginx一样运行pod时,wich会拉一个nginx图像pod卡在容器创建中,描述pod给我错误,创建pod沙箱失败。 当我运行journalctl-u kubelet时,我得到以下错误 我的网络插件配置不好吗? 在这不起作用之后,我也尝试了这个命令 我甚至试过法兰绒,这给了我同样的错误。我给ku

  • 我已经配置了一个网络负载平衡器,通过端口80将TCP流量路由到ECS群集 ECS群集正在运行ASP。Fargate配置中的NET Core 2.2 API任务。API的基本路径是<代码>http://ip_address:80/api/v1/ 首先,一切正常,我可以点击负载平衡器的DNS并将请求路由到适当的服务器。NET API路由 然而,最终NLB的健康检查失败,容器被排空,新的容器被替换。 有

  • 命令在rest两个节点上运行,一切正常。当我想跑的时候 nodetool状态 命令时,我得到了这个错误消息

  • 我已经在端口80上配置了一个通过apache公开的web应用程序pod。我无法配置从internet访问的服务入口。问题是后端服务总是报告为不健康。 Pod配置: 服务配置: 入口配置: 这会导致后端服务报告为不健康。 健康检查设置: