在kubernetes集群中有可能吗?
我发现的所有示例都是从本地磁盘复制到Pod或反之亦然,或者是通过SSH,SCP或其他实用程序从一个节点复制到另一个节点的唯一选择?
答案 0 :(得分:4)
无法进行集群到集群的复制。您需要使用kubectl cp
在本地复制它,然后将文件复制回去:
kubectl cp <pod>:/tmp/test /tmp/test
kubctl cp /tmp/test <pod>:/tmp/test
如果您尝试在Pod之间共享文件,并且只有一个Pod需要写访问权限,则可能要在多个Pod上安装ro卷,或者使用像S3这样的对象存储。实际上,您不应该经常在Pod之间来回复制文件,这是一种反模式
答案 1 :(得分:0)
查看 this 篇文章。
简而言之,这是命令:
kubectl exec pod-01 -- tar cf - /dir1 /dir2 | kubectl exec -i pod-02 -- tar xvf - -C /
答案 2 :(得分:0)
这是一种从容器内部复制到本地计算机的方法:
kubectl cp <file-spec-src> <file-spec-dest>
示例
kubectl cp your-pod:/path/to/file /local/path
kubectl cp /local/path your-pod:/path/to/file