To avoid vendor lock-in and implement the most suitable solutions, companies are increasingly using multiple cloud services to deploy their applications.
A report revealed that in 2020, 93 percent of enterprises already have a multi-cloud strategy, and most companies have an average of 4 clouds in use today. The global multi-cloud management market is expected to reach $7 billion, growing at a CAGR of 31% between 2017-2023.
The COVID-19 pandemic and the widespread turn to remote work it inspired made moving to the cloud even more relevant. According to Flexera, at least half of companies are accelerating their cloud plans right now, and 59% of enterprises say that their cloud usage will exceed prior plans due to the pandemic.
Even if many businesses are already deploying their applications to multiple cloud services, choosing the best options and managing cloud instances is often tricky.
Why is multi-cloud deployment so difficult?
Deploying cloud platforms and services from multiple vendors is a complex process riddled with technical challenges. It’s common to experience difficulties already at the stage of choosing between public cloud alternatives.
Moreover, once you make a choice, it’s very difficult to migrate or roll-back to another provider. And while you’re trying to achieve a balance between cost and performance, the provider is constantly evolving. Whoever is at the top today will not be the best option for you in two years.
Here are a few common problems you might experience at this point:
1. Unclear cost implications
Comparing providers and understanding the cost implications of each option is challenging. More than half of the companies surveyed in the 2020 State of the Cloud Survey admitted that this is their biggest challenge in multi-cloud adoption.
Why are so many businesses having trouble assessing the cost of public clouds? One good reason is the lack of visibility in offers (more on that in the next point). But that’s just the tip of the iceberg. Consider that costs aren’t static and tend to change over time – and so do your business needs. Optimizing these costs against the constantly evolving business requirements in real-time is practically impossible today.
2. Lack of visibility
If you ever tried to compare different cloud options, you know this pain.By failing to identify and deploy the right cloud environment, businesses risk ending up with unused cloud resources – wasting even as much as 30% of their cloud spend!
When comparing different clouds, expect to face massive differences in hosting and services. Cloud providers often make that task even more difficult by providing you with confusing pricing pages. Some of them might even contain data that doesn’t correspond with reality.
Here’s an example of how unpredictable CPU utilization can be within the same vendor at different times (Amazon t2-2x large: 8 virtual cores), after several idle CPU periods.
Source: CAST AI Benchmarks
3. Hidden details
Then there are all the things that surprise you, even when you thought you knew everything:
- One vCPU core might not work similarly to the same core listed on a different plan.
- Compute as a service also makes comparing some options impossible, think Lambda serverless functions from AWS.
- Engineers might find it hard to select the right VM shapes due to multiple shape options or even multiple options within the same shapes. RAM everybody?
Also, expect default trade-offs in terms of the software provided by cloud vendors. Each provider comes with a set of software solutions that are generally similar but still unique. What you get from AWS might not be available in Google Cloud, and vice versa.
So what’s the conclusion to all this?
Comparing various cloud providers in detail reveals a very different story than what their salespeople and marketers tell us.
How to compare cloud vendors
CAST AI Cloud Compare is a free tool that helps businesses to identify the most cost-effective and performant cloud options matching their requirements.
Find the best price and performance match, and – in later iterations of the tool – move seamlessly between different cloud providers to unlock further value and deliver an uninterrupted experience to end-users.
Benefits of CAST AI:
- Compare cloud services in detail – improve your understanding of different cloud offers with helpful details,
- Gain more visibility into your cloud expenses – find out whether you’re overspending on a cloud platform,
- Boost the performance and endurance – get VMs that sustain intense and prolonged CPU utilization,
- Choose from more options – explore alternatives for your cloud deployment in terms of cost, performance, and geography,
- Optimize the costs of cloud services – equip your engineers with the insights they need to balance costs and performance of cloud instances.
Here’s what you get in CAST AI Cloud Compare
To calculate the balance between performance and price, our data scientists came up with a CAST choice – a coefficient based on blended performance of CPU and RAM, with determined workload in hours and cost (the hourly rate of various providers). We are doing this in 80+ cloud regions and more than 200 compute shapes, over 5 clouds: AWS, Google Cloud, Azure, Oracle Cloud and Digital Ocean.
Example: Cloud Compare for 3 and 4 vCPUs between AWS, Google Cloud, Azure and Oracle Cloud.
‘CAST AI CHOICE’, our best cost / performance suggestion, (Oracle’s VM.Standard.E2.4) is not the best price, that would be Google’s e2-highcpu-4. But for about $15 per month additional (or about 21% more), Oracle Cloud provides double the performance (as a blend of raw CPU and RAM performance). This says it all.
Below are a few example of the challenge to compare clouds:
Example 1: CPU capacity limits in burstable performance instances
Such instances offer a baseline level of CPU performance capable of bursting to a higher level when required by your workload.
But here’s what we discovered. While the compute capacity increases linearly during the first four hours, after that it becomes much more limited. You can note a fracture point in each graph – this is where the burstable instance starts showing low performance.
Source: CAST.AI. Linear increase of raw compute during the first 4 hours. After 4 hours, the amount of available compute reduces almost by 90% until the end of the day.
Example 2: CPU utilization differences between vendors
We also discovered that CPU utilization can vary greatly between different vendors – and sometimes even within one vendor depending on certain options selected by the developer.
Example 3: Measuring cloud endurance
To calculate the endurance coefficient we divided the total number of events by the maximum compute power of particular VMs (maximum value times duration). Instances that achieve stable performance get close to 100, which is the best value. Instances that have random performance at all times get closer to 0 value.
Check out this example where the DigitalOcean’s s1_1 machine achieved the endurance coefficient of 0.97107 (97%), while AWS’s t3_medium_st achieved only a weirdly shaped 0.43152 (43%). t3_medium_st is a burstable instance.
Example 4: Frequency – claimed vs. real
Taking a closer look at the frequency of the cloud service provided by Digital Ocean revealed a small but unexpected disparity between the claimed frequency and the actual level.
Example 5: Latency by region
The speed at which data is transferred from one location to another is critical to delivering lightning-quick experiences to end-users. But migrating to the cloud makes the issue of network latency increasingly complex. Here are the differences in latency across 5 cloud providers, with a closer look at the European case.
Optimize cloud cost and performance
Benchmarking is a useful approach to testing and measuring the performance of cloud instances. By using tools such as CAST AI Cloud Compare, you can gain visibility into the performance of various instances to control the costs of cloud platforms and grow your business.