BACKGROUND IMAGE: iSTOCK/GETTY IMAGES
Vendors want enterprises to use their cloud platform, but migrating data to those platforms is not always easy.
To get enterprises to move to the cloud, providers such as AWS, Microsoft and Google offer customers free trial tiers or low-cost, streamlined migration services. And there is ample financial motivation for cloud vendors to develop sophisticated, specialized tools that target a range of cloud migration strategies.
Enterprises can choose from a large variety of cloud migration services, which makes it difficult to determine which one works best for their particular situation. Let's untangle the cloud migration mess and look at the range of offerings from the major cloud vendors, the problems they are designed to solve and the scenarios where they can best be used.
Break down the main cloud migration categories
Vendors have customized their services for different phases of the migration process and different needs. One way to understand these categories is to re-examine the definition of cloud migration -- the process of moving data, applications or other business elements to a cloud computing environment.
A move to the cloud entails an overall process -- a metamigration -- that includes the appropriate data and app migration steps. The various stages of a cloud migration fall into four categories:
- Migration planning: This includes portfolio discovery, a look at application architecture and financial ROI analysis. Assess all applications and associated data; identify the infrastructure used to operate those applications; map app dependencies; and select and prioritize those that should move to the cloud.
- Data migration: Enterprises can choose to copy on-premises data sets to a provider's physical appliance, which is then sent to the cloud provider and uploaded into the cloud. This is usually the best method to migrate large volumes of data in bulk. The alternative is to copy data over a high-speed network link and use a migration service to verify data integrity.
- Server migration: This involves packaging and transferring virtualized on-premises workloads to the cloud, where they are reconstituted as compute instances. This is often called a lift-and-shift or rehosting process. It's the fastest way to migrate applications, but the process requires proper instance sizing and configuration optimization to meet performance and user experience goals.
- Database migration: This process entails several steps, including data replication and loading, to move multifaceted databases to cloud databases. Cloud database migration services only work with a subset of database pairs because of the unique characteristics of database products and the schema conversions. Examples include on-premises Oracle to Amazon Aurora or on-premises MongoDB to Azure Cosmos DB.
A breakdown of cloud migration services
The following table lists the available cloud migration services in each of the categories above.
Usage scenarios and recommendations
Data transfer services -- bulk and over-network -- are the most basic options since they can be used in various situations, including the migration of unstructured content, application data, VM images, compressed disk archives or database content.
Network transfers are convenient but can be a slow option for huge repositories, especially with poor network links. They work best for organizations that need a modest-sized transfer and have a physical and dedicated link to the cloud, using AWS Direct Connect, Azure ExpressRoute or Google Cloud Interconnect.
Cloud migration services and appliances, such as AWS Storage Gateway and Azure Data Box Edge make remote storage services look like a network file share, which can simplify the migration process. A bulk transfer appliance is generally a better option to copy tens of terabytes or more because it is cheaper than the alternative. In contrast, a network data copy service, like AWS DataSync, can be more expensive for the same capacity as the smallest AWS Snowball appliance.
There are some automation options for lift-and-shift migrations, but it's critical to understand app performance and resource requirements before the move. Migrating composite applications that rely on databases can be partially automated with database migration services, but users will still need to manually fix any of a number of problems that may arise because of a given tool's conversion limitations. Nevertheless, migration services simplify the process without downtime before system deployment.
Unfortunately, there currently aren't any tools that can make design decisions for organizations that want to modify existing applications to use native cloud services. Instead, rely on architectural blueprints -- AWS has a particularly extensive collection -- and guidelines from the cloud providers, along with third-party consulting services, for replatforming scenarios.