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

Matt Ray 8241f30690 Direct inquiries to Slack and the community meetings rather than Kubecost %!s(int64=2) %!d(string=hai) anos
.github ba43c5355e Update stale.yml %!s(int64=2) %!d(string=hai) anos
.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 5afddd6b81 Sets projectID and billingDataDataset to empty strings. (#2122) %!s(int64=2) %!d(string=hai) anos
docs d4b47c5a75 change default allocation/compute aggregation to match allocation endpoint %!s(int64=2) %!d(string=hai) anos
kubernetes f4909d3027 Switch back to `latest` tag for UI %!s(int64=2) %!d(string=hai) anos
pkg b854105545 Convert share funcs to filters v2.1 %!s(int64=2) %!d(string=hai) anos
spec 637cd1c7a2 Minor formatting cleanups to make embedding in http://opencost.io/docs/specification a cleaner diff %!s(int64=2) %!d(string=hai) anos
test 42976a2b8b GTM-52 Fix parsing of GCP pricing and create new node diagnostic pricing API %!s(int64=2) %!d(string=hai) anos
tools 81eb9cfa29 feat(build): Add version and revision as labels %!s(int64=3) %!d(string=hai) anos
ui 25039598e8 Sync Dockerfile and Dockerfile.cross and run as non-root user %!s(int64=2) %!d(string=hai) anos
.dockerignore 93dcd24356 Docker Ignore %!s(int64=5) %!d(string=hai) anos
.gitignore 519c78fa72 Run builds locally before containerizing and add multi-arch support (#1941) %!s(int64=3) %!d(string=hai) anos
ADOPTERS.MD d7a2cc1280 Updating to use the [definitions provided by the CNCF](https://github.com/cncf/toc/blob/main/FAQ.md#what-is-the-definition-of-an-adopter). %!s(int64=3) %!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 8241f30690 Direct inquiries to Slack and the community meetings rather than Kubecost %!s(int64=2) %!d(string=hai) anos
Dockerfile 1421dbf485 Ensure permissions on copied files are world-readable. %!s(int64=3) %!d(string=hai) anos
Dockerfile.cross 519c78fa72 Run builds locally before containerizing and add multi-arch support (#1941) %!s(int64=3) %!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 4296d4c0fb Merge branch 'develop' into maintainers %!s(int64=2) %!d(string=hai) anos
Makefile 301d63cf17 feat(metrics): Migrate to using existing version.go %!s(int64=3) %!d(string=hai) anos
NOTICE 0cad952152 Initial commit based off of Apache recommendations. %!s(int64=3) %!d(string=hai) anos
PROMETHEUS.md 6434740792 Updated URLs after opencost.io/docs/ rearrangement. %!s(int64=2) %!d(string=hai) anos
README.md 8241f30690 Direct inquiries to Slack and the community meetings rather than Kubecost %!s(int64=2) %!d(string=hai) anos
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
go.mod b82b761cfe Upgrade go-restful/v3 to v3.10 %!s(int64=3) %!d(string=hai) anos
go.sum 02dfe9216a Run go mod tidy %!s(int64=3) %!d(string=hai) anos
justfile 519c78fa72 Run builds locally before containerizing and add multi-arch support (#1941) %!s(int64=3) %!d(string=hai) anos
opencost-header.png c9a4dff062 opencost readme %!s(int64=4) %!d(string=hai) anos

README.md

OpenCost — your favorite open source cost monitoring tool for Kubernetes

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.

OpenCost allocation UI

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
  • Dynamic onDemand 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 resources like CPU, GPU, memory, and persistent volumes.
  • Easily export pricing data to Prometheus with /metrics endpoint (learn more)
  • Free and open source distribution (Apache2 license)

Getting Started

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.

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.