从远程kubernetes pod复制文件到unix机器



我想从远程kubernetes pod(源)复制文件到unix机器(目标)。源,目标可以是两个不同的集群。之前使用的是openshift pod,所以我使用rsync来复制文件。

rsync的正确替代品是什么?发现kubectl是正确的。它可以在两个不同的集群中使用吗?

感谢

您可以使用kubectl将文件复制到本地机器。缺点是一次只能连接一个集群。

# Copy /tmp/foo from a remote pod to /tmp/bar locally
kubectl cp <some-namespace>/<some-pod>:/tmp/foo /tmp/bar
# Switch kubectl context to the another cluster
# Copy /tmp/foo local file to /tmp/bar in a remote pod in namespace
kubectl cp /tmp/foo <some-namespace>/<some-pod>:/tmp/bar

也许这篇文章也能帮上忙。

集群间复制是不可能的。您可以使用kubectl cp命令将文件复制到本地并复制到目标。

使用此命令将文件从源复制到目标

kubectl cp <pod>:/tmp/test /tmp/test 
kubectl cp /tmp/test <pod>:/tmp/test

有关复制文件的更多信息,请参阅此堆栈用例和本地复制文件的堆栈用例。

最新更新