Installing in Air-gapped Environments

FAQ for installing in Kubecost in an air-gapped environment

I have to put container images into a private registry to use them in my cluster. What images do I need?

The following images will need to be downloaded. Please substitute the appropriate version for prod-x.xx.x. Latest releases can be found here.

Kubecost: Required

  • Frontend:
  • CostModel:

Kubecost: Optional

  • Kube-state-metrics:
  • NetworkCosts: (used for network-allocation)
  • BusyBox: (only for NFS)
  • Cluster controller: (used for write actions)
  • Grafana Dashboards: grafana/grafana:8.3.2

Prometheus: Required when bundled

  • prom/prometheus:v2.31.1
  • prom/node-exporter:v0.18.1
  • prom/alertmanager:v0.23.0
  • jimmidyson/configmap-reload:v0.7.1
  • kiwigrid/k8s-sidecar:1.15.4 (can be optional if not using Grafana sidecar)

Thanos - Enterprise/Durable Storage*

  • thanosio/thanos:v0.24.0

How do I configure prices for my on-premise Assets?

There are two options to configure asset prices in your on-premise Kubernetes environment:
  • Simple pipeline: per component prices can be configured in a helm values file (reference) or directly in the Kubecost Settings page. This allows you to directly supply the cost of a CPU month, RAM Gb month, etc.
  • Advanced pipeline: this method allows each individual asset in your environment to have a unique price. This leverages the Kubecost custom CSV pipeline which is available on Enterprise plans. Contact us at [email protected] to learn more.

I use AWS and want the public pricing but can't allow Kubecost to ingress/egress data

  • Use a proxy for the AWS pricing API; you can set AWS_PRICING_URL via the extra env var to the address of your proxy.