Agent Resource Requirements
CPU and memory footprint of the DataAgent agent pod.
The agent runs as a single pod with four containers. The table below shows the default resource requests and limits for each.
Per-container footprint
| Container | CPU request | CPU limit | Memory request | Memory limit |
|---|---|---|---|---|
| Orchestrator | 100m | 2000m | 128Mi | 2Gi |
| K8sGPT | 100m | 2000m | 128Mi | 2Gi |
| Metrics Collector | 100m | 2000m | 128Mi | 2Gi |
| Topology Analyzer | 100m | 2000m | 128Mi | 1Gi |
| Total | 400m | 8000m | 512Mi | 7Gi |
Requests (what the scheduler reserves) are deliberately small; limits are ceilings the containers can burst to and are rarely reached on typical clusters.
Tuning
Default values are sized for clusters up to ~200 nodes and ~2000 pods. On very large clusters, raise the Topology Analyzer memory limit together with topologyAnalyzer.config.goMemLimit — keep goMemLimit at ~80% of the memory limit, expressed as an integer plus MiB or GiB. It must stay below the limit: a goMemLimit at or above the container memory limit disables the agent’s out-of-memory protection, so the chart refuses to render that combination (checked when the limit uses Mi/Gi units, as in the example below).
helm upgrade dataagent oci://ghcr.io/data-agent-co/dataagent-chart \
--namespace dataagent \
--reset-then-reuse-values \
--set topologyAnalyzer.resources.limits.memory=2Gi \
--set topologyAnalyzer.config.goMemLimit=1638MiBOn small clusters you can lower the pair the same way (for example 512Mi with goMemLimit=410MiB).
Kubernetes API load
The metrics collector and topology analyzer query the Kubernetes API. Default rate limits:
| Setting | Default |
|---|---|
metricsCollector.config.k8sQPS | 50 req/s |
metricsCollector.config.k8sBurst | 100 req/s |
These are well within the default API server rate limits and should not require adjustment unless your cluster has API rate limiting stricter than defaults.