Multi-cloud architectures are becoming more and more common. Indeed, more than 90% of organizations have already adopted multi-cloud solutions. Organizations are embracing designs which span multiple cloud vendors for a variety of reasons, however they also must contend with the implications of this choice. What are multi-cloud architectures, why are so many organizations are adopting them, and what can we do to manage the complexity?
What is multi-cloud architecture?
Multi-cloud architectures involve more than one public cloud provider. They often involve various on-premise resources as well. At their simplest, multi-cloud implementations may involve various “as a service” offerings hosted across multiple providers, often transparently to the organization. Other multi-cloud solutions implement offerings from the “big three” (Azure, AWS, Google) or other public cloud vendors. Many sophisticated implementations deliberately choose to use multiple cloud vendors as part of a best-of-breed philosophy, to increase redundancy, or a variety of other reasons.
Why might I consider a multi-cloud architecture?
Organizations consider multi-cloud architectures for a variety of reasons:
- Redundancy – Multi-cloud architectures allow organizations to build in additional resiliency. In addition to geographic redundancy, these designs allow organizations to host services across cloud providers, further minimizing the risk of downtime.
- Avoiding Vendor Lock-In – Many organizations are actively trying to avoid vendor lock-in. By distributing loads across vendors and architecting solutions to be portable, these folks can ensure that they are not tied to any one vendor.
- Best-of-Breed – Similarly, many organizations pursue multi-cloud architectures as part of a best-of-breed approach, picking the best component for every facet of a solution.
- Cost – Although cloud components are often priced similarly between vendors, there can be pricing benefits to “cherry picking” each solution, especially for more bleeding edge technologies or when volume licensing comes into play.
Regardless of the specific reasons that leads any organization to a multi-cloud architecture, they are looking to make the most of each cloud component.
What do I need to consider?
There are many factors to consider when evaluating multi-cloud architectures.
Pricing – It is critically important to fully model pricing for any proposed solution. Consider the cost to load, download, and store your data as well as the typical price per transition. Other factors such as logging or the use of API gateways can drastically increase costs.
Security – It goes without saying that securing two clouds is more than twice as difficult as securing one. Make sure that your designs encrypt the data at transit and while at rest by incorporating standard encryption, VPN tunnels, TLS, etc.
API Gateways – The use of lightweight API gateways provides a single point to centralize access, check security, and log access while providing a simple, unified access point for various APIs and services used.
Common Identity Mechanism – The use of a common identity mechanism drastically simplifies the management of users and access between cloud and on-premise systems.
Common Technologies – Establishing and enforcing a common technology stack between cloud (or on-premise!) environments reduces both the initial cost to develop and the ongoing maintenance costs. Some standards, such as Kubernetes, can even help maintain portability between different cloud environments.
Your Friend, CI/CD – Investing in Continuous Improvement / Continuous Delivery allows your teams to figure out the complexity of deploying to the cloud once and use it over and over.
Why not multi-cloud?
Finally, it’s important to understand that multi-cloud architectures are not right for everyone. They are complex technically, can complicate compliance and auditing, and require more management. Modeling and predicting cloud spend can be much more complicated. They can even push you into more sophisticated identity or CI/CD solutions that you might otherwise need.
What does it mean to me?
Multi-cloud designs can provide an abundance of benefits, from cost to flexibility to resiliency. Whether adopted deliberately or evolved based on a complex combination of vendors and solutions, you likely already find yourself in a multi-cloud environment and the guidelines above can help you manage them. If you’d like to talk to RevGen about your environment, contact us for a quick chat.
Noah Benedict leads RevGen’s Digital Enablement practice. He is passionate about using technology to advance business and empower his clients to embrace new opportunities.