s3tools / s3cmd

Official s3cmd repo -- Command line tool for managing S3 compatible storage services (including Amazon S3 and CloudFront).
https://s3tools.org/s3cmd
GNU General Public License v2.0
4.57k stars 906 forks source link

Upload to S3 very slow on Ubuntu 16.04 #767

Open gbot opened 8 years ago

gbot commented 8 years ago

Hi,

I have seven cloud servers with s3cmd installed. I have just updated all to s3cmd 1.6.1 and regenerated the .s3cfg files.

I have a BASH script which dumps all MySQL databases and then uploads to S3 using s3cmd, and this has worked beautifully for many months.

My two newest servers are Ubuntu 16.04 and I've noticed that the upload is very slow. Watching the progress the upload starts very fast but then quickly throttles down to ~50/kb/s.

All my 14.04 servers upload at ~1-2MB/s or higher.

The BASH script is identical on all servers. I have tested using sync and put -- same result.

I am not using the --limit-rate parameter (this is left as default: 0)

Any ideas what could be causing slow uploads on Ubuntu 16.04?

Thanks in advance for you help.

Update: I note that the 14.04 servers are running Python 2.7.6 and 16.04 servers are running Python 2.7.12.

Update: I've also tested with --no-ssl and with --server-side-encryption disabled -- same result.

gbot commented 8 years ago

So ... nobody has any speed issues with s3cmd on Ubuntu 16.04?

salty-horse commented 8 years ago

Which version of s3cmd are you using on the 14.04 servers?

gbot commented 8 years ago

Hi,

I'm using s3cmd v1.6.1 on all servers.

I should have posted back, but after much testing I eventually identified the issue. All servers are KVM based virtual servers and with 16.04 I discovered that switching the network adaptor to virtio (was realtek8139) resolved the issue.

This doesn't affect 14.04, only 16.04. All other aspects of network performance worked fine, it was just uploading to S3 - I have no idea why.

salty-horse commented 8 years ago

Odd. I'm on Ubuntu 14.04, where s3cmd 1.1.0 works fine, but 1.6.1 is slow and always get disconnected when uploading files.

jj777 commented 7 years ago

Hi, I think I have this as well - I have jobs with s3cmd and the awscli client both taking significantly longer.

(16 hours for backups instead of 2-3) with S3 cmd. I just watched a 25MB upload to s3 take ~30 minutes on the official cli client as well.

How/where do you make the virtio change? (I'm using a hosted VPS)...

gbot commented 7 years ago

@jj777 You'll need to check with your host if changing network adapter is possible. I don't think it will be on a VPS container. I'm using KVM virtualised servers.

FYI, I've recently migrated all my scripts to using the official AWS-CLI, so I'm not using s3cmd any longer. I find AWS CLI to be much faster.