There are not yet any cookie-cutter best practices and enabling technologies to move applications to the cloud.
Enterprises are migrating to the cloud in big ways these days. However, the number of moving parts leave many people in IT a bit perplexed — and fearful that they could be making major mistakes.
The reality is that cloud migration is new, so best practices and enabling technologies have yet to emerge. Moreover, there is the added complexity of DevOps, big data, and the Internet of things. How the heck do you fit those in too?
Having done a ton of these migrations in the last few years, I can give you basic advice about how to manage the complexities of migrating to the cloud. Use these tips to get a jump start. And make sure your very first step is to learn all you can about cloud migration in general.
1. Think stepwise. Many enterprises move from 0 to 100mph when looking to migrate applications and data. This leads to too many moving parts and not enough time to recover from mistakes. As a result, at least some of your massive migration project will fall on its face.
Instead, do things in order. Assemble a comprehensive plan that takes the necessary time to put the applications in the correct priority order, then migrate them as chunks of applications and data.
Follow that approach whether you are doing a simple “lift and shift” type of migration or acomplete refactoring of the applications and the data.
2. Think security and governance. These two considerations should be systemic to the applications and data, so you must address them in each workload moved to the cloud. What are the security requirements? What are the compliance requirements? How do you manage cloud services, so they can be reused in other applications?
3. Watch for performance issues. Performance problems tend to become known at the time of deployment — not when you typically want to make fixes.
To find performance problems before you go live, make sure to test as you go. You’ll find that chatty applications (those that require a great deal of data exchange with public clouds) can introduce issues. You’ll have to refactor the application to fix the issues. Refactoring per se is not a problem, but you have to set aside the time to do it before the migration, not after.