The 6 R's of Cloud Migration
As new technology offers flexibility, mobility and agility, it's no surprise that more and more organisations are moving their day to day operations over to the cloud. The cloud offers several business benefits, not least reduced costs and improved productivity. Meanwhile, moving data and applications can help to reduce the strain on IT budgets and promotes greater collaboration.
However, in spite of the obvious benefits, the migration to the cloud can be a daunting process. It needs to be done in the right way to ensure it supports business needs and delivers the value that it promises. It's vital that companies take a holistic approach to understand their applications and services and how migration will affect both them and the people and processes that rely upon them.
The key to successful cloud migration is in the planning. Creating a migration strategy is vital and involves identifying the potential migration options, understanding the interdependencies between applications, and deciding upon what layers of an application would benefit from migration. Each step towards migration gives more opportunity to take advantage of cloud-native features, although moving everything in its entirety to the cloud is a costly business. Usually, there will be a hybrid solution, where some applications are moved, and some remain.
Effective planning involves several steps and options; these are known as the 6 Rs of cloud migration:
During a migration project, everything in the business environment will be identified and evaluated. To justify migration, a product, service or application needs to hold a certain amount of value. By considering each migration element, it's possible to determine what's being used and what's not. Usually, there are redundant applications, and shutting them down will result in a cost-saving. Applications can either be decommissioned or consolidated with other applications. Ultimately, if an application no longer serves a purpose, there is no point in continuing to run it. More often than not, these applications should have already been phased out long ago.
Migration to the cloud doesn't have to always mean out with the old and in with the new. There are often elements in an IT environment that can be retained as they are. This might make sense if the depreciation value needs to be achieved before migration is considered or the business is heavily invested in the application with active development projects. Alternatively, the cost of migration might be too high relative to the value that the application offers. There needs to be a strong business case to justify the cost and disruption of migration. Also, some industries have to adhere to strict compliance regulations and moving data to the cloud isn't possible. Retaining some on-premise solutions is a regular occurrence in a hybrid cloud migration model.
Known as 'lift and shift', rehosting is the quickest way to move applications over to the cloud. It is often the first step towards cloud migration as it involves moving applications from an on-premise environment with very little modification. The physical and virtual servers are migrated into an infrastructure as a service (IaaS) model. By rehosting large-scale legacy applications, specific business objectives such as increased speed can be quickly met.
Rehosting is ideal for moving applications without having to make architectural changes. By lifting and shifting across to the cloud, applications can be scaled more easily on-demand by adding more services or databases as required. However, while rehosting offers a quick and viable solution, it has limited ability to take advantage of cloud-native capabilities. Rehosting is rarely the end of the migration journey. Often applications are rehosted as a first step and then modernised further to take advantage of the cloud computing platform once they are there.
Some legacy applications are far too structured to be moved into IaaS cloud platforms. To avoid changing the core of the applications, they can be emulated through virtual machines. This enables legacy applications to become compatible with modern cloud technologies.
When an application only requires small optimisations before moving to the cloud, re-platforming is a viable choice. Often it involves switching from self-hosted infrastructure to managed services or from commercial software to open source. Replatforming is an ideal solution for companies that aren't able to restructure legacy applications at the same time as cloud migration. However, it's vital to test and monitor performance in the cloud and to ensure that basic functionality and user metrics perform as expected.
Repurchasing Is another fast way to access cloud technologies. Software as a service (SaaS) can take existing data and applications and translate them into a comparable cloud-based product. This can help make significant process with operations such as customer relationship management and content management.
Repurchasing involves a licensing change where the on-premise version is being swapped for the same application but as a cloud service. Dropping on-premise applications and switching to the cloud can offer improved features sets, without the complexities of rehosting the exiting application. The approach is a common choice for legacy applications that are incompatible with the cloud.
6. Refactor and Re-architect
When there is a strong business case for adopting cloud-native features such as increased agility, scalability or performance, refactoring and rearchitecting can be considered. The strategy is no easy feat, however, and requires a complete overhaul of an application to adapt to the cloud. Often this will involve breaking the application into independent services and moving across to a microservices-based architecture.
While refactoring and rearchitecting are the most expensive and most complicated methods of cloud migration, they are the endpoint for most applications. Some applications will need to be changed to this degree from the outset to deliver the required business value, whereas others will take a slower journey through the steps outlined in the 6 R's. Refactoring is a tipping point that is reached when cloud-native features outweigh the cost and disruption that is caused by achieving them.
As the technology landscape continues to change, more companies will look to cloud-based solutions to achieve business goals. The cloud offers significant benefits over maintaining often outdated applications. A cloud-based migration should be seen as a staged journey ensuring that business value is put first at every step of the way.