Sometimes even complicated topics can benefit from being wrapped in a bit of “old-school” wisdom. To that effect, I wanted to offer up some advice on how to approach the idea of moving applications and workloads to the cloud, in other words – a cloud migration strategy, but in the way I image my father would have tried to impart his wisdom on me.
Now, it’s pretty clear that cloud migration and adoption is growing. A recent Forbes article1 stated that spending on cloud computing is growing at 4.5 times the rate of traditional IT spending, and IDC estimates that public cloud spending will reach $162B by 2020 - attaining a 19% CAGR from 2015 2. However, as companies of all shapes and sizes move workloads and services to the cloud in ever increasing numbers, the dirty little secret remains that not all applications and services are good fits for the cloud, and also that there will always be risk involved in migration. So, having a clear cloud migration strategy before moving services or workloads to the cloud is critical to ensure you’re picking the right applications to move.
Cloud Migration Strategy Wisdom
Here are 5 things companies should consider before moving applications to the cloud.
1. Remember birthdays: Some older applications may not be a good fit for cloud dynamics.
Unlike your local drinking age, this is a case where being younger should make it more likely your application gets in the (cloud) door. Good target applications for the cloud are those that have been built within the last 10-15 years and use a language supported by your planned cloud provider. If you find an equivalent platform for your application in the cloud, your migration should be easy. In addition, many newer applications decouple the core application from its data source. This means you can place the data in a separate domain (or even keep it on a non-cloud platform) without breaking the application.
2. Lock your doors: Security is ultimately still your responsibility.
All of the major public cloud providers invest heavily in security – in many cases even more heavily than average enterprises – as they understand security and privacy are at the top of the list when it comes to customer concerns. Companies across all industries are responding by moving critical functions to public clouds in ever increasing numbers, however cloud providers only protect the data in their possession. The company itself is still legally responsible for customer’s data safety including ensuring secure transport to and from the cloud service provider. If a particular application has a very large risk ‘price-tag’ (should a data breach occur), it may be a better idea to keep it on-premises.
3. Check your blind spots: The cloud is designed to be dynamic, make sure your monitoring is too.
Most cloud offerings allow you to fully manage IaaS or PaaS resources as if they were your own, providing the flexibility to dial those resources up and down as necessary. For this reason, you’ll want to ensure your monitoring tools can discover and track changes to your service dependencies in real time. Additionally, if you’re not planning to move to a 100% cloud environment, you’ll also want to ensure those same tools can monitor your on-premises infrastructures alongside your new cloud resources. This will reduce administrative burden once you move applications to the cloud, and allow you to implement your same IT Operations integrations – say with orchestration or incident management tools - across your entire hybrid ecosystem.
4. Lift with your legs: Not all applications are ready to take advantage of cloud dynamics.
You should also consider how heavy a lift migrating your application will be. Is it a common, industry-standard application that has already been written for the cloud? Or is the application proprietary, and would it need a complete rewrite to be ‘cloud-native’ and actually benefit from the advantages of running on a highly dynamic and scalable infrastructure? What would it cost to redesign or rewrite the application, and are resources available to do that work? A “lift-and-shift” approach to cloud migration is the least expensive, and consequently most popular, option when it comes to migration - applications are pushed to the cloud with little or no modification. However, that may also mean they have no cloud-native awareness and may not be able to automate with that cloud providers tools for dynamic resource allocation. So are they really worth moving?
5. Do your homework: Understand the differences in the offerings of the public cloud providers, to pick the best one for your application.
Depending on your company, your application, or your IT team’s level of complexity different cloud provider options may be a better fit than others. What are that providers capabilities for VM migration (AWS and VMware sure seem to be getting a lot chummier3), what are their auto-scaling capabilities, what are their options for regional support (if you’re a global business), do they allow custom virtual machine images? The list of questions goes on, but the point is: Not all public cloud providers are the same, and depending on your needs not all of them may be the best fit for your application.
There are lots of considerations to make when examining which applications to move to the cloud – including, as stated in #5, which cloud to move to – and the effort just to move can take up budget and manpower. So, it’s well worth the effort to formulate a strategy ahead of time, and do the work necessary to evaluate which applications will have the greatest ROI and the most success once migrated to the cloud.
As with many things in life, a little foresight can pay big dividends in the end…which is similar to a piece of advice my farther once told me: “Buy a plunger, before you need a plunger.” It turns out that sometimes the simplest advice is the best.