OpenCost give teams visibility into current and historical Kubernetes and cloud spend and resource allocation. These models provide cost transparency in Kubernetes environments that support multiple applications, teams, departments, etc. It also provides visibility into the cloud costs across multiple providers.
OpenCost was originally developed and open sourced by Kubecost. This project combines a specification as well as a Golang implementation of these detailed requirements. The web UI is available in the opencost/opencost-ui repository.
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 cluster, node, namespace, controller kind, controller, service, or pod
- Multi-cloud cost monitoring for all cloud services on AWS, Azure, GCP
- Dynamic on-demand k8s asset pricing enabled by integrations with AWS, Azure, and GCP billing APIs
- Supports on-prem k8s clusters with custom CSV pricing
- Allocation for in-cluster K8s resources like CPU, GPU, memory, and persistent volumes
- Easily export pricing data to Prometheus with /metrics endpoint (learn more)
- Carbon costs for cloud resources
- Support for external costs like Datadog through OpenCost Plugins
- Free and open source distribution (Apache2 license)
You can deploy OpenCost on any Kubernetes 1.20+ cluster in a matter of minutes, if not seconds!
Visit the full documentation for recommended installation options.
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 attend the biweekly OpenCost Working Group community meeting from the Community Calendar to discuss OpenCost development.
You can view OpenCost documentation for a list of commonly asked questions.