Skip to content

About

Actual cost of Argo CD applications, from OpenCost, inside the Argo CD UI

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

114 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

ArgoCD Cost Intelligence

CI Docs License Release

ArgoCD Cost Intelligence shows what each Argo CD application actually costs, in a Cost Intelligence tab inside the Argo CD UI. After every successful sync it asks OpenCost what the application's pods cost and keeps the result, so application owners see their cost where they already work. You need Argo CD and OpenCost running in the same cluster, and only the applications Argo CD deploys to that cluster are measured. If Argo CD also manages other clusters, the tab of an application deployed there says it isn't measured (Limits and requirements).

Actual costs: monthly cost, change since the last sync, rightsizing advice, cost breakdown and resource efficiency

Quick start

Requires Argo CD 3.4, 3.5 or 3.6 on a Kubernetes version it supports, OpenCost 1.121.1+ and Helm 3.8+ (Limits and requirements).

helm install argocd-cost-intelligence \
  oci://ghcr.io/octopusdeploy/charts/argocd-cost-intelligence \
  --version 0.1.0 \
  --namespace argocd-cost-intel --create-namespace \
  --set namespace.create=false \
  --set postgres.auth.password=<your-secure-password> \
  --wait --timeout 10m

A post-install hook registers the extension and the notification webhook in Argo CD. If Git manages Argo CD itself, the hook's changes would be reverted: turn it off and follow Install when Git manages Argo CD instead. At first only the built-in admin role can see the tab; see Grant access in Argo CD for other roles.

Sync an application, wait a few seconds, and open its Cost Intelligence tab.

Next: the installation guide for the OpenCost URL, cluster-wide costs and upgrades, and configuration for every setting.

Early release (v0.x). Helm values and the database schema may still change between minor versions; breaking changes are listed in the CHANGELOG. This is an independent community project maintained by Octopus Deploy, not affiliated with or endorsed by the Argo project, the CNCF or OpenCost.

What you get

  • Actual cost per application: the monthly cost split into CPU, memory, network and storage, counting only the controllers Argo CD manages for that application, plus efficiency (requested against used) and idle spend.
  • Trends: a daily cost history of up to a year, a forecast and anomaly notices. The history is kept in PostgreSQL, so it outlives OpenCost's Prometheus retention.
  • Namespaces, idle spend, chargeback and cluster overhead: a system-level page with the cost per namespace, the applications ranked by idle spend, the cost per Kubernetes label, and the control-plane fee, for the people you choose (Choose your settings).
  • Rightsizing, optional: request suggestions from the Vertical Pod Autoscaler or Goldilocks, priced with OpenCost (Optional: rightsizing).
  • Cloud service costs, optional: Infracost estimates for RDS, S3 and other services OpenCost can't see, pushed from CI and shown next to the Kubernetes cost (Optional: cloud service costs).
  • Prometheus metrics, optional: the cost of each Application per hour, labelled to join with argocd_app_info, plus recording rules and alerts (Prometheus metrics).
More screenshots

Resources: cost per controller and Vertical Pod Autoscaler rightsizing suggestions

Trends: daily cost for this month with a month-end forecast

The system page, for people who can see cluster-wide costs:

Namespaces: cost, idle spend and efficiency per namespace

Idle spend: applications ranked by the requested CPU and memory their pods didn't use

Chargeback: cost grouped by a Kubernetes label

These come from a test cluster with sample OpenCost data, in the Argo CD dark theme.

Compared with the OpenCost UI

ArgoCD Cost Intelligence gets its costs from OpenCost, and you can keep using the OpenCost UI alongside it.

The OpenCost UI covers the whole cluster. It breaks cost down by Kubernetes objects, such as node, namespace, controller or pod, and you can build your own reports and dashboards there. Where OpenCost is set up for them, it also shows cloud bills, assets, external services and AI inference cost. For cloud services this project shows only the Infracost estimates your CI pushes, not the bills.

ArgoCD Cost Intelligence works per Argo CD application. It counts only the controllers Argo CD manages for the application and measures it again at every sync, so the tab shows how much the last sync changed the cost. It also stores the cost of each day in PostgreSQL, for 400 days by default, so the history outlives OpenCost's own retention.

Your Argo CD RBAC configuration controls who can see an application's cost and the cluster-wide page, and people sign in with the Argo CD login they already have. The optional Prometheus metrics are the exception, as anyone who can query that Prometheus sees every application's cost. The OpenCost UI doesn't come with a login of its own, so who can open it depends on how you expose it, for example with a port-forward or an ingress.

Documentation

The guides are also published at argocd-cost-intelligence.readthedocs.io.

I want to... Read
Understand the figures on the Cost Intelligence tab How costs are measured
Check what it runs on and what it doesn't do Limits and requirements
Install the plugin, upgrade it or remove it Installation
Install it when Git manages Argo CD Install when Git manages Argo CD
Look up a Helm value or manage secrets Configuration
Fix a problem, understand the NetworkPolicy, back up the database Operations
Scrape cost and health metrics, query them, alert on them Prometheus metrics
Understand how it works inside Architecture
Build it, run the tests, try it locally Development
Work on the Argo CD UI plugin ui/README.md
See what is planned next Roadmap

Contributing

Issues and pull requests are welcome. Read CONTRIBUTING.md first; commits need a DCO sign-off (git commit -s). Please report vulnerabilities privately as described in the Security policy, and follow the Code of Conduct. GOVERNANCE.md describes how the project is run and how to become a maintainer, and MAINTAINERS.md lists who maintains it today.

License

Licensed under the Apache License, Version 2.0.

About

Actual cost of Argo CD applications, from OpenCost, inside the Argo CD UI

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages