GETTING STARTED

Quick Start

This guide walks you through installing Kubeadapt in your Kubernetes cluster using Helm.

Prerequisites

Before installing Kubeadapt, ensure you have:

  • Kubernetes Cluster: Version 1.24 or later
  • Helm 3: Version 3.0 or later
  • kubectl: Configured to access your cluster
  • Metrics Server: Required. The agent reads live CPU and memory usage from the metrics-server API (metrics.k8s.io). Without it the platform cannot generate rightsizing recommendations. Most managed providers (EKS, GKE, AKS) include it by default.
AWS Cloud Integration (Optional)

If you have AWS Reserved Instances or Savings Plans, you can connect your AWS account so that commitment discounts are reflected in node pricing. Multi-account setups (AWS Organizations) are supported, and connecting your account also enables EKS cluster auto-discovery. As we add more cloud cost features, connected accounts will benefit from them automatically without additional setup. Navigate to Clusters > Cloud Accounts > Add Integration in the dashboard to set it up. The installation steps below can also be followed directly from the dashboard UI under Clusters > Add Cluster.

GCP and Azure Discount Pricing

On-demand and spot pricing works out of the box for all providers. GCP Committed Use Discount and Azure Reserved Instance & Savings Plan integration is planned. See the Cloud Integrations overview for current status.

Installation

Step 1: Add Helm Repository

bash
helm repo add kubeadapt https://kubeadapt.github.io/kubeadapt-helm helm repo update

Step 2: Create Namespace

bash
kubectl create namespace kubeadapt

Step 3: Generate Agent Token

Before installation, generate an agent token from the Kubeadapt dashboard:

  1. Navigate to app.kubeadapt.io
  2. Go to ClustersAdd Cluster
  3. Choose the cloud provider or custom cluster type
  4. Specify environment type production-like or non-production-like
Tip

The actual command will be automatically generated with your unique token.

Step 4: Install Kubeadapt

Run the generated command for your target cluster which will look similar to this:

bash
helm install kubeadapt kubeadapt/kubeadapt \ --namespace kubeadapt \ --create-namespace \ --set agent.config.token="your-generated-token-here"

Step 5: Verify Installation

Check the agent pod is running:

bash
kubectl get pods -n kubeadapt

Expected output:

text
NAME READY STATUS AGE kubeadapt-agent-xxxxx 1/1 Running 1m

Check the agent service:

bash
kubectl get svc -n kubeadapt

Expected output:

text
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubeadapt-agent ClusterIP 10.0.0.100 <none> 8080/TCP 1m

Verify the agent is sending data:

bash
kubectl logs -n kubeadapt -l app.kubernetes.io/component=agent --tail=20

You should see logs confirming cluster capability detection and successful snapshot delivery:

text
cluster capabilities detected metrics_server=true provider=aws snapshot delivered duration=1.2s compressed_size=45KB

Configuration

The default Helm values work well for most clusters out of the box. For resource sizing, GPU metrics, auto-upgrade, and all other configuration options, see the Configuration reference.

Uninstalling

bash
helm uninstall kubeadapt --namespace kubeadapt

Next Steps

On-demand and spot pricing works out of the box for all providers. After installation:

  1. Connect your AWS account (optional): If you use Reserved Instances or Savings Plans, connect your AWS account so Kubeadapt can reflect those discounts in node pricing. GCP CUDs and Azure RI/SP support is planned.
  2. Review cost attribution: Learn how costs are calculated across namespaces and workloads.
  3. Explore the dashboard: Check out the cost dashboard and available savings.
  4. Start rightsizing: Follow the rightsizing guide to apply resource recommendations.
  5. Use the CLI: Query cluster costs and recommendations from your terminal with kubeadapt-cli.