k8s集群根据进程PID获取Pod名称
简单说明
在实际的应用场景中,我们如果看到某个进程资源或服务异常,需要根据这个进程排查到底是哪个服务的Pod,这里我们介绍一种根据PID快速寻找Pod名称的方法。
实际操作
查看进程PID
这里我们以GPU任务为例说明,可以看到占用显卡的任务PID为8241
[root@centos ~]# nvidia-smi
Thu Jun 15 11:34:39 2023
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 4xx.xx.xx Driver Version: 4xx.xx.xx CUDA Version: xx.x |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 A100-SXM4-40GB On | 00000000:26:00.0 Off | 0 |
| N/A 30C P0 65W / 400W | 6474MiB / 40536MiB | 0% Default |
| | | Disabled |
+-------------------------------+----------------------+----------------------+
| 1 A100-SXM4-40GB On | 00000000:2C:00.0 Off | 0 |
| N/A 30C P0 55W / 400W | 0MiB / 40536MiB | 0% Default |
| | | Disabled |
+-------------------------------+----------------------+----------------------+
| 2 A100-SXM4-40GB On | 00000000:65:00.0 Off | 0 |
| N/A 29C P0 53W / 400W | 0MiB / 40536MiB | 0% Default |
| | | Disabled |
+-------------------------------+----------------------+----------------------+
| 3 A100-SXM4-40GB On | 00000000:6A:00.0 Off | 0 |
| N/A 29C P0 52W / 400W | 0MiB / 40536MiB | 0% Default |
| | | Disabled |
+-------------------------------+----------------------+----------------------+
| 4 A100-SXM4-40GB On | 00000000:A2:00.0 Off | 0 |
| N/A 28C P0 55W / 400W | 0MiB / 40536MiB | 0% Default |
| | | Disabled |
+-------------------------------+----------------------+----------------------+
| 5 A100-SXM4-40GB On | 00000000:A7:00.0 Off | 0 |
| N/A 29C P0 52W / 400W | 0MiB / 40536MiB | 0% Default |
| | | Disabled |
+-------------------------------+----------------------+----------------------+
| 6 A100-SXM4-40GB On | 00000000:E1:00.0 Off | 0 |
| N/A 30C P0 53W / 400W | 0MiB / 40536MiB | 0% Default |
| | | Disabled |
+-------------------------------+----------------------+----------------------+
| 7 A100-SXM4-40GB On | 00000000:E7:00.0 Off | 0 |
| N/A 28C P0 55W / 400W | 3MiB / 40536MiB | 0% Default |
| | | Disabled |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 8241 C python 6471MiB |
+-----------------------------------------------------------------------------+
根据PID查看容器ID
[root@centos ~]# cat /proc/8241/cgroup
11:hugetlb:/kubepods/burstable/pod6bb2e0f4-1f90-4699-b397-d24a617ceaad/2d680a961895ee47f4b1aeca3965766480752d906d208c746d599e202391f89c
10:memory:/kubepods/burstable/pod6bb2e0f4-1f90-4699-b397-d24a617ceaad/2d680a961895ee47f4b1aeca3965766480752d906d208c746d599e202391f89c
9:blkio:/kubepods/burstable/pod6bb2e0f4-1f90-4699-b397-d24a617ceaad/2d680a961895ee47f4b1aeca3965766480752d906d208c746d599e202391f89c
8:freezer:/kubepods/burstable/pod6bb2e0f4-1f90-4699-b397-d24a617ceaad/2d680a961895ee47f4b1aeca3965766480752d906d208c746d599e202391f89c
7:perf_event:/kubepods/burstable/pod6bb2e0f4-1f90-4699-b397-d24a617ceaad/2d680a961895ee47f4b1aeca3965766480752d906d208c746d599e202391f89c
6:net_prio,net_cls:/kubepods/burstable/pod6bb2e0f4-1f90-4699-b397-d24a617ceaad/2d680a961895ee47f4b1aeca3965766480752d906d208c746d599e202391f89c
5:pids:/kubepods/burstable/pod6bb2e0f4-1f90-4699-b397-d24a617ceaad/2d680a961895ee47f4b1aeca3965766480752d906d208c746d599e202391f89c
4:cpuset:/kubepods/burstable/pod6bb2e0f4-1f90-4699-b397-d24a617ceaad/2d680a961895ee47f4b1aeca3965766480752d906d208c746d599e202391f89c
3:devices:/kubepods/burstable/pod6bb2e0f4-1f90-4699-b397-d24a617ceaad/2d680a961895ee47f4b1aeca3965766480752d906d208c746d599e202391f89c
2:cpuacct,cpu:/kubepods/burstable/pod6bb2e0f4-1f90-4699-b397-d24a617ceaad/2d680a961895ee47f4b1aeca3965766480752d906d208c746d599e202391f89c
1:name=systemd:/kubepods/burstable/pod6bb2e0f4-1f90-4699-b397-d24a617ceaad/2d680a961895ee47f4b1aeca3965766480752d906d208c746d599e202391f89c
# 可以看到进程对应的容器ID为2d680a961....,这里太长了,我们只截取一部分
[root@centos ~]# cat /proc/8241/cgroup |awk -F '/' '{print $5}' |head -n 1 |cut -b 1-8
2d680a96
根据容器的PID查看Pod名称
[root@centos ~]# crictl inspect -o go-template --template='{{index .status.labels "io.kubernetes.pod.name"}}' 2d680a96
gputask-64c5557974-kff4j
k8s集群根据进程PID获取Pod名称的更多相关文章
- Kubernetes 教程:根据 PID 获取 Pod 名称
原文链接:https://fuckcloudnative.io/posts/find-kubernetes-pod-info-from-process-id/ 在管理 Kubernetes 集群的过程 ...
- k8s集群启动了上万个容器(一个pod里放上百个容器,起百个pod就模拟出上万个容器)服务器超时,无法操作的解决办法
问题说明: 一个POD里放了百个容器,然后让K8S集群部署上百个POD,得到可运行上万个容器的实验目的. 实验环境:3台DELL裸机服务器,16核+64G,硬盘容量忽略吧,上T了,肯定够. 1.一开始 ...
- k8s集群StatefulSets的Pod调度查询丢失问题?
k8s集群StatefulSets的Pod调度查询丢失问题? 考点之简单介绍下StatefulSets 和 Deployment 之间有什么本质区别?特定场景该如何做出选择呢? 考点之你能辩证的说说看 ...
- k8s集群中部署prometheus server
1.概述 本文档主要介绍如何在k8s集群中部署prometheus server用来作为监控的数据采集服务器,这样做可以很方便的对k8s集群中的指标.pod的.节点的指标进行采集和监控. 2.下载镜像 ...
- 搭建K8S集群
一.前言 我们将现有的虚拟机称之为Node1,用作主节点.为了减少工作量,在Node1安装Kubernetes后,我们利用VirtualBox的虚拟机复制功能,复制出两个完全一样的虚拟机作为工作节点. ...
- k8s集群搭建笔记(细节有解释哦)
本文中所有带引号的命令,请手动输入引号,不知道为什么博客里输入引号,总是自动转换成了中文 基本组成 pod:k8s 最小单位,类似docker的容器(也许) 资源清单:资源.资源清单语法.pod生命周 ...
- k8s集群Job Pod 容器可能因为多种原因失效,想要更加稳定的使用Job负载,有哪些需要注意的地方?
k8s集群Job Pod 容器可能因为多种原因失效,想要更加稳定的使用Job负载,有哪些需要注意的地方? 面试官:"计数性Job默认完成模式是什么?Indexed模式如何发布自定义索引呢?& ...
- 【K8S学习笔记】Part2:获取K8S集群中运行的所有容器镜像
本文将介绍如何使用kubectl列举K8S集群中运行的Pod内的容器镜像. 注意:本文针对K8S的版本号为v1.9,其他版本可能会有少许不同. 0x00 准备工作 需要有一个K8S集群,并且配置好了k ...
- shell脚本监控k8s集群job状态,若出现error通过触发阿里云的进程监控报警
#!/bin/bash while [ 1 ] do job_error_no=`kubectl get pod -n weifeng |grep -i "job"|grep -c ...
- kubeadm搭建K8s集群及Pod初体验
基于Kubeadm 搭建K8s集群: 通过上一篇博客,我们已经基本了解了 k8s 的基本概念,也许你现在还是有些模糊,说真的我也是很模糊的.只有不断地操作去熟练,强化自己对他的认知,才能提升境界. 我 ...
随机推荐
- Mysql 8.0 创建用户、授权用户、更改密码、撤销用户权限、删除用户
一. 创建用户 CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 说明: username: 你将创建的用户名 host: 指定该用户在哪 ...
- pagehelper的失效问题
pagehelper是常用的分页插件,代码中常用到,使用简便且对代码侵入性较小,很多人都喜欢使用.不过有时会遇到分页失败问题,输出结果没有分页,日志输出sql语句没有分页关键字及分页参数,目测是pag ...
- 视图必须派生自 WebViewPage 或 WebViewPage
转
以 ASP.NET MVC 5 为例. 遇见类似问题的蛮多的...
- Codeforces Round 944 (Div. 4)
知识点模块 1. ai xor aj<=4 意味着两个数字的二进制位,只能有后两位的二进制位不同,因为如果第三位二进制位不同,就会出现异或的结果大于4 2.要有化曲为直的思想 学会把曲线上的坐标 ...
- @ResponseBody 响应 json 数据
/** * 将json数据封装到bean对象中条件: * 1:json数据中的key名必须和bean对象的属性相同 * 2:添加jsonjar包的支持 * 作用:使用@ResponseBody 注解实 ...
- java基础之关键字(this、static、super、final、 权限修饰符)
一.this的含义 this:代表所在类的当前对象的引用(地址值),即对象自己的引用. 记住 :方法被哪个对象调用,方法中的this就代表那个对象.即谁在调用,this就代表谁 this的三种运用: ...
- nginx配置代理指向Redis
stream { upstream redis { server 127.0.0.1:6379 max_fails=3 fail_timeout=30s; #*redis-addres*替换为真实地址 ...
- 剑气纵横千行码:AI写就的设计模式侠客行助您仗剑走天涯
烟火里的江湖旧忆 暮色里,代码侠的电动车在巷口急刹,外卖箱里的热汤晃出细响,恍惚间竟像当年工厂堡锻造炉的轰鸣.难得休息之余,他抹了把额头的汗,扶了扶常开网约车的腰,摸了摸自己晒黑的脸,偶感那颠炒粉的手 ...
- 通过apache tika从文档(pdf、doc、docx、txt)中 提取特征数据
本文介绍如何通过apache tika从文档(pdf.doc.docx.txt)中 提取特征数据,比如文档中有身份证.姓名等信息.[全部是经本人实际测试过的功能] 1.需引入相关pom依赖 <! ...
- 企业级开源CMS新标杆,三分钟搭建多语言官网!
HuoCMS是基于ThinkPHP6和Vue3研发的现代化内容管理系统,专为中小企业及开发者打造全场景数字化解决方案.系统采用MIT开源协议,支持多语言.多终端适配,内置可视化编辑器与SEO优化体系, ...