Cloud Migration strategies : 3 Approaches and Their Pros and Cons
Cloud migration strategies

Cloud Migration strategies : 3 Approaches and Their Pros and Cons

There are several mature, tested approaches to migrating workloads to the cloud. We’ll follow the five approaches in Gartner’s “5 Rs”?cloud migration strategy?model—#rehost (lift and shift), #refactor, #replatform, #rebuild and #replace—with a special focus on the first three approaches.

In this post, we’ll review the five cloud migration approaches and explain the lift and shift, refactor and rebuild approaches, with a detailed review of their pros and cons, to help you select the most appropriate approach for each workload. In addition, we’ll show how?can help with data and storage aspects of your migration.

What Is Cloud Migration?

Cloud migration is the process of moving some or all your digital operations to your cloud. There are three main types of cloud migration you can perform — on-premises to cloud, cloud to cloud, or cloud to on-premises. When performing any of these three migration types, there are five methods and strategies you can use. The?strategies?were first defined in the Gartner “5 Rs” model in 2011.These strategies are:

  • Lift and shift—moving applications to the #cloud as-is. This is also sometimes referred to as rehosting.?
  • Refactor—modifying applications to better support the cloud environment.
  • Replatform—moving applications to the cloud without major changes, but taking advantage of benefits of the cloud environment.
  • Rebuild—rewrite the application from scratch.
  • Replace—retire the application and replace it with a new cloud-native application.?

In the following sections we’ll explain the first three strategies in depth, with their pros and cons.

Also refer to our in-depth next article on?cloud migration tools?that can help you automate and simplify your migration.

1. The Lift and Shift Migration Approach and its Pros and Cons

The “Lift and shift” approach involves dropping the #application into the cloud as-is and hoping that it works. Lift and shift is possible for many workloads, and cloud vendors like #AWS , #Azure and #GCP are working to make it as easy as possible.

One of the critical steps to ensuring lift and shift actually works is to ensure the application, which until recently operated in the local data center, still has access to the same documents and #data once it is in the cloud.

An example is the Microsoft Azure Files service. Azure Files allows cloud VMs to mount file shares that are identical to those in the on-premise environment. This makes lift and shift possible, because you can move workloads from the data center to the cloud, and they still have access to the same shared folders.

Advantages of Lift and Shift Migration

Lift and shift has the following advantages:

  • No code or architecture changes—applications are rehosted to the cloud with no significant application or infrastructure changes, eliminating costly development and testing.
  • Migrate core services easily—you can move critical core services like Active Directory quickly and directly. This presents minimal risk and disruption to business activity.
  • Easier compliance and security management—since applications aren’t changing security and compliance properties also stay largely the same and just need to be mapped to new resources.

Disadvantages of Lift and Shift Migration

Lift and shift has the following disadvantages:

  • Does not take full advantage of the cloud—legacy applications are not scalable and do not allow for distributed workloads like cloud-native applications do.
  • Latency and performance—on-premise applications might suffer from latency or performance issues after migration, because they were not optimized or modified to suit the cloud environment.
  • Increased risk—migrating an application with known problems may result in increased risks after migration.
  • Migration failures—the migration process might fail if the organization doesn't accurately map application requirements to the corresponding cloud configuration.

2. The Refactoring Migration Approach and its Pros and Cons

Refactoring is the process of moving applications to cloud infrastructure, while re-architecting them to better suit the cloud environment. This strategy involves modifying your existing software, or a large chunk of the code base, to take advantage of cloud-based features and the flexibility and elasticity that comes with them.

Refactoring is much more complex than other cloud migration approaches, because it requires application code changes, and needs to be tested carefully to avoid regressions in functionality. You also need to ensure that the application is built for better resource utilization in the cloud, to avoid incurring high costs.

While the refactoring approach is the most time-consuming and resource-intensive, it can provide the highest return on investment once you are running in the cloud.

Advantages of Refactoring

The advantages of refactoring are mainly long-term benefits:

  • Long-term cost savings—can reduce costs by matching actual resource requirements with cloud infrastructure.?The ability to scale as needed reduces resource consumption and provides long lasting ROI of your refactoring efforts.
  • Adapting to changing requirements—cloud-native and microservices architectures allow applications to rapidly change to adapt to new customer requirements, by adding new features or modifying existing functionality.?
  • Increased resilience—by decoupling application components and wiring together managed solutions that provide high availability, the application inherits the durability of this cloud.

Disadvantages of Refactoring

