HI All,
In this article i am going to give a brief overview about Cloud migration. It includes things like advantages,phase of cloud migration,migration services from different cloud environments and a handy checklist before beginning the cloud migration. so lets get started.
![](https://i0.wp.com/miro.medium.com/max/1400/0%2AIe_hOFN1ok-LKyY8.jpg?w=1200&ssl=1)
Cloud Migration
Cloud migration is the process of transferring databases, applications, and IT processes into the cloud, or from one cloud to another.
Why migrate to the cloud
Elasticity
On-Demand Computing
High Availability
Phases for a successful Cloud Migration
Assess
Pilot
Move Data
Move Applications
Optimize
Assess Phase: In this stage we need to classify the components into three types
1.Easy to move
No Dependencies
No Licence restrictions
Tolerant to scaling
2.Hard to move
More dependencies
Less Tolerant to scaling
Complex licensing requirements
3.Can’t move
Require specialized or older
Compliance requirements
Cloud compliance licensing restrictions
Pilot Phase: In this stage we will perform a test run for a non-critical or easily duplicated service,while considering the components we need to understand about Licensing and Roll back plan.
Once the roll-back plan is identified we need to map the resources of our existing on premise components with cloud equivalent components.
Example
Service::DataCenterComponents::CloudService
Compute::PhysicalHardware/VMWareESXi::EC2/ComputeEngine
Storage::SAN/NAS/DAS::PersistentDisk/CloudStorage/EBS/EFS
Network::MPLS/DNS/LB::VPC/ELB/ROUTE53/CloudDNS
Security::Firewalls/Route/Encryption/SSL::Encryption/SSL/SecurityGroups
Identity::ActiveDirectory::IAM/LDAP
Data Migration Phase: It is the process of selecting, preparing, extracting, and transforming data and permanently transferring it from one computer storage system to another.
Types of Data migration(Assuming Databases for simplicity)
1.Homogeneous Migration
It is the process of converting similar databases from one location to another location.
Example:SQL to SQL, Oracle to Oracle
2.Heterogeneous Migration
It is the process of converting database from one type of database to a different type of database by using schema conversion tools.
Example:SQL to Oracle
Tools used for Data MigrationAWS
1.Database Migration Service
2.Schema Conversion Tools
3.DataSync
4.Storage Gateway
5.Snowball series
GCP
1.Cloud Online Data Transfer
2.Storage Transfer Service
3.BigQuery Data transfer Service
4.Transfer Appliance
Azure
1.Azure Stack Edge
2.Data Box Gateway
3.Database migration service
4.Databox Dis/Heavy
Checklist
1.How large is your database?
2.How many schemas and tables do you have?
3.How many tables do you have over 200GB or 200 million rows
4.What do the transaction boundaries look like?
5.Are there engine-specific data types that wont be migrated?
6.Do you have LOBs in your table. how large are they?
7.Do all your tables with LOBs have primary Keys?
8.How busy is your source database
9.what kind of users/roles/permissions do you have on the source database?
10.When was the last time you compacted your database?
11.How can your database be accessed?
12.Do you know what VPC/SG you want to use in AWS?
13.Do you have enough bandwidth to move all your data?
14.Can you afford downtime?How much?
15.Do you need source database to stay alive after the migration1
16.What is your contingency plan if things go wrong?
Move Application Phase : In this stage we will move application and its underlying servers.
We need to create a disk image file and compress it into .tar.gz.Once it is converted we will import it as custom images. We can also use new in built Cloud import tools to download the disk images in the form of VMDK and CHD formats
In GCP we have managed service tools like CloudEndure or Velostrate VM migration.
Tools for Application/Server MigrationAWS
1.Server Migration Service
2.Cloud Endure migration
3.VM Import/Export
Azure
1.Site recovery
GCP
Migrate for Anthos
Migrate for Compute Engine
Checklist
1.Do you have any network restrictions?
2.Do you need to connect to on-premise in future also?
3.Do you have any BYOLicense issues?
4.Do you access the hardware requirements?
5.Do you listed the IPtables/firewalls which are already in-place
6.Do you have the backup of application available if things goes wrong?
7.How much downtime u can accept?
Optimize Phase :In this phase we will optimize the environment in below ways
Offload static assets to Cloud storage/S3
Enable auto scaling
Enhance redundancy with different availability zones
Enhanced monitoring with Stackdriver/Cloudwatch
Managed services
How to launch future resources (with less baggage)
Decouple stateful storage from application
Conclusion
With the right expertise and proper planning it is always recommended to move the applications to cloud unless we have hardware compliance restrictions on government regulations for reduced cost, high availability and elasticity.
![Sarath Tamminana](https://i0.wp.com/enminto.com/wp-content/uploads/2021/05/Profile-Image-e1621598995164.jpg?resize=100%2C100&ssl=1)
The founder of TacoBIG.com.He is a Cloud Architect from Bangalore interested in contributing guidance to Cloud related communities. He loves to read books and share knowledge with others. He is keen on understanding Financial wisdom and sharing thoughts on how to achieve financial freedom.