Cloud computing now appears to be “business as usual” for many enterprises, with most using at least one cloud in some form. We have crossed the “chasm” for cloud computing in Canada – it’s no longer just the early adopters that are deploying cloud solutions.
Now that the “cloudification” decision has been made, many companies just want to get it over with. They’ve created their cloud-first strategy, they have vendor promises of strong security (even better than in-house systems) and the issue of data sovereignty is less of a problem now that cloud data centres are available in Canada.
So, what’s holding up the stampede to the cloud? One roadblock is the need for better migration methods and tools. Of course, a lack of expertise and experience is also a problem, and more published success stories would be a bonus.
Cloud migration projects come in many flavours. The big question is how to complete the migration quickly and efficiently without business disruption. Here are a few of my thoughts on this topic.
First, set clear targets
There is an old saying: If you don’t know where you’re going, then any road will get you there. This applies as much to cloud migration as to any other technology transformation. It is important to know your strategic goals and success criteria at the enterprise level, not just for the project itself.
Therefore, the first step for any migration project, especially one that involves partnering with a service provider, is to establish a clear scope and achievable goals. Do you want to migrate a single application or move your entire application portfolio? Is the objective just to save money or is it the underpinnings of a business-oriented digital transformation?
Next, plan in context
The culture and policies for IT in general and for the target application provide a context within which the migration plan can be developed. The current IT situation is also relevant – is the project a new application for the cloud (perhaps it is a shadow IT project)? Is it a lift and shift into a new cloud environment, or is it part of a data centre transformation? Are any existing cloud services being used, such as for security, management or resilience, that can be adopted? Are you limited to using existing providers or will a procurement process be needed?
What will the cloud technical architecture look like – a private cloud, a public cloud, a hybrid cloud or a multi-cloud combination? Since the existing and target architectures can shape the migration plan, having an asset inventory and documented assumptions, plans and requirements is invaluable.
Finally, use a stepwise migration
A cloud migration project can lead to a digital transformation, but not all cloud migrations are necessarily transformative. You should determine, at an early stage, which scenario you are dealing with.
If you have a “cloud first” strategy, then you will need to look at cloud options for every project, some of which may be primarily for infrastructure upgrades or cost avoidance. The project could be a new system (migration from a manual activity to a cloud service), modernization of an existing application, a lift-and-shift of an existing application, or a full re-development. Many cloud migration decisions are not really very different from the choices available for in-house deployments. The more you understand the business requirements, the easier it will be to formulate the migration plan.
In all cases, common sense prevails – avoid a “big bang” cutover, do sufficient testing and do not lock-in to a single service provider if possible.
Tools of the trade
Cloud computing is characterized by IT process automation – self-service subscription, immediate scaling, pay-as-you-go billing, etc. It is not surprising that migration automation tools are beginning to emerge in the marketplace.
For example, in September Microsoft announced Azure Migrate which they state is “a new service that provides the guidance, insights, and mechanisms needed to assist you in migrating to Azure.” They go on to say that “Using an appliance-based approach, Azure Migrate provides:
- Discovery and assessment for on-premises virtual machines;
- In-built dependency mapping for high-confidence discovery of multi-tier applications;
- Intelligent rightsizing to Azure virtual machines;
- Compatibility reporting with guidelines for remediating potential issues; and
- Integration with Azure Database Migration Service for database discovery and migration.”
Google also has migration support with their joint CloudEndure/Google Cloud Platform VM Migration Service which migrates virtual machines and physical servers from an existing environment into the Google Cloud Platform.
Amazon Web Services provides some tools to assist with migrations and also lists third-party applications in its Amazon Marketplace. One recent addition is a SaaS platform offered by Tidal Migrations of Toronto. The Tidal Migrations toolset enables clients to:
- Create dynamic application and server inventories (or import your own data sources);
- Perform cloud readiness assessments for existing applications;
- Automate pre-migration remediation activities; and
- Plan the application and server migration.
A key feature of the Tidal Migrations product is that the information can be updated dynamically – separate spreadsheets or manual documentation are not required.
Successfully completing a cloud migration is good for all enterprise stakeholders as well as helping to popularize cloud as a technology. The faster the migration can be completed, the sooner the benefits of the cloud can be realized. It makes sense for anyone moving to the cloud to look for tools that can automate as much of the process as possible.
This is what I think. How are you migrating your applications?