Kubernetes Fully Managed – half the cost of AWS
Omar Ali Amin
on 23 August 2021
Tags: kubernetes , managed infrastructure
How can you run a fully managed Kubernetes in a private cloud at half the cost of Amazon EKS (Elastic Kubernetes Service)?
AWS – the leading public cloud provider
Amazon has been leading the Gartner magic quadrant of the cloud infrastructure & platform services (CIPS) for 11 years with its endless innovation and wide portfolio of services at any scale. AWS has made their elastic kubernetes service (EKS) available for production use in 2018, which has gained a lot of interest from many organisations since then. The EKS service simplifies the process of building, securing, operating, and maintaining Kubernetes clusters, and brings the benefits of container-based computing to organizations that want to focus on building applications instead of setting up a Kubernetes cluster from scratch.
Why AWS EKS?
Amazon as a cloud service provider has one of the most comprehensive offerings in the industry, providing over 200 products and services. With such a portfolio and their continuous innovation, AWS is surely a great place to cover any service an organisation might require, now or in the future. Additionally, AWS has the most extensive global cloud infrastructure. No other cloud provider offers as many regions, availability zones connected with low latency, high throughput and network redundancy. They have a lot of services to help organisations consume Kubernetes in a simpler way, and their managed Kubernetes service (EKS) is really cheap ($ 73 per cluster/month)!
What to consider?
Amazon EKS is focused on offloading the commodity tasks of keeping the light on for a Kubernetes cluster. They take care of your daily operations and let you focus more on developing your applications. However, Kubernetes upgrades on EKS still require manual intervention and some expertise from your side. This is a turn off for many as upgrades are typically one of the most challenging, time consuming and risky activities associated with any cloud infrastructure solution. Although EKS provides a level of automation to the upgrade process, it will still require attention and knowledge. Additionally, Kubernetes is a continuously evolving platform with new releases every few months. There are no typical long term releases that will have enterprise support for many years. Accordingly, multiple Kubernetes upgrades might be required every year with intervention from your in-house IT team.
Another factor AWS doesn’t fully cover is the demand of many organisations to experience the same Kubernetes services in their own private clouds. This makes perfect sense as AWS’s business is much more focused on public cloud consumers. Although some efforts are being made from AWS to extend some services to the private cloud using AWS Outposts, these offerings haven’t yet matured enough and are fairly expensive compared to other alternatives from service providers.
And most interestingly, comes the comparison between owning vs renting, CapEx vs OpEx, public cloud vs private cloud. Since the public cloud started booming, a lot of organisations started moving to the public cloud, with the expectations to slash their costs massively. Many of which started moving back to the private/hybrid cloud model recently, giving a lot of conclusions to learn. A recent report by 451 Researches shows that 62% of organisations are currently pursuing a hybrid cloud strategy. This suggests that public cloud does not fit all the different and specific use cases of every organisation, and that the expected savings aren’t realised in a lot of cases.
Managed Kubernetes: AWS EKS vs Canonical
Amazon EKS costs $ 73 per cluster/month, that is a cheap price unmatched by any other service provider! Although Canonical provides managed services at very low prices due to its operational model of automating tasks using JuJu, the managed service still costs much more than that of AWS. However, this is still a competitive argument, and I’ll prove to you that $3,985 per node annually for a managed service from Canonical is half the cost of a managed Kubernetes on AWS!
Let’s look at the TCO (total cost of ownership) of both solutions. For an apple to apple comparison, a 12x node cluster with the following hardware specs will be used for the study:
Dual Socket 48 vCPU , 192 GB RAM, 1 TB SSD storage
Amazon EKS
Item | Cost per item (monthly) | Total (12x nodes) | Total Annual |
---|---|---|---|
EC2 – M5ZN | $ 3,139.20 | $ 37,670 | $ 452,040 |
EBS | $ 187.50 | $ 2,250 | $ 27,000 |
EKS | $ 73 | $ 219 | $ 2,628 |
Total | – | $ 40,139 | $ 481,668 |
* AWS prices come from the AWS calculator
* 3x EKS clusters are considered for high availability
* Prices do not account for load balancing, networking & data egress as this varies significantly per use case
Canonical provides consulting service for Kubernetes for a price of $45K and $95K, in addition to $3,985 per node annually for the fully managed service, including upgrades. The TCO for Canonical’s managed Kubernetes is $ 142,820 over 1 year, compared to a $481,668 for AWS EKS. If we include the costs of the servers as well (list price of ~ $ 10,000/server) that would lead to a total cost of $262,820.
Projecting that cost over 3 years:
TCO | Year 1 | Year 2 | Year 3 |
---|---|---|---|
AWS EKS | $ 481K | $ 962 K | $ 1,443 K |
Canonical | $ 263K | $ 311K | $ 359 K |
*Prices do not account for power, cooling and data centre preparation as they vary significantly per regions
Conclusion
The previous comparison shows how renting leads to a much higher cost compared to owning in this use case. It is clear that even managing to negotiate discounts with Amazon will still make it the more expensive option. The TCO gap widens even more when projected over a 5 year duration, and after including the costs of mandatory services like networking, data egress, VPC, Route 53, load balancing and any additional services required on AWS.
In other use cases where the workloads might not be predictable enough, or in cases where you want to start your cloud services small and scale with time, the public cloud has proven to be the more suitable choice, and sometimes even more cost efficient. There is not a one size fits all solution, and every use case has its own set of parameters that identify the optimum solution. In such cases, AWS is positioned to be one of the most competitive players providing a comprehensive single stop shop for organisations.
Additionally, many hardware vendors are providing an OpEx based pricing model to make the private cloud even more affordable for organisations, such as HPE Greenlake, Dell Technologies and Equinix Metal. Canonical can easily provide it’s managed services on top of these hardware solutions to provide the complete end to end public cloud-like experience on premise.
Looking for a simple Kubernetes solution?
Read the whitepaper “Managed IT Services: Overcoming CIOs biggest challenges” to learn how to cut down your operational costs and focus on innovation or watch the webinar to learn about our security first approach.
Contact us or check our managed Kubernetes website for more details.
What is Kubernetes?
Kubernetes, or K8s for short, is an open source platform pioneered by Google, which started as a simple container orchestration tool but has grown into a platform for deploying, monitoring and managing apps and services across clouds.
Newsletter signup
Related posts
Kubernetes backups just got easier with the CloudCasa charm from Catalogic
For a native integration for Canonical’s Kubernetes platform, Juju was the perfect fit, and the charm makes consuming CloudCasa seamless for users.
Canonical Delivers Secure, Compliant Cloud Solutions for Google Distributed Cloud
Today, Canonical is thrilled to announce our expanded collaboration with Google Cloud to provide Ubuntu images for Google Distributed Cloud. This partnership...
Canonical accelerates AI Application Development with NVIDIA AI Enterprise
Charmed Kubernetes support comes to NVIDIA AI Enterprise Canonical’s Charmed Kubernetes is now supported on NVIDIA AI Enterprise 5.0. Organisations using...