Skip to content

Configuration

Agent Configuration

View source

Helm values reference for the Kubeadapt agent. Covers authentication, resource sizing, GPU metrics, compression, and scheduling.

Last updated


All values below live under the agent key in your values.yaml or can be set with --set agent.<path>=<value>.

Authentication

ValueTypeDefaultDescription
config.tokenstring""Agent token from the Kubeadapt dashboard. Required (unless existingSecret is set).
config.existingSecretstring""Name of an existing Kubernetes Secret containing the token. The Secret must have a key named token. When set, config.token is ignored and no Secret is created by the chart.

Data Collection

ValueTypeDefaultDescription
config.snapshotIntervalstring60sHow often the agent collects and sends a cluster state snapshot. Minimum 10s.
config.metricsIntervalstring60sHow often the agent collects resource usage metrics. Minimum 10s.

Shorter intervals increase load on your cluster. The agent retries failed uploads on its own.

Compression

ValueTypeDefaultDescription
config.compressionLevelint3Compression level for data sent to Kubeadapt. Min: 1 (fastest). Max: 4 (smallest payload).

Level 3 is a good balance for most clusters. Increase to 4 for larger clusters (3000+ nodes) where payload size matters.

Resource Sizing

Chart defaults:

yaml
1agent:
2  resources:
3    requests:
4      cpu: 100m
5      memory: 256Mi
6    limits:
7      cpu: 2000m
8      memory: 16Gi

The agent runs as one Deployment per cluster, so its memory grows with the total size of the cluster. The chart passes the memory limit to the agent, which keeps its heap under it.

The limit is a ceiling, not a reservation, so leave it at the default unless your cluster policy caps limits. If you must lower it, allow roughly 1 GB per 1,000 nodes plus 1 GB of headroom.

Network Telemetry Spool

The chart mounts an emptyDir volume where the agent will buffer eBPF agent telemetry across container restarts and short outages. No PersistentVolume is created. The agent image in chart 1.0.7 (v3.0.1) does not write to the spool yet, so these values have no effect today.

ValueTypeDefaultDescription
spool.enabledbooltrueMount the spool volume.
spool.sizeLimitstring2GiSize limit the kubelet enforces on the emptyDir.
spool.maxBytesstring"1073741824"The agent's own cap on spool contents, in bytes (1 GiB).
spool.mountPathstring/var/lib/kubeadaptMount point for the volume.

GPU Metrics

The agent auto-discovers NVIDIA DCGM Exporter pods and collects GPU utilization and memory metrics. No configuration needed in most cases.

ValueTypeDefaultDescription
config.gpuMetricsEnabledbooltrueEnable GPU metrics collection from DCGM Exporter.
config.dcgmPortint9400DCGM Exporter port.
config.dcgmNamespacestring""Restrict DCGM discovery to a specific namespace. Empty means search all namespaces.
config.dcgmEndpointsstring""Comma-separated list of DCGM Exporter endpoints (IPs or hostnames). Use this if auto-discovery fails.

If you do not have NVIDIA GPUs in your cluster, the agent silently skips GPU collection. No need to disable it.

Scheduling

ValueTypeDefaultDescription
tolerationslist[]Pod tolerations.
nodeSelectorobject{}Node selector constraints.
affinityobject{}Pod affinity rules.
topologySpreadConstraintslist[]Topology spread constraints.

Full Values Reference

The sections above cover what you need for capability enablement and successful scheduling. For other configurations, see the full values.yaml.