Migrating to DigitalOcean - Step by step howto?

January 19, 2013 5.7k views
Hi, I'm exploring the option of migrating my server over from Linode. It's running LEMP with Ubuntu, and I have things like csf/lfd, logwatch, and phpmyadmin installed. How do I go about migrating everything over as painlessly as possible? Thanks!
8 Answers
You would want to launch a new server on our service and first install all necessary software applications.

Then you want to copy across your content with rysnc.

Then you would merge your users and groups.

After that you can test out all of your configs on the new server and see if its loading your websites as expected.

We are working on a migration tool but it is still a few months out before its ready for user testing.
If you run into specific issues let us know and we'll help you troubleshoot them.

Thanks for the fast reply Raiyu!

I was hoping for something that didn't involve manually reinstalling software.

For example, I found, which is supposed to extract installed applications and settings and spits out a script for me to run on the new server. I've tried it and it seems to work, but I was wondering whether there was something more comprehensive, or alternatively, more painless, since I still have to deal with moving files over and folder permissions.

If I'm not mistaken devstructure/blueprint was started by one of the cofounders of SliceHost specifically to tackle this issue but I'm not sure what the current state.

You could certainly use something like Chef or Puppet that can automate the provisioning of your infrastructure when it comes to applications and configurations, however you will still be responsible for migrating your content.

If you aren't running with Puppet or Chef currently though there are no manifests to build from so you can create a new deployment where you use one or the other to build things out then migrate your data and once you've done this work once you are set to move your infrastructure faster in the future.

As for which one to choose its user preference, my general take, and again this is just opinion, is that Puppet is more DevOps and Developer focused so it hides a bit more of what happens, while Chef is a bit more scripting oriented.
We have a basic migration article here:

it appears that sammy ate the page.
Try this one :)
by Justin Ellingwood
This tutorial covers how to migrate your data and website off of a different VPS provider to DigitalOcean. The basic procedures are the same regardless of where you are migrating from. We discuss some strategies for maintaining data integrity and creating a similar operating environment on a new VPS instance.
Have another answer? Share your knowledge.