Migrating workloads to the cloud requires organisations to consider and carefully weigh factors such as cost, performance and security. This article elaborates on how considering these factors can affect the cloud migration strategy adopted by organisations.
Cloud migration is essentially the process of moving an organisation’s applications, data and other workloads to the cloud. Such migration can also be from one cloud to another or a reverse process of cloud repatriation or cloud exit.
In most cases, organisations initiate cloud migration from their data centres to the public cloud so as to take advantage of the elasticity, scalability, redundancy, self-service and the pay-per-use model that the latter offers. There could also be other business drivers that initiate cloud migration – for example, the closing down of a data centre may force an organisation to move workloads quickly to the cloud. In any of these cases, it is important to strategise the move so that factors such as cost, performance and security are considered and optimised.
Planning cloud migration
In order to move workloads to the cloud, the first and foremost thing that an organisation should do is to identify the applications and data that are candidates for the move, because not all of these can be considered for migration. For example, business-critical applications, throughput and latency-centric workloads, applications and data that have strict geographical stewardship such as GDPR, and highly secure data like financial and health records shouldn’t be considered for cloud migration.
Next, the right cloud environment should be identified. Questions to be considered when weighing the cost, performance and security considerations for cloud migration are:
- Should the workloads reside in a private cloud?
- Should they be moved to the public cloud where users can access compute resources via the Internet or a dedicated connection?
- Should workloads be distributed in a hybrid-cloud model which is a mix of private and public cloud?
- Should a multi-cloud environment be used to combine IaaS resources from more than one public cloud provider?
The other consideration to be made by the organisation doing the cloud migration is related to cloud management, for which its staff should be trained.
Types of cloud migration
Cloud migrations are classified based on the way organisations want to use the cloud to accomplish their goals. Apart from differentiating cloud migration based on the degree of adoption (whether it is complete or partial migration), the processes involved also differ. Broadly speaking, the various cloud migration types are:
1. Lift and shift – Lift and shift is the process of moving the software from on-premise to the cloud without making any changes to the application. This is the fastest method of migrating applications to the cloud, and causes least disruption.
For a lift and shift migration, only the infrastructure and security teams need to be involved. The upfront costs are minimal. However, since it makes no changes to the application architecture or code, the performance is not optimised by exploiting the power of the cloud. Hence, it usually doesn’t lead to long-term cost savings.
Lift and shift is best suited for applications with regular peak schedules and predictable market changes, such as applications of food delivery companies and tax applications.
2. Shift to SaaS – Shift to SaaS involves outsourcing one or more applications to a specialised cloud service provider. By this method, companies can focus on their core applications and offload the less business-critical applications to SaaS providers.
Its main advantage is that the company can remain competitive by streamlining its core business. However, although you can personalise your outsourced application, you can lose the support model to the SaaS company; hence, it is advisable to outsource only applications used for routine functions that are not customer-facing.
Outsourcing the company email to Office 365 is an example of this type of migration.
3. Application refactoring or app modernisation – Refactoring requires some development effort. It is a method of prioritising and first moving the less critical applications that could benefit from the cloud’s agility. It is a low-risk process, since the legacy applications can work in parallel with the new applications developed in the cloud.
While using cloud-native services helps to cut costs, refactoring also saves the time taken to migrate.
4. Re-platforming – This involves a code-rewrite and re-architecture of the complete application to make it cloud-native. It is the most resource-intensive migration process and requires a lot of planning. It is also the costliest type of cloud migration. However, by re-platforming the application, the organisation is able to get the complete benefit of the cloud, which in the long run proves very beneficial to the business.
Security considerations of cloud migration strategy
Before planning cloud migration, organisations must have their security control policies and procedures in place. The security strategy should ensure unified policy enforcements and procedures for secure access to information across cloud environments. These policies should govern access and control regardless of whether the security gateways and services being used reside on-premise or in the cloud.
Another important aspect of security is to determine the regulatory and compliance requirements when data gets transmitted between various cloud and physical network environments. Organisations need to plan ahead to stay compliant and to secure the infrastructure. They also need to plan the right security solutions when they migrate their applications to the cloud.
Implementing several security tools will have to be considered when the area of attack increases post-migration. Apart from firewalls, solutions such as Web application firewalls, intrusion prevention and detection systems, privileged identity management, dual factor authentication, cloud access security broker, etc, will have to be implemented. Existing security programs would have to be revised to include risk management, business continuity and disaster recovery plans, incident handling, security assessments, security awareness and training, and secure cloud deployment. Implementing life cycle management like logging and monitoring of audit trails, encryption of data, vulnerability assessment, penetration testing and periodic security assessments should be taken into consideration.
Performance considerations of cloud migration strategy
For cloud-hosted applications to meet performance requirements, the bandwidth availability should be investigated. While local networks require a minimum of 100Mbps, the bandwidth availability changes drastically after migration, depending on the tier, package and local Internet bandwidth, making only about 2Mbps to 10Mbps available for the purpose. The organisation will therefore need to understand the data flow for considering appropriate bandwidth requirements for its IT infrastructure.
If not properly done, this could result in latency and unmet business application requirements. Organisations should hence use network modelling tools for evaluating the current application performance, and identify areas of improvement to facilitate better performance after executing cloud migration.
Cost considerations of cloud migration strategy
The cost incurred for cloud migration is yet another important consideration. There are three aspects to this – studying the current on-premise costs, estimation of costs in the cloud, and the costs incurred for the migration activity itself.
An assessment of the direct costs (example: hardware and software costs, software licence costs, maintenance contract costs, warranty, supplies, etc) and indirect costs (example: loss of revenue due to outages) associated with maintaining the on-premise infrastructure over time needs to be carried out. Top cloud providers supply pricing calculators to help with the financial estimation of cloud infrastructure costs.
The cloud migration costs relate to using the Internet or appliances to move data from on-premise to the cloud. In addition, labour costs also have to be accounted for. Having all this information handy during the planning phase helps determine the appropriate strategy for migration.
Cloud migration tools
There are many commercial and open source tools that help with the planning and execution of a cloud migration strategy. They provide services to transfer data to the cloud using the public Internet, private networks and offline transactions. There are also tools that help plan and track the progress of the cloud migration process. AWS, Google and Microsoft have services like AWS Migration Hub, AWS Snowball, Google Cloud Data Transfer Service and Azure Migrate, respectively, to help with migration. Third party vendors like Racemi, RiverMeadow, CloudVelox, etc, also offer products for the same.
The open source community offers tools that are free or low cost alternatives and can be easily customised. Some commercial products are built on top of open source products, and offer limited versions for download. If the migration is not large or complex, open source is a viable option.
Some popular open source tools for cloud migration are Apache Nifi, Clover ETL, Myddleware, Pentaho, Talend Open Studio, etc. To choose the right tool, it is necessary to consider its cost, security features available, supported data models, and the data transformation features to cleanse and enrich the data.
Cloud adoption by enterprises is increasingly common these days. Many firms are leveraging multiple clouds for cost-effective alternatives. Multiple cloud adoption strategies allow for mixing and matching applications to the cloud infrastructure that best suit the specific workload.
The major driver that influences cloud migration today is innovation-driven and customer experience-centric digital transformation. Another major factor is the Internet of Things that aims at connecting devices and humans to collect and act on data in myriad ways.
Understanding cloud migration drivers and evaluating various considerations during the planning stages helps ensure that the business adds long-term value by adopting the right cloud migration strategy.