版本信息
版本号:v1.0.0
创建日期2025-07-21
变更日志
lue
概述
kubectl cp 命令,用于从 Kubernetes Pod 内拷贝文件到本地
命令详解:kubernetes.io/zh-cn/docs/…
kubectl cp <file-spec-src> <file-spec-dest>
操作详情
一、查找Pod信息
以获取企业太仓 Rainbond 集群 test项目中 tset服务 Pod中"/2025-07-21.log " 文件 为例。
例如需要查找 该服务的信息,需要拉取其中的某个文件
上图可以获得三个信息:
- 集群信息
环境说明
lue
- Pod name
- Pod IP
根据Pod的 IP 或Pod Name 查找Pod的 namespace
kubectl get pod -A -owide | grep [pod name]
二、拉取文件
例如需要拉取容器内的:"/2025-07-21.log " 文件
先查看是否存在该文件
# kubectl exec -n test test-test-7c76fc6459-vfwwf -- ls -lh /2025-07-21.log
-rw-r--r-- 1 root root 5 Jul 21 02:54 /2025-07-21.log
再使用 kubectl cp 命令拉取文件
# kubectl cp -n test test-test-7c76fc6459-vfwwf:/2025-07-21.log ./2025-07-21.log
tar: Removing leading `/' from member names
[root@KSENTPHY0044 ~]# ls
2025-07-21.log
参数逐一说明:
| 部分 | 含义 |
|---|---|
| kubectl cp | kubectl 的拷贝命令,类似 scp,可以用来复制文件到 pod 或从 pod 拷贝出来 |
| my-namespace | 指定命名空间(namespace) |
| my-pod | Pod 名称 |
| /tmp/file.txt | Pod 内的文件路径 |
| ./file.txt | 拷贝到本地当前目录下 |
三、下载文件
sz [文件名]
如果没有sz命令,使用yum安装
yum install lrzsz