这里写自定义目录标题


1.根据pod name 查找容器名或者容器ID(k8s-docker)
首先根据kubectl get nodes -o wide 查找pod name和所在的node
在这里插入图片描述

然后执行如下命令查看对应的容器名

kubectl describe pods/nginx-fc9d86dd9-228g7|grep Container
在这里插入图片描述

然后进入对应pod所在node服务器 docker ps -a|grep 容器id或者容器名
在这里插入图片描述

2.根据容器名查找在宿主机的pid(docker–常用)

docker inspect --format ‘{{ .State.Pid }}’ cbd749608725

3.根据宿主机的pid查找对应的pod(k8s–常用)
PID=9791
docker inspect --format ‘{{.Config.Hostname}}’ ( c a t / p r o c / (cat /proc/ (cat/proc/PID/cgroup|awk -F ‘docker-’ ‘{print $2}’ |cut -c1-12| head -n 1)

4.根据宿主机程序pid查找容器名(docker–常用)
首先ps -eaf|grep tomcat 查看程序在宿主机的pid
从cgroup入手执行如下脚本即可
PID=30021
cat /proc/$PID/cgroup|awk -F ‘docker-’ ‘{print $2}’ |cut -c1-12| head -n 1
5.根据容器id查找pod名 (docker-k8s)
在pod所在docker ps -a|grep 容器id即可,最后一列是pod name

在这里插入图片描述

6.根据容器id查找宿主机内程序的pid
在这里插入图片描述

其中PID是容器内进程在宿主机上的pid,ppid是容器内进程在宿主机上的父进程pid

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