I need to copy dump data from pod to local. Below the commands I am trying but I am getting error: unexpected EOF
kubectl cp device-database-79fc964c8-q7ncc:tmp /Users/raja
error: unexpected EOF
or
kubectl cp device-database-79fc964c8-q7ncc:tmp/plsql_data/prod.dump /Users/raja/prod.dump
error: unexpected EOF
kubectl version
kubectl version --client
Client Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.0", GitCommit:"cb303e613a121a29364f75cc67d3d580833a7479", GitTreeState:"clean", BuildDate:"2021-04-08T16:31:21Z", GoVersion:"go1.16.1", Compiler:"gc", Platform:"darwin/amd64"}
Can anyone help how to fix this issue?
Thanks
If you're using Kubernetes, you may find the need to move files to and from containers running on pods. Before the days of containerization, we would use a tool like SCP (secure copy protocol) to move files to and from remote machines.
Kubectl cp command is most widely used to copy files between pods and local file system. It is more like SCP in Linux world to copy files between local to remote machines using ssh protocol.
For newer versions of kubectl, adding a retries=-1 flag may resolve the issue:
kubectl cp --retries=-1 pod-www-xxx-yyy-zzz:/path/to/remote/dir ~/local/dir
Using a "cat" command, rather than "cp" worked for me -- but only after 3 attempts.
The "cp" command failed over and over to get the whole file.
This "cat" style command did better each time.
So try this and see if your odds improve!
kubectl exec -i [pod name] -c [container name] -- cat [path to file] > [output file]
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With