Strategic Demands of Transitioning to Cloud
In this era of digitalization, cloud services are going to play a major role in helping enterprises to achieve their digital aspirations. Enterprises who already have their applications up and running, are increasingly willing to migrate to cloud, to leverage the benefits of cloud services like Reduced cost, Increased Scalability, Enhanced Security, High Availability and many more.
Moving on-premise applications to cloud or moving applications from one cloud service provider to another cloud service provider is what is known as cloud migration. A successful migration can be achieved only when one has a proper planning and strategy in place.
Before planning it is always advisable to go for POC’s to understand different cloud services and correlate them with your application design and migration needs. The basic steps one must follow to plan migration are:
Categorize your Applications - Make a list of applications which are currently being managed by you, and categorize them as per your priority of migration and business requirement. This process will help you to identify some of the applications which are no longer relevant, but still are a part of your application stack. These applications can be safely retired and removed.
Understand different Cloud Computing Models - Primarily there are three models
Software as Service (SaaS) - In this model, you need to subscribe to an application which is being managed by a third party. You are not required to manage the application development and any other infrastructure components required to run the application. For e.g. Google Apps, Salesforce.
Platform as Service (PaaS) - In this model you need to focus only on your application development and rest of the components like runtime environment, server software, underlying server hardware and network infrastructure will be taken care by the PaaS provider.
Infrastructure as Service (IaaS) - In this model you procure the infrastructure over the cloud, and build your own platform over the same to run your application. Here you are going to manage the runtime environment, and operating systems. While the service provider will take care of servers and their hardware’s, storage and networking.
Evaluate different Cloud Service providers - You should evaluate different Cloud Service providers (like Amazon AWS, Microsoft Azure, Google Cloud and others) and compare their service offerings and select the one which suits you. Conduct POC’s using different services of each service provider to understand how these services will be helpful in moving application to cloud, and the challenges which needs to be addressed while doing migration. Better understanding of these services will help in re-architecting the application for better performance.
Select a Migration Strategy - Once you have done the above steps you can select a migration strategy. Most common migration strategies are:
Rehosting - Migrating your existing application as it is to cloud based infrastructure, popularly known as “lift-and-shift”. You need not need to re-write your application except for a few infrastructure configuration changes. This can help you make your application cloud-ready quickly, which you can later re-architect to further leverage the other cloud benefits.
Replatforming - In this approach you are not required to do any changes to the application, but you may like to change the platform on which you were previously running your application to a different platform on cloud, considering some cost and performance benefits.
Repurchase / Replace - You have an application, but you are getting similar SaaS based application with better features. Here you can decide to shut down your application and migrate to some SaaS based commercial offering. Typical example is moving from in-house CRM software to Salesforce.com.
Re-Architect - In this strategy you are going to redesign and redevelop the application so that you can take the advantages of different features of cloud. Typical use case is legacy applications which cannot be run on containers supported by cloud platform and needs to be rebuild.
Retire - Once you have identified different applications in your stack, you will come to know that there are few of them which are no longer being used, or a time has come to define the End of Life (EOL) for those applications.
Retain - If you feel that an application is not of very high importance but still you have few users for them, or there is some challenge in doing the migration, retain the application as it is and continue to use the same without doing cloud migration. You can always revisit and re-evaluate such applications in future for cloud migration.
Q3 believes that cloud migration should be executed in phases. It could be an incorrect move to migrate all the applications at one go. To start with, one can use Cloud services for Data Backups, Disaster Recovery, Staging and Testing environments. This will help you to understand the modalities of the Cloud environment and help you to migrate your production applications to cloud, with confidence.
Vice President,Q3 Technologies Pvt Ltd
Tags: Strategic Demands of Transitioning to Cloud, navin parti, q3 technologies