Public clouds, which were used by 91% of businesses as of 2019, may dominate the cloud landscape for now. But hybrid cloud adoption is rising as well, due likely to the cost-pressures that companies face when using the public cloud alone, as well as a desire to gain greater security, performance and agility than the public cloud can deliver on its own. If you currently run all of your workloads in a public cloud (or in multiple public clouds), there's a decent chance you'll be wanting to migrate them to a hybrid cloud environment in the not-too-distant future.
Here's a primer on how to go about the public-to-hybrid cloud migration process in a way that will allow you to keep costs low while also meeting performance and security goals.
Why Move from Public Cloud to a Hybrid Cloud Environment?
There are a variety of reasons why organizations might consider moving from a cloud strategy that is rooted in the public cloud alone to a hybrid architecture that blends public cloud services and private infrastructure together.
One is cost and budgeting. It's easy to move workloads into the public cloud. It's harder to plant or and optimize cloud costs, given the complex menu of fees that public cloud vendors charge. Although public cloud in the past was pitched as a way to simplify budgeting by minimizing the need for large capital expenditures on IT infrastructure, the reality that companies face once they move into the public cloud is that it's hard to know exactly how much it's going to cost from month to month. Some hybrid architectures simplify budgeting by reducing or eliminating fluctuating fees. They may also offer a lower total cost of ownership, depending on how you build and manage them.
Public cloud architectures also have clear security and performance limitations. No matter how hard you work to secure workloads in the public cloud with IAM policies and firewalls, there's no escaping the fact that your applications and data are always connected at least indirectly to the Internet. All it takes is one misconfiguration to expose sensitive data to unauthorized parties. In a hybrid environment, in contrast, it's usually possible to disconnect totally from the internet if you want to.
Performance, too, may be a reason to move to a hybrid cloud environment. By making it easier to locate workloads close to end users, hybrid clouds can reduce latency and enhance reliability. In a world where the difference of a few milliseconds increasingly matters, hybrid architectures are becoming more and more attractive.
Moving from Public to a Hybrid Cloud Environment
Regardless of why you want to move from a public to a hybrid cloud environment, the steps that the migration entails are essentially the same.
1. Choose your hybrid cloud software.
The first key step is determining which software framework or platform you'll use to build your hybrid cloud.
There are a variety of options here. The public cloud vendors have their solutions: AWS Outposts, Azure Stack and Arc and Google Anthos. VMware Cloud Foundation is another option. If you prefer open source, you could choose a solution like Eucalyptus, provided you are migrating from AWS into a hybrid cloud (Eucalyptus offers hybrid cloud compatibility only with AWS).
The best framework for you will depend on two key factors:
- Which public cloud or clouds you use currently: Some hybrid cloud frameworks are compatible only with certain public clouds. Outposts works only with AWS; Azure Stack and Arc work only with Azure. Thus, if you need to integrate with other public clouds, these aren't good options for you. Anthos and VMware are generally compatible with any type of public-cloud integration, although they come with their own caveats.
- What your hybrid cloud goals are: If you are moving to a hybrid model primarily to minimize costs, a solution like Eucalyptus may offer the best savings. If agility is your priority, a platform like Anthos, which can integrate with a wide array of cloud services, may be the best choice. If the ability to use public cloud management tools for your hybrid is a top goal, a solution like Azure Stack and Outposts will let you do that.
2. Decide what to run where.
You'll next have to determine how to structure your workloads within your hybrid cloud environment. In other words, you'll have to decide which applications and data will remain in the public cloud and which will move on-premises.
In some cases, making this decision will be easy. You may need to keep certain data or applications on your own hardware for compliance reasons. Other workloads may have to stay in the public cloud because they depend on services (such as Amazon Redshift, which is not currently supported by Outposts) that can't run in a private environment.
For workloads that could run in either the public or the private part of your hybrid cloud, you'll want to weigh factors like cost and performance to determine what to place where. If your hybrid cloud environment charges you for managing data that is stored on your own infrastructure, maybe it's worth keeping that data in the public cloud, since you'll be paying fees for it either way. If you have workloads that need to scale rapidly, they may be a better fit for the public cloud, where resource allocations can be auto-scaled very quickly.
3. Plan a hybrid cloud management strategy.
Before you deploy production workloads on your hybrid cloud, it's important to make sure you're ready to manage the environment.
Some hybrid cloud platforms, like Outposts, come with built-in deployment and management services. Others leave support mostly up to the user. If that's the case for your platform, you'll want to ensure that your team has the expertise it needs to manage the hybrid environment.
In some cases, teams that already know how to use public cloud management tools will be able to adapt to hybrid cloud environments quite readily, because platforms like Azure Stack and Outposts use the same management tools for hybrid environments that they do in a purely public cloud architecture. Others, like Anthos, will require learning some new tools and concepts.
4. Migrate your workloads.
With your hybrid architecture and support strategy fully planned, you can begin migrating applications and data from the public cloud into the hybrid environment.
In general, a well-designed hybrid cloud will make it possible to perform the migration with little or no refactoring. Virtual machine images and containers that run in a public cloud should be able to move to a hybrid environment hosted on-premises with no major changes. You may need to modify IAM policies and infrastructure-as-code templates to fit the hybrid environment, although some hybrid cloud frameworks support the same configurations that you're already using in the public cloud.
Workload migration speed is a factor to consider, too. Most workloads are small enough that you can move them over the network in a reasonable amount of time. But if you have a large volume of data that you need to get out of the public cloud and into a hybrid cloud, data transfer over the network could take weeks. You'll want to budget your time accordingly.
5. Evolve and improve your hybrid architecture.
The final step in migrating to a hybrid architecture is the ongoing process of continuous improvement. Once you have production workloads running in your hybrid cloud, you should continuously look for ways to get more value out of your hybrid cloud strategy.
That might entail taking advantage of new types of hybrid cloud services as they become available. (Solutions like Azure Arc and Outposts are currently evolving rapidly, with support for additional types of public cloud integrations still to come.) It could also involve looking for ways to optimize hybrid cloud performance and cost by restructuring parts of your workloads. And you'll want to plan ahead so you can grow your private infrastructure as needed, to avoid running out of compute and storage capacity.
Moving from a public cloud strategy to a hybrid cloud environment requires more than simply building a hybrid cloud using whichever method is most obvious, then lifting and shifting your workloads into it. It's important to evaluate the different hybrid cloud software platforms available, determine which one is the best fit for your needs, and then assess how to arrange your workloads to achieve your hybrid cloud goals.
You should also strive to improve upon your hybrid strategy continuously because if there's one thing that's clear in the world of cloud computing, it's that whatever is ideal today may not be the best solution tomorrow.