OpenCost models give teams visibility into current and historical Kubernetes spend and resource allocation. These models provide cost transparency in Kubernetes environments that support multiple applications, teams, departments, etc.
OpenCost was originally developed and open sourced by Kubecost. This project combines a specification as well as a Golang implementation of these detailed requirements.
To see the full functionality of OpenCost you can view OpenCost features. Here is a summary of features enabled:
- Real-time cost allocation by Kubernetes service, deployment, namespace, label, statefulset, daemonset, pod, and container
- Dynamic asset pricing enabled by integrations with AWS, Azure, and GCP billing APIs
- Supports on-prem k8s clusters with custom pricing sheets
- Allocation for in-cluster resources like CPU, GPU, memory, and persistent volumes.
- Allocation for AWS & GCP out-of-cluster resources like RDS instances and S3 buckets with key (optional)
- Easily export pricing data to Prometheus with /metrics endpoint (learn more)
- Free and open source distribution (Apache2 license)
You can deploy OpenCost on any Kubernetes 1.8+ cluster in a matter of minutes, if not seconds!
Visit the full documentation for recommended install options. Compared to building from source, installing from Helm is faster and includes all necessary dependencies.
- User interface
- Cost APIs
- CLI / kubectl cost
- Prometheus metric exporter
We ❤️ pull requests! See CONTRIBUTING.md
for information on building the project from source
and contributing changes.
If you need any support or have any questions on contributing to the project, you can reach us on CNCF Slack in the #opencost channel or via email at team@kubecost.com.
You can view OpenCost documentation for a list of commonly asked questions.