We’ve just released the newest generally available version of Kubecost (1.101)!
In this blog, I’ll highlight some of the new updates you can find after updating to 1.101. To see the full release notes, check out our GitHub Releases page for 1.101.
Kubecost Free install via Helm
Get started quickly with Kubecost! The below install includes the new cloudCost API and disables the previous method, dramatically reducing memory usage and improving performance. Or upgrade below.
helm install kubecost \
--repo https://kubecost.github.io/cost-analyzer cost-analyzer \
--namespace kubecost --create-namespace \
--version 1.101.3 \
--set kubecostModel.cloudCost.enabled=true \
What’s new in Kubecost 1.101:
- New Cluster Cost Inspector [beta]
- New product area: Govern/Budget [beta]
- New product area: Govern/Audit [beta]
- Ability to view unconnected and unmonitored clusters [beta]
- ‘Cloud assets’ being removed from Assets API, moving to new Cloud Cost API
- Ability to classify internet traffic for proxies
New cluster cost inspector [beta]
Kubecost 1.101 enabled a new cluster inspector view, available when clicking on a cluster name via the Overview page. The new inspector brings costs, efficiency, budgets, and more into one summarized page. Users can customize the time range and see all cluster details in one view.
New module: Govern [beta]
Kubecost 1.101 brings a new area to the Kubecost platform: Govern. This new area contains Kubecost’s governance features, helping users set guardrails and control spend change. Under the Govern area, there are two new reports to try out: Budget and Audit.
New report: Govern/Budget [beta]
The new Budget report gives a visual breakdown of your budget rules across your organization. You can create budget rules based on cluster or namespace, and track them in one place.
New report: Govern/Audit [beta]
Kubecost Audit lets you see recent events with an expected cost impact. The new Audit report leverages Kubecost’s
kubectl predict feature, giving you an estimated cost for any new deployments on your cluster. This lets you catch large spend changing events before they hit your bill.
Kubecost currently only tracks deployment creation and deletion, but more cluster events will be supported soon.
Ability to view unconnected and unmonitored clusters
Previously, Kubecost’s Overview page would show only clusters that were installed with the Kubecost Helm chart. If you have enabled your cloud integration, you will now see all clusters detected via cloud billing that are unmonitored, meaning they do not have Kubecost installed.
This new view gives the complete list of all clusters that are in your account, making sure none slip by undetected. You can use this list to make sure Kubecost is installed on every cluster, and make sure your costs are fully allocated.
‘Cloud assets’ being removed from Assets API, moving to new Cloud Cost API
If you are currently running Kubecost with a cloud integration enabled, those cloud costs are ingested by our “Assets” API. Now ‘assets’ will be focused on K8s assets, and Cloud Costs will have their own dedicated Cloud Cost API. This switch greatly improves memory consumption and overall performance and will allow us to build better features around Cloud Costs.
If you migrate now, you will see the performance improvements but will lose some drill-down and filtering for Cloud Cost. If drill-down to individual Cloud line items is critical for your organization, you can hold off on the migration until version 1.102, which will be released in April.
To migrate to the new Cloud Costs and disable Assets:
Read more about the Cloud Cost Explorer and setup here.
Internet Traffic Classification
Commonly, an ingress controller or gateway is used to proxy traffic from the internet into the cluster. Kubecost now has the ability to correctly classify this traffic to help understand which workloads are driving network transfer costs.
See the docs for configuration required.
Minor features and fixes
- Dramatically improved performance for large environments on Savings>Right-size your container requests
- Improved overview performance for users managing large data sets and multiple clusters
- Fixed issue with Federated ETL cloud-billing integration
- Add nested elements to left Navigation tree (Monitor branch)
- Added Email alerts for Kubecost & Cluster Health alerts
- Adds a new link to the Namespace Network tile on Overview that shows full network breakdown by namespace when using networkCosts Daemonset
- Added CSV as a format option for the /allocation/external API
- Added support for cost difference using new Predict API CLI
- Introduced the /prediction/speccost API for estimating the cost impact of applying a YAML spec to your cluster ahead of time
- Continuous request right-sizing will no longer modify Deployments and DaemonSets who currently have > 0 unavailable replicas
If you installed Kubecost using helm, you can upgrade your existing environment to version v1.101.3 using the following commands.
export CURRENT_KUBECOST_VERSION=(`helm ls -n kubecost --output yaml| grep app_version|cut -d':' -f2|xargs`)
# Backup current values
helm get values kubecost -n kubecost >> kubecost-helm-values_$CURRENT_KUBECOST_VERSION.yaml
# Upgrade to version 1.101.3
helm upgrade \
--repo https://kubecost.github.io/cost-analyzer/ cost-analyzer\
--namespace kubecost --version 1.101.3
That’s it for today’s highlights around Kubecost 1.101.3 - We release monthly, so check back for future updates!
We’re here to help!
Join us on Slack if you have questions or feedback, need help, or for general Kubernetes and cloud cost optimization conversation!