|Introduction to Cloud Migration|
|About 5R Strategy of Cloud Migration|
|5R Strategy Explained|
|Refactor or Rearchitect|
Introduction to Cloud Migration
Cloud migration is the process of moving applications , data and other types of business components to Cloud. There are several components of cloud migration an organization needs to perform and the most widely used model is the applications and data transfer through an on-premises and local data center to any public cloud.
Migration involves determining what is in the environment, what are the interdependencies, what is going to be easy to migrate and what is going to be hard to migrate, and how each application will be migrated. The complexity of migration will vary depending on existing applications, variety, architecture and licensing arrangements.
In this article we will learn more about Gartner 5R cloud migration strategy which gives a holistic approach and strategy towards handling cloud migrations within organizations.
About 5R Strategy of Cloud Migration
The very first step in cloud migration is application Rationalization. Microsoft defines this as a process of asset evaluation to ascertain the best way to migrate or modernize each asset hosted on cloud. The best way to analyse the applications environment is using Gartner five R’s of application modernisation. This will help to choose the right path for cloud migration for your organization. The 5Rs strategy was coined by Gartner in 2011.
So, if you are looking to modernize your application and take it onto the cloud then you need to ensure that the rationalization approach you selected fits the long-term business strategy, motivations, and current state environment.
5R Strategy Explained
Now we will look more in detail at 5Rs as explained below.
Rehosting is more commonly known as ‘Lift and Shift’ in which you are moving your applications from on premises to cloud without making any changes. This is the least risky and lean effort strategy and helps in reduction of infrastructure and operating costs. Rehosting is best suited for legacy migrations or having an IT team with limited knowledge and you are looking for moving fast from on premises to cloud as running costs are high in on premises setup.
- Rehost is used when :
- You are looking to move fast
- On premises running costs are too high
- Legacy application that was developed in-house with few people using it
Re Platform –
Re Platform or ‘Lift tinker and Shift ‘ method involves moving applications as it is with a small amount of up versioning. Few optimizations are made before porting to cloud like switching from self-hosted infrastructure to managed services and switching from commercially available software to open-source software.
- Re-Platform is used when :
- Looking to drive cost efficiency like WebSphere application re-platformed to Apache Tomcat open-source server
- To reduce the amount of effort , resources and costs which is spent on managing database instances by migrating to database-as-a-service platforms like Amazon RDS or migrating applications to fully managed Amazon Elastic Beanstalk are some examples of this kind of migration strategy.
Refactor or Rearchitect –
Before deciding to move an application to cloud you need to make sure that application is cloud compatible. This may call for complete overhauling or some minor changes in the application. Organizations required to modify their applications and infrastructure from a monolithic architecture to a service-oriented (or server-less) architecture can use this strategy to boost agility or improve business continuity and maximize operational cost efficiency in the cloud.
- Refactor is used when:
- Creating a customer application
- You don’t want to create or maintain infrastructure in house
- Infrastructure failing to meet performance requirement of application
While migration activity you may identify applications which are redundant and closing them down will save costs. The savings achieved will help to strengthen business cases. Moreover the team efforts would be more direct towards usable services and you will lower the surface area you must secure.
- Retire is used when:
- Application is redundant
When there is a hefty investment in on-premise applications, or currently has active development projects, or have applications that require high performance, existing applications are working well, there is need to comply with strict regulations where the data is on-premise, in such conditions they should migrate when it is required too, otherwise retaining applications on-premise could be a best suited strategy.
- Retain is used when:
- Heavy investment done in on premises infrastructure
- Applications that are not justifiable to move to cloud, such as where OS is not supported by the cloud service provider
- Due to regulatory requirements which demand that the app run on-premises and not in the cloud.
- COTS applications which are not supported by cloud service provider