Resource requirements

Overview

The SUSE® Observability Agent collects metrics, logs, events, and traces from your Kubernetes cluster and sends them to SUSE® Observability. This document outlines the default CPU and memory resource requirements for all agent components to help you plan cluster capacity.

Resource Sizing Principles

When planning cluster capacity for the SUSE® Observability Agent, keep the following principles in mind:

  • Resource Requests vs. Limits: Always plan your cluster capacity based on Resource Requests (the baseline resources guaranteed to each pod) rather than Resource Limits (the maximum ceiling for short burst activity).

  • The 3% Per-Node Overhead Target: By default, all per-node agent components combined are designed to consume less than 3% of a standard worker node’s CPU and memory capacity (assuming a baseline worker node with at least 4 vCPU and 16 GiB RAM).

Agent pods, such as the logs-agent, have a low CPU Request (for example, 20 mCPU) but a higher CPU Limit (for example, 1300 mCPU). This high limit allows the log agent to briefly burst and catch up during sudden spikes in log volume without throttling, while ensuring its steady-state resource reservation on the node remains minimal.

Agent Component Resource Requirements

The agent workload is split into two categories:

  1. Per-Node Agents (DaemonSets): Run on every worker node in the cluster.

  2. Cluster-Wide Agents (Deployments, StatefulSets): Run centrally as a fixed number of instances per cluster.

Per-Node Agents (DaemonSets)

The following components run as a DaemonSet on every worker node being monitored. Resource requirements scale linearly with the number of worker nodes in your cluster.

Component Name Default CPU Request Default Memory Request Default CPU Limit Default Memory Limit

Log Agent

40m

100Mi

200m

192Mi

Node Agent (node-agent)

20m

180Mi

270m

420Mi

Process Agent (same Node Agent pod; also handles tracing)

25m

128Mi

125m

400Mi

Cluster-Wide Agents (Deployments, StatefulSets)

The following components run centrally as single instances (or fixed replicas) per cluster. Their resource requirements do not automatically multiply with node count.

Component Name Default CPU Request Default Memory Request Default CPU Limit Default Memory Limit

Cluster Agent

70m

512Mi

400m

800Mi

Checks Agent

20m

512Mi

400m

600Mi

RBAC Agent

50m

25Mi

100m

40Mi

Customizing Agent Resources

You can override default CPU and memory requests and limits in your custom values.yaml file during Helm installation or upgrade:

suse-observability-agent:
    logsAgent:
        resources:
            requests:
                cpu: "20m"
                memory: "100Mi"
            limits:
                cpu: "1300m"
                memory: "500Mi"