WE ENABLE CLOUD-NATIVE ORGANIZATIONS

One cloud is not enough: By now 81% of companies follow Multi-Cloud strategies. That makes it likely, that on top of managing your cloud migration you have to take care of managing the use of multiple cloud platforms as well – but when done right, the benefits outweigh the possible administrative overhead in many ways. We asked our customers and came up with 6 reasons why the Multi-Cloud approach is a winning strategy:

Avoiding Vendor Lock-in

While all hyperscalers offer multiple datacenter locations across the world, which enable companies to spread the risk and ensure availability – even when using only a single provider, the fear of dependency leads a lot of companies to the Multi-Cloud. Looking at the cloud-native landscape of the past couple of years, we see that there are new platforms appearing on the horizon continuously. How can you make sure you are betting on the right horse if you decide to go for a single cloud approach? (Spoiler: You can't and here is why).

Best-of-breed Approach

Companies run a large variety of applications. For example there may be a mobile application along with a heavily frequented e-commerce platform. Then there are internal applications to manage travel expenses and sick days and a new data science team uses collected data to run analyses to optimize resource management and fulfillment. The bigger the company the greater the variation in cloud service requirements. A best-of-breed approach describes an approach where the company uses the best suitable infrastructure type and provider for each workload.

Cloud Migration

Let's think about banks or industrial companies. They have been running software for decades, long before cloud computing even existed. The move to the cloud is an essential step as their business models are often at risk raising the need to innovate fastly. So they have two tasks to accomplish: 1) Build new applications based on cloud infrastructure, to enable scalability and fast adoption to the market with practices like continuous deployment. 2) Migrate existing applications to the cloud to enable automation and gain efficiency. As a result, they will have to deal with a very heterogeneous infrastructure during this cloud migration process. It makes sense to set up a system that is able to cope with multiple platforms and providers straight away. As this prepares for the future, where more cloud platforms will be integrated.

Acquisitions

The big cloud vendors often offer better conditions if they get an exclusive contract in exchange. Therefore, cost-sensitive companies will compromise and choose a single provider, being aware of the vendor lock-in they get themselves into as well as the fact that the chosen cloud platform may not be the best candidate for all their workloads. It still makes sense to be prepared for Multi-Cloud scenarios. Especially fast growing B2C companies aiming for market leadership buy their smaller competitors. While these competitors may operate in the same manner, they may have chosen a different platform to start with. The systems have to be integrated, either by migrating the workloads of the acquired company to match the rest or by enabling the parallel use of multiple platforms. Having thought of this beforehand and planned the system accordingly will help here.

Skill and Employer Attractiveness

Finally, people are different. They have different backgrounds and different preferences. And sometimes it will make sense to go for the platform your employees are best trained in and most familiar with. An
example: It may be cheaper to run applications on IaaS. However, this requires your employees being familiar with setting up and automating infrastructure using infrastructure-as-code. If you don't have these resources, you may be better off investing into a PaaS platform that may be more expensive in infrastructure costs, but better leverages existing developer resources. It is not only the existing skill that matters. It has been found that developers are much happier, if they get to work with their preferred tools. While this may sound like a nice-to-have situation it actually impacts productivity as well as the attractiveness of the employer for new talent.

Cost Efficiency

Depending on the scale of your cloud spend it may be beneficial to spread your applications across different platforms and leverage price differences across providers for different services. Hybrid Cloud setups have even more space for optimization, if they have set up a fine-granular metering and billing solution for their private cloud environments. For smaller companies it may be beneficial to use multiple clouds as vendors provide them with big amounts of free credits that they use before having to pay.

Multi-Clouds have been a widely discussed topic among CIOs and IT managers of large corporations in the past years. The "State of the Cloud 2018" report states that 81% of companies follow a Multi-Cloud strategy. A couple of months later, the "State of DevOps 2018" report finds that 54% of companies already use multiple cloud providers today.

But first things first. Let's discuss, what a Multi-Cloud is, how a Multi-Cloud strategy is different from a Multi-Platform strategy and why companies even bother to implement Multi-Cloud in the first place.


What is Multi-Cloud?

A Multi-Cloud describes a cloud architecture where companies use multiple cloud computing services.

What is Multi-Cloud

We like to compare Multi-Clouds to a flock of sheep. These sheep peacefully co-exist in freedom.
In contrast to an isolated sheep, locked in a cage, which is where companies may find themselves, if they choose to rely on a single cloud provider to take the responsibility for the entire IT infrastructure.


Dimensions Of Cloud Computing Offers

To understand the full extent of this concept, we'll explain how basic cloud infrastructure services can differ. There are different dimensions, based on which companies develop their Multi-Cloud strategies. Two of the main reasons to go for Multi-Cloud are 1) the fear of vendor lock-in to a single provider and 2) a best-of-breed approach that leverages the strengths of each cloud platform platform.

Different Cloud Vendors

Cloud services are offered by different providers. The most popular cloud providers are the so-called "hyperscalers" with Amazon's AWS leading the race, followed by Microsoft Azure and the Google Cloud Platform. These 3 have in common that they are public cloud providers offering a big variety of cloud services from multiple datacenters across the world to companies all over the globe. But there are private cloud vendors as well, like RedHat that provide open-source private cloud platforms such as OpenStack or OpenShift and has recently been acquired by IBM.

Different Cloud Operating Models

Depending on a company's resources and the amount of infrastructure control the company aims for, cloud computing services can be provided in different operating models. There are private or public clouds, depending on whether the datacenter is the company's property or a public datacenter used by multiple companies. There may be shared or dedicated environments within these clouds. For example a company can have a dedicated environment within a publicly available datacenter. Environments can be managed by a managed service provider or unmanaged, meaning that cloud operations are run by internal employees. This is not a full list of possbilities, there are further combinations and variations, which we will discuss in a future blog post.

Different Cloud Service Models

Within offers of different vendors and various operating models, there are different service models in which cloud computing resources are provided to their users. The most common one is "Infrastructure as a Service", defined as follows in O'REILLY's Security Handbook: "Infrastructure as a Service (IaaS) is a cloud computing service model where a provider delivers virtualized IT infrastructure resources over the internet". Another, very powerful service model is "Platform as a Service" (PaaS). Instead of provisioning individual infrastructure components like virtual machines, routers, storage, as done in IaaS, developers can directly deploy, manage and scale cloud-native applications to the cloud while the platform takes care of the underlying infrastructure. "Container as a Service" (CaaS) has gained in importance with the rise of Kubernetes. It allows users to orchestrate container clusters.

Different Cloud Platforms

Cloud platforms are specific implementations of cloud service models. OpenStack for example, is an open-source IaaS platform. There are managed OpenStack providers, but as it is open-source, OpenStack can be downloaded and run by the company in the company's datacenters with no external provider involved. At meshcloud, we call a specific OpenStack installation a platform instance. A company could run multiple OpenStack installations in different datacenters. EC2 is the OpenStack equivalent for virtual machines, provided by AWS. However, as EC2 is a proprietary technology it is only available in the AWS public cloud. Cloud Foundry is an open-source PaaS technology, Heroku the proprietary analog.


To avoid confusion:

Multi-Cloud vs. Multi-Platform

If you do Multi-Cloud, you also do Multi-Platform. However, there may be cases in which you do Multi-Platform within a single cloud environment. Let's take Google Cloud as an example. You can only use Google Cloud, which is considered Single-Cloud, but use multiple platforms within that environment, e.g. GKE, the Google Kubernetes Engine together with the Google Compute Engine. The terms are often used synonymously. The mixture of different platforms (provided by different vendors, run in different operating models) is what we mostly experience, when talking to our customers. A research report, published by the Cloud Foundry Foundation supports this observation.


Why You Should Care About Multi-Cloud

Once you work in a company of a certain size, you will eventually end up doing Multi-Cloud. Why? As soon as you ask yourself the question "Which Cloud Platform is the right choice for my company?" you will realize that there is no single platform that can solve all your needs. Different development teams have different service needs and preferences, different kinds of data underly different legal regulations, different clouds have different prices – there is a list of reasons why companies end up using Multi-Clouds.
So why not embrace Multi-Cloud right away, choose the best tools for each job, satisfy developers by providing their preferred services and preserve independence by freedom of choice a.k.a keep sheep happy.

The Upside of Multi-Cloud: A Flourishing Cloud-Native Ecosystem

With the world turning to Multi-Cloud or Multi-Platform approaches, there is another observation worth to discuss: There is an amazing innovative ecosystem evolving related to the Multi-Cloud world. It is marked by cooperation and openness, aiming for great technical solutions to challenges that enterprises face when running cloud-native applications at scale. Last year I took part in the Cloud Foundry Summit in Basel. And while I go to a lot of tech conferences throughout the year, this really was an impressive experience. Nowhere else, have I experienced such a spirit and ambition to develop innovative cloud products in collaboration of (often competing) enterprises, vendors or individual developers.

The Challenge of Multi-Cloud: Increasing Complexity and the Lack of Process Adoption

Of course, not everything about Multi-Clouds is great. Especially large enterprises, whose processes and capacity of change often reminds us of large tankers rather than the speedboat needed to keep up with the dynamics of the market, often face major challenges when moving to the cloud. In the worst case the result is a large investment to new technologies with no notable improvements, when it comes to software delivery performance or generally speaking, the development of innovative digital products. This happens if administrative processes are not adopted to the cloud-native world. If a developer has to wait for 2 weeks to provision a cloud account, because the process leads through multiple manual approval steps with different departments involved, the company does not leverage the benefits that cloud technologies are supposed to bring in the first place.

… but there where is a will there's a way

Thankfully, this doesn't mean that large enterprises, with complex processes and potentially strong regulations or compliance requirements cannot benefit from Multi-Clouds or cloud in general. Multi-Cloud-Management systems help companies to handle complexity, fulfill regulatory requirements and leverage the cloud to the fullest. Back to our sheep analogy, they are the shepherds taking care of the sheep. meshcloud integrates multiple cloud platforms to a self-service user interface and streamlines administrative workflows. Developers benefit from easy access to their prefered cloud-native technologies, while transparency is provided, in terms of access control, permissions or cost, to ensure the necessary amount of control.
Click here to learn more about meshcloud's Multi-Cloud Portal.