Forwarder configuration

Configure the StormForge Forwarder component

The Forwarder collects workload metrics and forwards them to StormForge. This topic covers the additional configuration parameters available.

Applying these settings

These are Helm values for the stormforge chart. Add them to a YAML values file (for example, values.yaml) and pass it to your Helm command.

At install time:

helm install stormforge oci://registry.stormforge.io/library/stormforge \
  --namespace stormforge-system \
  -f values.yaml

To apply changes after installation:

helm upgrade stormforge oci://registry.stormforge.io/library/stormforge \
  --namespace stormforge-system \
  --reset-then-reuse-values \
  -f values.yaml

Forwarder parameters:


Private container registry

Override the Forwarder image repository for environments that use a private container registry.

Helm parameter Default value
forwarder.image.repository quay.io/prometheus/prometheus
forwarder.image.tag (pinned to a tested Prometheus version)

Description

The Forwarder uses the Prometheus container image, separate from the StormForge Agent image. When using a private registry, you must push the Prometheus image to your registry and set forwarder.image.repository accordingly.

For the full setup procedure, see If you have a private container registry.

Example

forwarder:
  image:
    repository: my-registry.example.com/prometheus/prometheus

Additional scrape configs

Extend the Forwarder’s Prometheus scrape configuration with custom scrape jobs.

Helm parameter Default value
forwarder.additionalScrapeConfigs []

Description

forwarder.additionalScrapeConfigs accepts a list of Prometheus scrape config objects appended to the default scrape configuration. Use this to collect metrics from custom endpoints or JVM exporters.

Valid values

An array of Prometheus scrape config objects.

Example

forwarder:
  additionalScrapeConfigs:
    - job_name: custom-metrics
      static_configs:
        - targets:
          - myservice.mynamespace.svc.cluster.local:9090

Scrape interval and timeout

Controls how frequently the Forwarder scrapes metrics and when a scrape times out.

Helm parameter Default value
forwarder.scrapeInterval 30s
forwarder.scrapeTimeout 16s

Description

The default values are appropriate for most environments. Increase scrapeInterval only if the Forwarder pod is resource-constrained; decrease it only if you need more frequent metrics.

Valid values

A Prometheus duration string (for example, 30s, 1m). scrapeTimeout must be less than scrapeInterval.


Storage volume size

Controls the size of the Forwarder’s local metrics storage volume.

Helm parameter Default value
forwarder.storageVolumeSize 2G

Description

The Forwarder buffers scraped metrics locally before forwarding them to StormForge. Increase this value if you observe dropped metrics due to write-ahead log overflow in high-cardinality environments.

Valid values

A Kubernetes resource quantity string (for example, 2G, 4Gi).


Pod priority and scheduling

Enables scheduling and priority configurations on StormForge Forwarder pods.

Helm parameter Default value Scope
priorityClassName "" Top-level
forwarder.priorityClassName "" Forwarder only (override)

Description

The top-level priorityClassName applies to all StormForge components. Set forwarder.priorityClassName to override it for the Forwarder only. A non-empty per-component value replaces the top-level default.

forwarder.priorityClassName assigns an existing Pod PriorityClass to the stormforge-forwarder pod.

Valid values

A string that matches the .metadata.name of a PriorityClass defined in your cluster.

Example

To apply a priority class to all StormForge components:

priorityClassName: "high-priority"

To override for the Forwarder only:

forwarder:
  priorityClassName: "high-priority"

Last modified July 24, 2026