kubectl debug

1.命令说明
     kubectl debug是Kubernetes的一个命令,用于调试Pod。通常用于创建临时容器或附加到现有容器进行故障排查。

2.使用情况

    我这里是想在minio pod中检索*.map文件,应对漏洞扫描,但最新版的minio镜像里没有find工具,所以需要使用busybox附加到minio pod中进行find命令使用。

3.启动临时调试容器(共享目标容器的进程命名空间),我这里以minio的pod为例:

kubectl debug -it minio-0 -n minio \
  --image=busybox:latest \
  --target=minio \
  -- sh
  • 目标容器的根文件系统挂载在 /proc/1/root 下

4.进入临时容器后执行搜索

find /proc/1/root/ -type f -name "*.map" 

5.退出临时容器(自动销毁)

exit

6.kubectl debug 工作原理图

+-------------------+          +-------------------+
| 临时调试容器       |          | 原容器 (minio)    |
| (busybox)         |          |                   |
|                   |          |                   |
| 共享进程命名空间 → | -------→ | PID 1: /minio     |
| 文件系统路径:     |          | 文件系统路径:     |
| /proc/1/root      | ←------→ | /                 |
+-------------------+          +-------------------+

 

posted @ 2025-05-27 17:06  Leonardo-li  阅读(115)  评论(0)    收藏  举报