Cross-cloud cost allocation models for Kubernetes workloads https://kubecost.com

Cliff Colvin 3e1877048e Merge branch 'develop' into mattray-patch-2 hai 1 ano
.github 2ea71a1536 fix release script, make relative repo for better testing in fork (#2936) hai 1 ano
.idea 93fbec52fb add intellij and goland gofmt settings to be consistent with vscode %!s(int64=3) %!d(string=hai) anos
cmd c7706a4fb2 Renamed Kubecost Github reference to OpenCost %!s(int64=3) %!d(string=hai) anos
config dad87d9821 broken state %!s(int64=3) %!d(string=hai) anos
configs 740fab0435 fix csv casing, precedence, add test %!s(int64=2) %!d(string=hai) anos
core 92923d5e7e Bump the go_modules group across 1 directory with 2 updates (#2832) hai 1 ano
docs d4b47c5a75 change default allocation/compute aggregation to match allocation endpoint %!s(int64=2) %!d(string=hai) anos
kubernetes 422ccd9cde Set package repository to ghcr.io %!s(int64=2) %!d(string=hai) anos
pkg 70c3c4823b Update OCI provider cost metadata (#2902) hai 1 ano
protos 1ea938bb10 converted to use GRPC %!s(int64=2) %!d(string=hai) anos
spec 61de1f83d0 Minor typos and corrections hai 1 ano
test 2641f4fa6b minor update for node's well known labels %!s(int64=2) %!d(string=hai) anos
tools 81eb9cfa29 feat(build): Add version and revision as labels %!s(int64=3) %!d(string=hai) anos
.dockerignore 93dcd24356 Docker Ignore %!s(int64=5) %!d(string=hai) anos
.gitignore b82370afd8 OCI cloud costs integration (#2870) hai 1 ano
ADOPTERS.MD 98216666ce Add Zendesk to Opencost ADOPTERS.md %!s(int64=2) %!d(string=hai) anos
CODE_OF_CONDUCT.md 8241f30690 Direct inquiries to Slack and the community meetings rather than Kubecost %!s(int64=2) %!d(string=hai) anos
CONTRIBUTING.md 87b9d14e87 Add to UI container, contributing %!s(int64=2) %!d(string=hai) anos
Dockerfile 04bde589ef fix: tweak oci url for container image labels %!s(int64=2) %!d(string=hai) anos
Dockerfile.cross f867b5fdfd Add version and commit for logging %!s(int64=2) %!d(string=hai) anos
Dockerfile.debug ec3d7214d5 tilt - fix missing oracle and third party license files %!s(int64=2) %!d(string=hai) anos
GOVERNANCE.md bcaf863493 Clarifications and corrections %!s(int64=3) %!d(string=hai) anos
LICENSE e21bf66dc1 Add LICENSE %!s(int64=7) %!d(string=hai) anos
MAINTAINERS.md d13e3ccf6a update MAINTAINERS (#2926) hai 1 ano
Makefile dec820c853 Update build for opencost %!s(int64=2) %!d(string=hai) anos
NOTICE 5284c80425 Update NOTICE for 2024 %!s(int64=2) %!d(string=hai) anos
PROMETHEUS.md 6434740792 Updated URLs after opencost.io/docs/ rearrangement. %!s(int64=2) %!d(string=hai) anos
README.md 5cfc3a1efe doc: use markdown rather than HTML for header (#2868) hai 1 ano
ROADMAP.md 8241f30690 Direct inquiries to Slack and the community meetings rather than Kubecost %!s(int64=2) %!d(string=hai) anos
SECURITY.md d2b1076d31 Clarification that bug bounty not for previously disclosed publicly available CVEs %!s(int64=3) %!d(string=hai) anos
THIRD_PARTY_LICENSES.txt 4a9e631edc Third party attributions in opencost artifacts %!s(int64=2) %!d(string=hai) anos
Tiltfile 24cc2358b7 refactor and improve tilt %!s(int64=2) %!d(string=hai) anos
Tiltfile.opencost ec3d7214d5 tilt - fix missing oracle and third party license files %!s(int64=2) %!d(string=hai) anos
generate.sh 7f62474e9b Update script binary %!s(int64=2) %!d(string=hai) anos
go.mod 237fdc28ae Revert "bump dependencies for CVE. (#2903)" (#2908) hai 1 ano
go.sum 237fdc28ae Revert "bump dependencies for CVE. (#2903)" (#2908) hai 1 ano
justfile 571304aa01 ENG-1706 Fix parsing of AWS OnDemand data for certain instance types (#2765) hai 1 ano
opencost-header.png c9a4dff062 opencost readme %!s(int64=4) %!d(string=hai) anos
sonar-project.properties 4c399891a3 add sonar-project.properties %!s(int64=2) %!d(string=hai) anos
tilt-values.yaml 24cc2358b7 refactor and improve tilt %!s(int64=2) %!d(string=hai) anos

README.md

License OpenSSF Best Practices

OpenCost — your favorite open source cost monitoring tool for Kubernetes and cloud spend

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.

OpenCost UI Walkthrough OpenCost UI Walkthrough

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)

Getting Started

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.

Usage

Contributing

We :heart: pull requests! See CONTRIBUTING.md for information on building the project from source and contributing changes.

Community

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.

FAQ

You can view OpenCost documentation for a list of commonly asked questions.