Using the public cloud is mainstream today. Some companies use a single-cloud and some take the multi-cloud approach. Each decision on how to build your cloud strategy and cloud architecture has implications, with cost being one of them.
Implementing a multi-cloud strategy might be more expensive than implementing a single-cloud strategy, considering the efforts required to build and maintain it. However, according to Gartner, 81% of cloud users work with two or more cloud service providers. There are various reasons why organizations choose the multi-cloud approach, and in this article we’ll review some of the reasons and provide some practical tips on how you can optimize your cost when using a multi-cloud approach.
Why do companies choose a multi-cloud model?
- Customer demands: B2B companies often serve customers who are only willing to work with a specific cloud provider. For that reason, they must collaborate with each of the major service providers.
- Risk management: A common saying is “don’t put all your eggs in one basket”. The same goes for your data, computer or network. Although cloud providers build their own high availability solutions, the risk of downtime on their end still exists. For example: the storm that battered Sydney back in June 2016 and caused a failure to the AWS services. For high availability purposes, companies may feel safer dividing their workload between several clouds – so that in the event of a disaster, their service will not be interrupted. Some companies even opt to store replicas of their data on different clouds for backup. Prominent examples include Snapchat and Netflix, which work with both AWS and Google Cloud Platform in order to handle scaling workloads.
- Cloud speciality: Different cloud services offer different benefits, and companies may choose to direct specific workload based on the capabilities of each service. For instance, AWS is known for its IaaS (Infrastructure as a Service) and variety of mature services; Google is great for AI applications and Network Stack; and Azure is famous for end-point security solutions.
Cost implications of going multi-cloud
As it seems, implementing a multi-cloud strategy might be more expensive, considering the efforts required to build and maintain it as we mentioned earlier, but there are some strong commercial benefits to implementing multi-cloud – if (and when) you decide to take this path.
Consider your situation in the on-prem architecture, compared to public cloud architecture. When your data-center is on-prem, you have quite the strong negotiation power, as you designed the architecture yourself and decided which vendors to bring in, in a bidding process. The negotiation power balance shifts when you opt in to a public cloud (with single-cloud strategy), as cloud providers (mega players such as AWS, Google Cloud Platform, and Microsoft Azure) are more strict in their offering and ask that you choose from their predefined packages, in order to enjoy the agility and flexibility that they have to offer. Using a multi-cloud strategy can help you gain back some of that negotiation power.
The term “multi-cloud” is widely used in different contexts, so for the purpose of this article, we would like to focus on “Native Multi-Cloud” which refers to architecture that combines services from multiple cloud providers in order to provide a defined solution. Usually, this means using services on the IaaS, PaaS and FaaS from different cloud vendors.
In order to benefit from the negotiation advantages of the native-multi-cloud approach, we need to make sure that we can cost-effectively :
- Move workloads from one cloud provide to another;
- Connect workloads from different cloud providers.
To achieve the cost-effectiveness, we need to understand the following two main measurements:
- Cost to migrate – How much does it cost to migrate a specific workload from one cloud provider to another?
- Cost to connect – How much does it cost to connect two workloads that reside in different cloud providers?
To make a long story short, the multi-cloud approach has its advantages and disadvantages. But we can definitely say that if you could reduce the “cost to migrate” and “cost to connect” between cloud providers , you will be able to select the best cost-effective service.
As more and more companies today use more than one cloud, we want to examine tactics for making the most out of the multi-cloud approach, in terms of cost optimization efforts. Of course, you still need to optimize your cloud expenses just as you would with a single cloud model, but there is more you can do, as there may be additional savings hiding in this overarching architecture layer beyond each individual cloud. Let’s dive in…
5 tips to building a smart cloud architecture that takes costs in mind
Tip #1: Reduce your “cost to migrate” and “cost to connect”
Moving between cloud providers and/or maintaining multiple providers can be quite a hassle, and the implications of being completely cloud agnostic – if at all possible – may be unacceptable to most organizations. But once you’ve decided to take the multi-cloud path, you should invest time and effort to reduce the “cost to migrate” and “cost to connect” between cloud providers.
This may be achieved, for example, by the following steps:
- Implementing cloud agnostic 3rd party solutions
- Use 3rd party solutions for inter-cloud connectivity
- Use stateless micro services architecture
- Implement Kubernetes for cloud-native micro services orchestration API
- Use cloud providers’ managed services for migration, such as Database Migration Services
Reducing these costs means that you will have a better negotiation leverage with cloud providers.
Tip #2: Know your needs
Cloud service providers often offer packages that decrease flexibility and increase commitment. That’s why it’s important to fully understand your needs in advance and estimate which package or pricing program is right for your business. Make sure to address issues such as reserved instances and the need for dedicated hosts; consult with cloud experts and make a decision that is not only relevant at the moment but also takes into consideration the company’s future plans and goals. Consulting with objective experts will help you find the right balance between your needs, the required flexibility, level of commitment and implicated cost. Luckily, there are “multi-cloud” professional services companies that can help you translate your business needs into a specific cloud service plan, and you can work with them to make more educated decisions.
Tip #3: Choose the right provider(s) for the mission
You’d be amazed to learn how many companies choose their cloud providers based on criteria that have very little to do with their actual business needs. If we ever needed proof that brand awareness is real, the fact that a well-known name is enough for some businesses would be it. Some receive a welcome package with free credit from a provider early on in their journey and never look into it again. If this sounds familiar, it’s time to ask some hard questions, make long-term plans, evaluate the different specialities of each provider, learn how each service will behave on different platforms, and of course, study the payment and service terms. There’s no rule of thumb here and you’ll need to consider what the answer to the above questions means specifically for your company. Yes, there are definitely differences in service levels, features and components, but the idea is to make sure you choose the provider(s) according to your actual needs. No more, no less.
Tip #4: Don’t lose sight of the bigger picture
When evaluating your cloud service provider, it’s easy to get caught up in the process and focus on a few specific details. This may result in choosing the wrong program or service because you failed to step back and examine the big picture. Taking specific scenarios and terms into account is important, but it’s not the be all and end all of cloud cost optimization. What may help you keep your eye on the real prize is working with cloud optimization solutions such as ours. CloudWize enables CloudOps and FinOps teams to proactively avoid unnecessary cloud costs.
Tip #5: Optimize each and every cloud
Whether you choose to work with one cloud service or several, certain elements in each individual cloud will influence the cost and must be considered as well:
- Be aware of any change that might impact your budget significantly
- Transform whatever you learn after analyzing your bill into “active policy”
- Resource mapping: Know and tag your resources to locate ones that are unused or idle
- Shut down servers during inactive times (nights, weekends)
- Carefully consider reserved instances for servers that you plan to use for the long run
- On the other hand, use spot instances for servers that are considered non-critical
Working in a multi-cloud environment is challenging. It requires maintaining several cloud environments, acquiring the expertise on each one, learning best practices and more. This does not come easy and it is not problem-free. It must be properly managed and built. By mapping and prioritizing your needs, you’ll be able to better assign the right cloud service while minimizing cost and risk. While we chose to focus here on multi-cloud environments, many of the above tips remain true no matter which model you choose to work with. And the best tip of all is to remember that nothing is carved in stone and switching between services and models should be done based on your needs exclusively. Don’t follow trends, remain true to your goals, and do the most you can to keep the negotiation leverage in your hands.