首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Kubernetes 获取PID及POD信息的方法

Kubernetes 获取PID及POD信息的方法

作者头像
用户11081884
发布2026-07-20 17:30:04
发布2026-07-20 17:30:04
520
举报

Kubernetes集群管理过程中,经常会遇到需要从宿主机进程PID反向查找对应Pod信息的场景。本文将详细介绍这一实用技巧,帮助管理人员快速定位问题。

环境信息

  • Kubernetes版本:v1.27.16
  • 容器运行时:containerd://20.10.8
  • 节点信息示例:

一、从PID查找Pod

以下以进程ID 28977为例,查找对应的Pod信息:

1、查看进程信息

代码语言:javascript
复制
root@worker-p010:~# ps -ef |grep 28977
root     17784 45663  0 17:03 pts/0    00:00:00 grep --color=auto 28977
root     28977 28955  0 Jun17 ?        00:00:00 sh /root/app/start.sh
root     28994 28977  0 Jun17 ?        00:00:00 nginx: master process nginx -g daemon off;

2、 查看进程的cgroup信息

代码语言:javascript
复制
cat /proc/28977/cgroup

输出示例:

cgroup信息中可以提取两个关键信息:

1)Pod的UUID(需要将_替换为-)

2)容器ID(前13位即可)

3、 使用Pod的UUID查找Pod信息

代码语言:javascript
复制
docker ps -a |grep 3a8cc4f5-0f57

输出示例:

4、 验证Pod信息

代码语言:javascript
复制
kubectl get pod agent-coach-client-6f85694cd8-7fvw6 -n aiagent                                                      
NAME                                  READY   STATUS    RESTARTS   AGE
agent-coach-client-6f85694cd8-7fvw6   1/1     Running   0          63d

实用技巧

1)容器ID过滤:通常只需要使用容器ID的前13位字符即可准确过滤。

2)Pod UUID处理:如果从cgroup信息中提取Pod UUID,注意将下划线(_)替换为连字符(-)。

3)快速定位:对于CPU/内存占用高的进程,可以结合 top htop 命令快速找到异常PID,再通过上述方法定位Pod。

二、从POD查找PID

1、查看POD运行的节点信息

代码语言:javascript
复制
root@master1:~# kubectl get pod -n aiagent -owide
NAME                                    READY   STATUS    RESTARTS   AGE   IP               NODE          NOMINATED NODE   READINESS GATES
agent-coach-client-6f85694cd8-7fvw6     1/1     Running   0          63d   172.17.67.69     worker-p010   <none>           <none>
agent-coach-comsumer-774b4999d7-rsnlc   1/1     Running   0          62d   172.17.67.27     worker-p010   <none>           <none>
agent-coach-server-65c78fdd7b-tzj59     1/1     Running   0          36d   172.17.123.241   worker-p007   <none>           <none>
agent-coach-web-7666666cb7-b7wlz        1/1     Running   0          35d   172.17.115.165   worker-p012   <none>           <none>
smartverification-744f6bbb8-kqkzd       1/1     Running   0          5d    172.17.3.94      worker-p015   <none>           <none>

2、登录节点查看POD信息

代码语言:javascript
复制
root@worker-p010:~# docker ps -a |grep agent-coach-client-6f85694cd8-7fvw6
faa080411bf6   harbor.t.com/aiagent/agent-coach-client-dev            "sh /root/app/start.…"   2 months ago    Up 2 months                            k8s_agent-coach-client_agent-coach-client-6f85694cd8-7fvw6_aiagent_3a8cc4f5-0f57-4c33-98f6-e595bc638c24_0
45bcf60f4545   kubesphere/pause:3.4.1                                         "/pause"                 2 months ago    Up 2 months                            k8s_POD_agent-coach-client-6f85694cd8-7fvw6_aiagent_3a8cc4f5-0f57-4c33-98f6-e595bc638c24_0

实际的业务容器为:faa080411bf6

3、查看POD的PID信息

4、验证PID信息

代码语言:javascript
复制
root@worker-p010:~# ps -ef |grep 28977
root     28977 28955  0 Jun17 ?        00:00:00 sh /root/app/start.sh
root     28994 28977  0 Jun17 ?        00:00:00 nginx: master process nginx -g daemon off;
root     52012 45663  0 16:51 pts/0    00:00:00 grep --color=auto 28977

与在POD自身查看的信息一致:

掌握从PID反推Pod信息的技巧,能够帮助运维人员在复杂的Kubernetes环境中快速定位问题。这种能力不仅提高了故障排查效率,也加深了对Kubernetes底层机制的理解。

通过本文介绍的方法:

  • 快速定位异常进程所属的Pod
  • 理解容器与宿主机进程的映射关系
  • 提高Kubernetes集群的运维效率

此方法纳入日常运维工具集,在遇到问题时能够快速响应和处理。

如果你觉得这篇文章有用,欢迎点赞、转发、收藏、留言、推荐❤!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-08-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Nicholas与Pypi 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 环境信息
  • 一、从PID查找Pod
    • 2、 查看进程的cgroup信息
    • 3、 使用Pod的UUID查找Pod信息
    • 4、 验证Pod信息
  • 实用技巧
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档