The disadvantages of refactoring are:

  • Vendor lock-in—the more cloud-native your application is, the more cloud features it is likely to consume. This makes applications tightly coupled to the public cloud you are using.
  • Time—refactoring is resource-intensive and much more complex than a lift-and-shift migration, meaning projects take?much longer?to start showing business value.
  • Skills—refactoring isn't for?beginners. It requires advanced #coding, #automation, and #DevOps skills.
  • Getting it wrong—refactoring means changing many aspects of the application, so there is a?high risk?of errors at the #code, #configuration, and #infrastructure level. Each mistake can cause #delays, #cost escalations, and possible outages.

3. The Replatforming Migration Approach and its Pros and Cons

A replatform migration is the middle ground between the two strategies we covered above. It’s similar to rehosting applications on the cloud, but it does involve some modification of the application to take advantage of the new cloud infrastructure.

There are some common modifications that are typically performed during replatforming. For example:

  • Changing?the way the?program interacts?with the database to benefit from automation and an elastic database infrastructure.
  • Enabling?better #scaling?and leveraging reserved resources in the cloud environment with minimal code changes.

Advantages of Replatforming

Advantages of replatforming include:

  • Cost-efficient—this approach is cost effective and does not require a major development project.
  • Start small and scale as needed—replatforming lets you move some workloads to the cloud, experiment with the cloud environment, learn lessons and then move on to other workloads, without committing to a large migration effort.
  • Cloud-native functionality—re-platforming allows applications to leverage cloud capabilities like auto-scaling, managed storage and data processing services, infrastructure as code (IaC), and more.

Disadvantages of Replatforming

Disadvantages of replatforming include:

  • Work scope can grow—“scope creep” can turn a #replatforming project into a full-blown refactoring project. Managing scope and preventing unnecessary changes is essential to mitigate this problem.
  • Aggressive changes—to minimize work, you need to stick to?common, well known cloud components. Specialized components often require dramatic changes to the application, and may not be worthwhile unless they provide high #business value or use is unavoidable.
  • Automation is required—re-platforming is extremely limited if the resulting workload in the cloud is managed manually. This means you are required to invest in basic automation that provides some level of flexibility when operating the system in the cloud.


要查看或添加评论,请登录

Saad FAOUZI的更多文章

  • Why the Lift-and-Shift Model Is Unlikely to Succeed ?

    Why the Lift-and-Shift Model Is Unlikely to Succeed ?

    Someone tells you to move your workloads from on premises to a cloud service provider (#CSP): “It will be easy; just…

  • La sécurité des données dans Google Cloud

    La sécurité des données dans Google Cloud

    quel que soit l'entreprise ou le projet, publique ou industrielle, la sécurité des données est une composante…

    1 条评论
  • Cloud Migration Tools: Transferring Your Data with Ease

    Cloud Migration Tools: Transferring Your Data with Ease

    Every good cloud migration strategy makes use of tools designed to automate and streamline the transfer of your data…

    1 条评论
  • Manifeste Agile, un changement culturel (2)

    Manifeste Agile, un changement culturel (2)

    Le manifeste Agile contient l'essence et la philosophie de l'approche en question. Il illustre à lui seul le changement…

  • Méthodes agiles et Scrum(1)

    Méthodes agiles et Scrum(1)

    Vous avez surement entendu parlé des méthodes agiles ou de la méthode agile. Certains la per?oivent comme une énième…

  • DevOps Automation Tools

    DevOps Automation Tools

    In this article we will be learning what is DevOps, DevOps automation, what are the famous and widely used tools in the…

  • What is DevOps LifeCycle?

    What is DevOps LifeCycle?

    DevOps is a continuous procedure. It describes an active connection between development and operations.

  • LAB: les premiers pas dans le cloud AWS

    LAB: les premiers pas dans le cloud AWS

    Nous détaillons dans cette rubrique le Cloud d’Amazon qui est le Cloud le plus ancien et le plus abouti. L’intérêt de…

    1 条评论
  • Amazon Web Services Cloud

    Amazon Web Services Cloud

    1- AWS cloud Le Cloud AWS est une plateforme de services cloud développée par le géant américain Amazon. AWS regroupe…

  • Cloud Computing et ses différents modèles et topologies

    Cloud Computing et ses différents modèles et topologies

    1- Définition Le Cloud Computing est une révolution dans la manière d’organiser, de gérer et de distribuer les…

    2 条评论

社区洞察

其他会员也浏览了