Cloud Migration Pathways

Cloud Migration Pathways diagram shows 3 common pathways to the cloud – lift&shift, evolve and “Go Native” (rebuild). Use this diagram to quickly and easily explain the most common migration strategies.

DevOpsGroup - Cloud Migration Pathways Diagram
DevOpsGroup - Cloud Migration IaaS Boom Town

How do you migrate your workloads to the cloud?

Our Cloud Migration Pathways diagram shows you the 3 most common Cloud Migration Pathways – “lift&shift”, Evolve, and “Go Native” (rebuild).

The most common, fastest and easiest pathway is the “Lift&Shift Highway” leading to the “Infrastructure-as-a-Service” (IaaS) Boom Town. Unfortunately, the IaaS Boom Town sometimes comes with a nasty surprise – a hefty price tag! It’s important even with a Lift&Shift migration to pay close attention to rightsizing of server images and other cost optimisations. Remember that over-provisioning is NOT a good strategy in the cloud! In a physical server datacentre environment, it was routine to over-provision capacity (CPU, RAM, Disk) because the lead time to scale-up a server could sometimes be measured in weeks if not months by the time you procured new hardware from the vendor, installed it etc.

DevOpsGroup - Cloud Migration Reserved Instance Dinosaur Park

Reserved Instance Dinosaur Park

In a cloud world increasing capacity is only a few minutes and maybe a reboot away, so there is no need to over-provision, so you can save money straight away. You can also save money via parking your legacy apps, particularly COTS products, into the “Reserved Instance Dinosaur Park”. A “reserved instance” is a commitment from you, the consumer, to consume a certain amount of compute resource from the cloud vendor over a certain period, normally 1 or 3 years. In return, the cloud vendor gives you up to 75% discount on the cost of running that server. RI’s are great for “steady state” services that don’t have large peaks and troughs in demand, and that are on 24x7x365. It’s a great strategy too for those legacy applications that you might be planning to replace, but aren’t ready to replace right now. Often you want to apply the “strangler pattern” to these apps, as you move features & capabilities bit by bit to newer platforms, slowly “strangling” the usage of the older app until eventually you can shut it down. We like to call this “waiting for the Asteroid to hit to kill all the Dinosaurs”, leaving the world for the “mammals” – the faster, nimbler cloud-native applications that will replace them. ​

Many people are openly disparaging of the “lift&shift” strategy, mostly because of the cost surprise that catches out many cloud customers. However, there are often valid, compelling reasons as to why you might want to have lift&shift as part of your cloud strategy e.g. you face a compelling event like the need to make significant investments in datacentre capacity or renewal of a datacentre lease, and you’d prefer not to make that investment. In this scenario a rapid “lift&shift” strategy to avoid deadlines or capital investment can make sense. We would urge you to only see the “lift&shift” as “Phase 1” in your strategy, and have clear plans (and committed funding) for a “Phase 2” journey along the “Re-Factor Road” to try and evolve your application towards the “Half-Way Ville”.

DevOpsGroup - Cloud Migration Half-Way Ville

Half-Way-Ville

Let’s take a more detailed look at the second pathway, “Evolve”, and it’s destination, “Half-Way-Ville”. The “Evolve” pathway involves using DevOps patterns and tools to “evolve” the application and its hosting environment in order to improve flexibility and security, whilst reducing costs. Key patterns we see here are:​

  • Using “infrastructure as code” tools like Terraform to manage the provisioning of the cloud landing zone and the application infrastructure​
  • Using “Configuration as code” tools like Puppet to reliably and repeatably configure the infrastructure and application config. The goal here is “immutable infrastructure”. ​
  • Building CI/CD pipelines to make deploying both the infrastructure and the application code quick & easy, with a guarantee of a secure, validated outcome thanks to test automation as part of the pipeline​
  • Leveraging Platform-as-a-Service (PaaS) solutions to host your applications and data, moving away from a server-centric hosting strategy. PaaS services generally offer significant savings, as well as improved scalability and availability. ​
  • Leverage new technology like Docker Containers to host your applications, ideally in cloud-vendor provided container solutions like Azure/AWS Kubernetes services.

Half-Way-Ville offers the opportunity to significantly reduce costs, reduce mean-time-to-repair, improve security, implement autoscaling & dynamic right-sizing of your environment to match capacity to demand and basically move your hosting strategy into the 21st Century.

Cloud-Native Applications

The third pathway is to rebuild your applications as “cloud-native applications”. A cloud-native application is purpose-built to leverage cloud services like PaaS databases (e.g. AWS RDS, Azure CosmosDB), “serverless” hosting (e.g AWS Lambda, Azure Functions), “microservices” design patterns etc. A common reference pattern for cloud-native applications is the so-called “Twelve Factor App” and there is a wealth of resources available at the Cloud Native Computing Foundation. The CNCF Trail Map is a useful place to start.

Whilst Cloud-Native might represent the nirvana of cloud computing the road to get there is not without its risks. Complex, large-scale re-development projects costs money and have a tendency to fail often – 36% are successfully (on-time, on-budget, on-scope), 45% are “challenged” in one or more of the 3 axes, and 19% outright fail, according to the Standish Group. 52.7% of projects cost 189% of their original estimates. It’s worth noting that taking a modern, Agile approach to software development significantly increases the chance of a successful delivery (39% successful for Agile, versus 11% of Waterfall, nearly a 4x improvement”)

The patterns and practices for managing cloud native application (i.e. Ops) are also still evolving. Managing Cloud Native apps requires new skills, and new tools, that will take time to master.​​

Our advice is to start small – select an end-user requirement that important enough to get people’s attention when you succeed, but not so important or complex that you are setting yourself up for a high-profile failure in your first attempt at cloud native development should you run into problems.

Of course, if you need help on any of the pathways DevopsGroup is always willing to help, so why not get in touch! 


Creative Commons Licence This work is licensed under a Creative Commons Attribution-NoDerivatives 4.0 International License.

Want a high-res PDF of this?

Click here to download the full Cloud Migration Pathways PDF.

Download Diagram

Related Content

DevOpsGroup Whitepapers Icon
Whitepaper
Supercharge your Cloud migration with DevOps

How to supercharge your Cloud migration with DevOps

DevOpsGroup Datasheets Icon
Datasheet
Cloud Migration Datasheet

Accelerate mass-migration to the cloud and prime your IT for speed, agility, and innovation.

DevOpsGroup Blog Icon
Blog
Cloud migration: 5 common traps & how to avoid them

How to avoid five of the most common factors that can undermine cloud migration success.