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
64 Answers
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 3Using 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] 5Could you move your db dump to a separate directory and then try to copy the entire directory ?
This may look like this:
kubectl cp device-database-79fc964c8-q7ncc:tmp/plsql_data/directory_containing_prod_dump /Users/raja/new_local_dir_containing_db_dump According to this comment it may help.
It was also confirmed in comments by Bageshwar Pratap Narain and İbrahim ULUDAĞ that this solution worked for them.
2In my case. Copying folder didn't helped. Instead tar.gz helps
1