Managing Multicloud Kubernetes To Reduce Cloud Spend

Managing Multicloud Kubernetes To Reduce Cloud Spend

Author:
Ken Jenney DevOps Engineer
Published: August 11, 2020
3 Min Read

There are many reasons why organizations move to multicloud. Most start using additional cloud providers in order to save money—it’s always prudent to look at other vendors when budgets are increasing. There are also the added benefits of trying new products and features, gaining access to a greater number of geographies, and higher levels of availability. 

That being said, expanding your cloud environment to include multiple cloud providers does introduce additional technical requirements into the mix, a challenge you should prepare your teams for sooner rather than later.  Each cloud provider has their own nuanced approach to solving business challenges, therefore the learning curve to get services up and running can be pretty steep—especially if your internal teams have become comfortable working with a single cloud provider. 

Deploying traditional services on instances requires a completely separate set of tools per provider, which can make any organization question their decision to go multicloud. This is where Kubernetes comes in. 

Kubernetes is an industry-standard with a well-known set of tools, with resources available to helps teams quickly stand up a Kubernetes cluster on any cloud provider’s platform. One of the benefits of Kubernetes is that the process for deploying services is essentially the same no matter which cloud provider Kubernetes is hosted on—ultimately minimizing the cross-platform learning curve that comes with adopting new cloud providers.

Reducing Kubernetes costs with Spot

Once Kubernetes is running, you should begin looking at ways to save money.  One way to reduce cloud spend right away is by using Spot/Preemptible instances for interruptible workflows because Spot instances offer considerable savings over on-demand pricing. Kubernetes allows the running of workloads on Spot instances because it automatically balances pods across nodes, which means that if a single instance is removed from a Kubernetes cluster all of the pods that were running on that instance are spun up on another instance.

Using CloudHealth to manage multicloud Kubernetes 

For highly available services, Reserved Instances can be used to lower costs. To help with this, CloudHealth Rightsizing policies (see CloudHealth rightsizing below) provide insight into how Kubernetes nodes are being utilized. This tool can be used to tune scaling policies and to help choose the right instance sizes for nodes. 

Screen shot of the CloudHealth Platform showing the UI of the rightsizing functionality and

Cloudhealth Kubernetes Allocation (see below) gives even more insight into what is running in a Kubernetes cluster. Computer and Memory resources can be mapped to a variety of categories including perspectives and namespaces. This tool can show exactly how services and/or teams are utilizing resources across one or more Kubernetes clusters.

Screenshot of the CloudHealth Platform showing the UI of the Kubernetes Allocation functionality
While Kubernetes can offer numerous benefits to your organization, proper management is essential to keeping costs in check. Learn how CloudHealth can help you manage your Kubernetes environments by reading our whitepaper, or book a demo to see the CloudHealth Platform in action. 

Image
Headshot of blog author Ken Jenney, DevOps Engineer at CloudHealth by VMware
Ken Jenney, DevOps Engineer

Ken Jenney is a member of the CloudHealth Engineering team and focuses on enabling customers to be successful in the cloud by providing insights into cloud management best practices, building a mature cloud strategy, and ensuring customers are utilizing the CloudPlatform in the best way possible.

We Think You Might Like These: