
Manage Your Kubernetes Costs in Plural
Plural now offers built-in cost management capabilities that help you track and optimize your Kubernetes spending. The feature integrates with Kubecost to provide clear visibility into cluster costs and automated optimization through pull requests.
Table of Contents
Your Kubernetes Bills are Too Big
Running workloads on Kubernetes often leads to unexpected costs. Teams
frequently over-provision resources "just to be safe," while platform engineers
struggle to identify which services are driving up the bill. Even when cost
issues are found, fixing them usually means creating tickets that get buried in
backlogs.
The traditional solutions aren't great either. Autoscalers can unexpectedly
change resources and restart pods, while manual reviews are time-consuming and
often get postponed. What teams really need is a way to spot cost issues and fix
them without disrupting their workflows.
What's New
Plural now offers built-in cost management capabilities that help you track and
optimize your Kubernetes spending. The feature integrates with Kubecost to
provide clear visibility into metrics like average CPU and memory utilization over time (typically a week or month), resource requests vs. actual usage, and cost implications of current configurations.
Key Features
Cost Visibility
- Monthly cost tracking for all your clusters
- Historical cost trends
- Namespace-level cost breakdowns to track team and service spending
Namespace Cost Attribution
Namespace costs are particularly important because they typically map to
individual teams or services using your Kubernetes infrastructure. When a
namespace's costs are running high, it's usually a sign that the team is
over-provisioned and needs to optimize their resource usage.
Resource Right-Sizing
Kubecost analyzes your CPU and memory utilization patterns over time (typically
a week or month) to suggest optimal resource requests. This helps identify
services that are significantly over-provisioned.
For example, we commonly see cases where developers haven't properly estimated
their resource needs, leading to unnecessary costs. The system helps identify
these cases and provides specific recommendations for tuning.
Automated Optimization via Pull Requests
What sets Plural apart is our ability to automatically act on these
recommendations. For example, let's say that a service is running with 2 CPU
cores requested, but actual utilization shows it only needs 0.5 cores. When we
identify over-provisioned resources, we can:
- Generate a pull request that updates the exact YAML manifests that need
tuning - Apply changes across environments (dev, staging, prod) where appropriate
- Let the owning team review and approve the changes
This approach is more practical than using autoscalers, which can unexpectedly
change resources and restart pods without team approval. It's also more
effective than creating tickets that sit in backlogs and never get actioned.
Getting Started
You have two options for setting up cost management:
1. Use Our Service Catalog (Recommended)
The quickest way to get started:
- Go to Service Catalog → DevOps in Plural
- Select the Kubecost template
- This will set up both Kubecost and the Kubecost extractor
See here for more details.
2. Connect Existing Kubecost
If you already have Kubecost, you can follow the directions here to configure the connection.
Try It Out
Ready to get started with cost management?
Book a demo to try Plural.
For detailed setup instructions, check out our cost management documentation.
Newsletter
Join the newsletter to receive the latest updates in your inbox.