Highly Opinionated Thoughts on Programming

by Elnur Abdurrakhimov

DigitalOcean Droplet Corruption

Jun 5, 2015

If you spin up a droplet and deploy a simple site to it and never touch it again, don’t expect it to be up and running forever. It’s likely that the disk will get corrupted several weeks or months later. It happened to me 5 times now. Once I even got a newly restored droplet corrupted again in less than a week. It was a completely new droplet in another data center set up from scratch — not from their backups. That excludes corruption of the backup if there was one.

Oh, and don’t rely on their backups much. This time I tried to restore a backup and it turned out to have the same corruption in it. I’m glad I could at least SSH to the droplet and dump all the data I needed. Yes, I know that I need my own backups and I do that with critical projects in production, but this simple site was not that important. Nevertheless, it doesn’t mean DO has the right to fuck it up.

Sure, if you need cheap droplets that you can spin up automatically and don’t really care if some of them just die off at some point, DO might suit your needs. That’s what I do with Jenkins slaves. Their provisioning is automated with Ansible, and when a slave or two die off, I recreate them in less than 5 minutes.

But if you want to set up a simple site manually that’s not worth automating and setting up complex backups for and never bother maintaining it, DO might not be the right fit for you. An example could be a simple WordPress blog.

As they say, there’s no such thing as cheap quality. And once again I’ve been painfully reminded of that.

Thanks, DigitalOcean, for another corruption. After 5 of them, I’ve finally had enough and started slowly but surely migrating all my important stuff someplace else.

© Elnur Abdurrakhimov