Cloud computing has become an essential platform for organizations to harness the flexibility, agility, and power of the internet to store, manage and access their applications and data. In 2021, Gartner predicted “over 75% of mid-size and large organizations will have adopted a multi-cloud/or hybrid IT strategy.”
So, why multi-cloud? What are the benefits and drawbacks of implementing a multi-cloud strategy, and when should it be adopted by an organization as it makes its transition to a cloud first approach?
What is multi-cloud?
Multi-cloud involves using multiple public cloud providers for different purposes, such as redundancy, cost optimization, and workload specific needs.
Multi-cloud can be agnostic, using open source, cloud-native technologies, such as Kubernetes (which is supported by all public cloud providers), Platform-as-a-Service (PaaS) and Infrastructure-as-a-Service (IaaS). It can also be as simple as consuming multiple Software-as-Service (SaaS) vendors. These services can be integrated in a tightly or loosely coupled approach, and a well-designed Multicloud solution should consider the network, performance, security, operational management, and total cost of ownership (TCO).
When we talk about multi-cloud, there is a tendency to define workloads as being portable across multiple cloud providers, but this may not necessarily be the case – there may be a specific service available within a particular cloud provider that meets a specific need. The choice between building cloud agnostic solutions versus cloud provider specific solutions will depend on functional and non-functional requirements, consumer preference and business necessity.
A few years back, there was a popular trend towards the concept of cloud brokers. A broker would be an intermediary service between the consumer and public cloud providers. Typically, this was implemented using a management console and an Application Programming Interface (API), which provided a centralized platform for resource provisioning and management.
While this system worked well for traditional IaaS services, these platforms began to struggle to keep up as public cloud providers brought more services to the market. Deployment and management of using the lowest common denominator no longer met the agility and speed of innovation needed for a competitive edge.
With the maturity of cloud agnostic and cloud-native, containerized platforms (such as Kubernetes), as well as cloud agnostic Infrastructure-as-Code (IaC) tools (such as Terraform), the popularity of cloud brokers has waned. However, the need to supply a “single pane of glass” for operational management of Multicloud solutions is still a key consideration.
Benefits of multi-cloud?
Resilience and redundancy: One of the most significant benefits of a Multicloud strategy is improved resilience and redundancy as, by using multiple cloud providers, organizations can spread their workloads across different environments. This reduces the risk of exposure to a single point of failure. Moreover, in the event of a failure or outage, natural disaster or geographical conflict, workloads can be shifted to a different provider, thus improving business continuity.
Greater flexibility and choice: A multi-cloud approach offers greater flexibility and choice as different cloud providers have different strengths and weaknesses. By using multiple cloud providers, organizations can choose the best solution for each workload, enabling “best of breed.”
Performance: Organizations can leverage cloud provider specific features and services to yield performance improvements. For example, it is possible to use one provider for computer intensive workloads and another for storage intensive workloads. This can improve the overall performance of the architecture.
Global reach: By leveraging multiple cloud providers in different global regions, an organization can maintain global reach by deploying workloads closer to its end-users, reducing latency, improving performance, and meeting any geographical regulatory and compliance requirements.
Enhanced security & compliance: Different cloud providers have different security and compliance features. By using multiple providers organizations can choose the best for their specific needs. For example, an organization may have country specific data sovereignty requirements – by leveraging different clouds, it is possible to ensure the appropriate geographic locations to meet business obligations.
Alleviates vendor lock-in: A cloud agnostic, multi-cloud approach minimizes vendor lock-in as workloads are more portable. This gives an organization more flexibility to migrate workloads across cloud providers should this situation arise.
Challenges when implementing multi-cloud
Complexity: The primary challenge of a multi-cloud strategy is increased complexity, as managing multiple cloud providers requires specialized skills and expertise. This can be challenging for organizations that do not have in-house cloud expertise or have limited resources. Additionally, integrating multiple cloud providers can be complicated, as different providers may have different APIs, management tools, and configurations.
Additional design considerations: When defining a multi-cloud solution, it is essential to consider network latency, data movement, security, orchestration, and operation management, including identity and access management (IAM). For example, network connectivity between clouds may introduce unexpected latency in workloads, which impacts performance. Also, if there is large scale data transfer between clouds, this will have a cost impact as public cloud providers charge for data egress.
Vendor lock-in when using cloud provider-specific services: Careful consideration should be made if an organization chooses to use specific cloud provider services as part of its workload. Unlike the cloud agnostic approach, using specific cloud services may make it more challenging to switch providers or migrate workloads in the future. This can limit an organization’s flexibility and choice and potentially increase costs in the long term.
Data security and compliance: While enhanced security and compliance is a multi-cloud benefit, there are also drawbacks regarding data security and compliance. Public cloud providers have different security and compliance features, and organizations need to ensure that their data is secure and compliant across all providers. This can be challenging due to varying standards, making it difficult to ensure consistent security and compliance processes and procedures.
Management and governance: Managing and governing multi-cloud can be difficult as organizations need to ensure they have the appropriate governance in place to fully document, understand, and manage their global infrastructure and software. Cloud providers may have different processes, management, monitoring deployment and governance tools – investment is required in training, processes, and a common set of tooling.
Cost control: Deploying and managing workloads across multiple clouds is complex and time-consuming, which can lead to higher operational costs. Different cloud providers have varying pricing models and data transfer fees, which can make costs difficult to predict and control. Managing multiple contracts and service level agreements can add additional administrative overhead and expense.
Is multi-cloud the right choice?
Infrastructure and software development decisions are trade-offs, based on workload and organizational functional and non-functional requirements. A multi-cloud strategy is no different, as an organization may not be ready or necessarily benefit from a multi-cloud approach. Two key questions that need answered are:
- “Are the benefits gained from a cloud agnostic approach strategically important?”
- “Are the strategic risks to an organization associated with relying on a single public cloud vendor relatively high?”
If the answer to one or both questions is yes, then an organization must determine if it has the capability and maturity to manage a multi-cloud environment. If not, then there is a compelling argument that a multi-cloud strategy may not be necessary.
Mastering how to manage a single cloud is not easy – mastering across multiple clouds is significantly more complex. This requires investment in skills and experienced personnel who understand the nuances and particularities of each cloud. If the operational capability is not available, an organization runs the risk of inverting any benefits of multi-cloud.
All public cloud providers offer the same lowest common denominator services of compute, network, and storage. Workloads that take advantage of those basic services can be containerized and developed as cloud agnostic. Organizations with sufficient expertise across different clouds can still take advantage of unique services of different clouds by building certain applications, or components, to run on specific cloud provider platforms. Again, it depends on the maturity of the organization, functional and nonfunctional requirements to meet business needs.
C-suite executives often view a multi-cloud strategy as an attractive proposition. However, this may conflict with operational and management priorities. This is especially significant if development, operational capacity and expertise are limited. Whether a multi-cloud strategy is right for an organization depends on the business, technical priorities and resources. Although there is a strong trend towards multi-cloud, it is not always the most appropriate choice.
However, under the right circumstances, multi-cloud can reduce TCO and improve performance, reliability, security, and flexibility. Yet, under the wrong circumstances, the opposite is also true.
Through smart adoption of the Infosys Cobalt suite of tools, we are helping organizations of all types plan and drive forward their cloud aspirations, and to generate efficiencies at scale through a well-architected cloud approach. Want to hear more about our success stories? Please get in touch and we would be delighted to share more with you.