Multi Cloud Enterprise Deployment Pattern

Introduction

Enterprises are expanding their IT operations to match with the consumer demand and to become the leader in their respective industries. Cloud has provided a reliable platform to these enterprises to run their business operations without much hassle. Few years ago, Amazon Web Services or AWS was the only choice people had when they want to deploy their applications in a cloud environment. But the market has been changed and there are many other vendors who offers cloud infrastructure at a competitive price. This allowed the enterprises to choose the best cloud environment for a given task rather than locking into a single vendor.

Advantages

Instead of running all your business functionality in a single cloud or on-premise platform, running on multiple clouds give enterprises many advantages. Here are few advantages.

Architecture

Maintaining a multi cloud deployment is not a trivial task. You need to architect the deployment such that it is maintainable. Otherwise you will lose the purpose of setting up the multi cloud stretegy in the first place. Given below is a high level solutions architecture on how you can deploy your applications within a multi cloud environment.

Multi-Cloud-Enterprise-Deployment-Pattern

As depicted in the above figure, it is best to have a master deployment which acts as the leader of the overall deployment. This master deployment can be hosted on-premise or in a cloud infrastructure. In this master deployment, you should have the components like

In addition to this master deployment, there can be multiple of worker deployments which contains

The above architecture explains at a high level which type of components can run on which parts of the deployment. Let’s understand this better with a reference architecture where WSO2 API Manager is deployed in a multi cloud deployment architecture.

WSO2 API Manager Multi Cloud Deployment

As depicted in the above figure, management components of the WSO2 API Manager are deployed in the master deployment. This can be a deployment on an on-premise DC, private cloud or a public (shared) cloud. The components in the master deployment are

Additionally, you can have worker deployments across different cloud environments which contains the APIM Gateway component.

Usage Patterns

Multi cloud deployment architecture can be used for different use cases. Here are some of the usage patterns.

Challenges

While there are many advantages in the multi cloud strategy, there are challenges which needs to be properly managed. Here are some disadvantages

Conclusion

Multi-cloud strategy is something every enterprise is looking into because of the advantages it brings around the availability, pricing and freedom from vendor-locking. In the same time, it is not coming without it’s own challenges. With the multi cloud strategies becoming more main stream, these challenges will be addressed through proper solutions.