You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用kubectl查看已退出特定Pod的详情及exitCode 143相关日志

排查已终止Pod详情与exitCode 143问题

获取已停止Pod的详情

默认kubectl get pods仅展示处于Running状态的Pod,要查看所有状态的Pod(包括已终止的),可以用以下命令:

  • 查看所有命名空间下的所有Pod:kubectl get pods --all-namespaces
  • 指定命名空间查看所有Pod:kubectl get pods -n <你的命名空间> --include-terminated(部分新版本K8s可直接用kubectl get pods -n <你的命名空间>配合状态筛选)
  • 查看特定已终止Pod的完整详情(包含终止原因、事件记录等关键信息):kubectl describe pod <目标Pod名称> -n <你的命名空间>,输出里的Events和Termination Message字段会明确Pod终止的触发因素。

获取已停止Pod的日志

如果直接执行kubectl logs <目标Pod名称>无结果,试试这些方法:

  • 指定容器(若Pod包含多个容器):kubectl logs <目标Pod名称> -c <容器名称> -n <你的命名空间>
  • 拉取上一次运行实例的日志(针对已终止的容器):kubectl logs <目标Pod名称> --previous -n <你的命名空间>,这个参数会调取Pod终止前的日志内容
  • 若Pod已被K8s自动清理,可登录Pod所在节点,查看本地日志目录:/var/log/pods/<命名空间>_<Pod名称>_<PodID>/<容器名称>/,不过需要节点的操作权限。

exitCode 143的额外排查手段

exitCode 143对应进程收到SIGTERM信号后的正常退出,除了日志,还可以通过以下命令定位触发源:

  • 查看Pod相关的集群事件:kubectl events -n <你的命名空间> --field-selector involvedObject.name=<目标Pod名称>,能看到是否是Deployment滚动更新、HPA缩容、节点驱逐等操作触发了Pod终止
  • 检查控制器配置(如Deployment/StatefulSet):kubectl get deployments/<关联Deployment名称> -n <你的命名空间> -o yaml,查看更新策略、资源限制是否合理,是否存在频繁重启或缩容配置
  • 检查节点状态:kubectl describe node <Pod所在节点名称>,确认节点是否存在内存/CPU资源不足、磁盘压力等导致Pod被驱逐的情况

内容的提问来源于stack exchange,提问作者Sabo Boz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.23 02:45:22