Kubernetes Optimization with Kubecost
posted by Cristian Russo on Mar 21, 2020 - 2 min readThe benefits and abstractions that Kubernetes brings to IT infrastructure has significantly changed how companies build and deploy applications. The increased managed Kubernetes offerings from both, private and public Cloud Providers, and the ability to run kubernetes on premises has enabled multi cloud as a new way to release software.
But such dynamic infrastructure has increased complexity. It is a challenge to keep costs down while cloud providers keep changing their offering and new services are been added. Mistakes can result on expensive charges and, often, on service degradation or even downtimes. This is where Kubecost comes to help.
Kubecost is an opencore platform built by a team of engineers that worked running containerized workloads for Google. It was created with the goal of assisting teams working with multi-tenant clusters, optimise resource allocation and reduce costs.
It relies on several components:
- Prometheus and Grafana: leading opensource alert and monitoring systems.
- Cost Model: a microservice that calculates the cost for each container.
- Network Cost Analyser: if enabled, exposes network usage and costs.
- Dashboard: A frontend interface that shows aggregated data.
Kubeview representation of kubecost's components.
Multi-Cloud Cost Optimization
Keeping costs down across cloud providers
As kubecost has integrations with Kubernetes and Cloud Billing API’s, it provides real-time visibility into how resources are being used across multiple cloud providers. Kubecost recommends actions taking into account how your applications are using cluster resources and the capabilities of your Cloud Provider.
Kubecost savings recommendations
Infrastructure Assessments
Suggestions for improving efficiency and reliability
Kubecost continuously run efficiency, stability and performance assessments that analyze your configuration and it compares against similar blueprints running on other environments.
Alerts can help teams to identify cost and infrastructure concerns.