Skip to content

Configure Helm for common scenarios

Start your values.yaml from one of the sets below, then adjust it against the Helm Values Reference.

  • The omnia-crds chart and the omnia release installed in omnia-system, because the apply step upgrades the release with --reuse-values. See Install with Helm.
  • For the production set: Istio installed in the cluster before Omnia, and a TLS Secret named agents-tls in omnia-system.
  • For the production set: no existing KEDA installation. If KEDA is already in the cluster, set keda.enabled: false.

Prometheus and Grafana only, everything else left at its default:

prometheus:
enabled: true
grafana:
enabled: true

Adds replica count, resource limits, persistent storage for the observability stack, a TLS gateway, JWT authentication, and KEDA. The values are illustrative; size them for your load.

replicaCount: 5 # the chart default is 3; use 3 or more for HA with leader election
resources: # the chart defaults are cpu 1, memory 512Mi limits and 100m / 256Mi requests
limits:
cpu: 2000m
memory: 1Gi
requests:
cpu: 500m
memory: 512Mi
prometheus:
enabled: true
server:
persistentVolume:
enabled: true
size: 100Gi
grafana:
enabled: true
adminPassword: "" # Use existingSecret instead
admin:
existingSecret: grafana-admin
userKey: admin-user
passwordKey: admin-password
loki:
enabled: true
singleBinary:
persistence:
enabled: true
size: 50Gi
tempo:
enabled: true
persistence:
enabled: true
size: 20Gi
gateway:
enabled: true
listeners:
https:
enabled: true
tlsSecretName: agents-tls
istio:
enabled: true
authentication:
enabled: true
jwt:
issuer: "https://auth.example.com"
audiences:
- "agents-api"
keda:
enabled: true

authentication here applies Istio JWT policies to agent pods in the release namespace only. Agents in workspace namespaces need spec.externalAuth.oidc on their AgentRuntime. See Configure authentication.

See Production setup for a walkthrough that installs Istio and a Gateway alongside this values set.

Add the observability stack to agent deployments you already manage, with the gateway, authentication, and KEDA left off:

prometheus:
enabled: true
grafana:
enabled: true
loki:
enabled: true
alloy:
enabled: true
tempo:
enabled: true
gateway:
enabled: false
authentication:
enabled: false
keda:
enabled: false
  1. Save the set you chose as values.yaml.

  2. For the production set, create the Grafana admin Secret first. Replace the placeholder password:

    Terminal window
    kubectl create secret generic grafana-admin -n omnia-system \
    --from-literal=admin-user=admin \
    --from-literal=admin-password=<password>
  3. Upgrade the release:

    Terminal window
    helm upgrade omnia oci://ghcr.io/altairalabs/charts/omnia \
    --devel -n omnia-system --reuse-values -f values.yaml
Terminal window
kubectl get pods -n omnia-system

Pods matching the components you enabled (omnia-prometheus-*, omnia-grafana-*, and so on) reach Running.