This reference describes configuration values for the Remote Execution Agent Helm chart. For complete configuration options, see theDocumentation Index
Fetch the complete documentation index at: https://astronomer-preview.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
values.yaml file downloaded from the Astro UI.
Required configuration values
The following values must be configured before installing the Helm chart:Agent authentication
agentToken / agentTokenSecretName / agentTokenFile You must specify exactly one of these to provide the agent token generated in the Astro UI.- agentToken: Token value as plain text in
values.yaml(not recommended for production) - agentTokenSecretName: Name of existing Kubernetes secret containing the token
- agentTokenFile: Path to file containing the token (agent reads at runtime)
Image registry access
imagePullSecretName / imagePullSecretData You must specify exactly one of these to allow agents to pull images from the registry.- imagePullSecretName: Name of existing Kubernetes secret with Docker credentials
- imagePullSecretData: Docker config JSON as string (Helm creates secret named
image-pull-secret)
Kubernetes namespace
namespace Kubernetes namespace where the agent will be deployed.- If
createNamespace: true, Helm creates the namespace - If
createNamespace: false, namespace must exist before installation
If using
agentTokenSecretName and imagePullSecretName, set createNamespace: false and create the namespace manually with secrets already present.Resource name prefix
resourceNamePrefix Name prefix for all Kubernetes resources (Deployments, ConfigMaps, Secrets) created by the Helm chart.Secrets backend
secretBackend Airflow secrets backend class for accessing connections and variables. Required for agent operation. Supported backends:airflow.providers.amazon.aws.secrets.secrets_manager.SecretsManagerBackendairflow.providers.microsoft.azure.secrets.key_vault.AzureKeyVaultBackendairflow.providers.google.cloud.secrets.secret_manager.CloudSecretManagerBackendairflow.providers.hashicorp.secrets.vault.VaultBackendairflow.secrets.local_filesystem.LocalFilesystemBackend(not recommended for production)
XCom backend
xcomBackend Airflow XCom backend class for passing data between tasks. Required for agent operation. Typically set to:airflow.providers.common.io.xcom.backend.XComObjectStorageBackend
See Configure XCom backend for detailed configuration instructions.
DAG bundles
dagBundleConfigList JSON string defining how agents access dag code. Required for running dags. See Configure DAG sources for detailed configuration instructions.Common environment variables
commonEnv Environment variables applied to all agent components (worker, DAG processor, triggerer). Used to configure secrets backend parameters, XCom paths, logging settings, and other Airflow configuration. Example:Worker resource configuration
workers Workers are configured as a list invalues.yaml. Each entry defines a worker Deployment with its own name, resource allocation, replica count, and optional queue assignment.
| Parameter | Description | Default |
|---|---|---|
name | Unique identifier for the worker Deployment. Used in Kubernetes resource names. | default-worker |
replicas | Number of worker Pod replicas. Ignored when hpa.enabled is true. | 1 |
queues | Comma-separated list of Airflow queues this worker listens on. | default |
resources.requests.cpu | Minimum CPU allocated to the worker Pod. | — |
resources.requests.memory | Minimum memory allocated to the worker Pod. | — |
resources.limits.cpu | Maximum CPU the worker Pod can use. | — |
resources.limits.memory | Maximum memory the worker Pod can use. | — |
env | List of environment variables specific to this worker. | [] |
volumes | Additional volumes to mount on the worker Pod. | [] |
volumeMounts | Mount paths for the additional volumes. | [] |
nodeSelector | Kubernetes node selector for scheduling worker Pods. | {} |
tolerations | Kubernetes tolerations for scheduling worker Pods. | [] |
serviceAccount.name | Custom service account name. Overrides the default {{ resourceNamePrefix }}-worker-{{ worker.name }}. | — |
serviceAccount.create | Whether the Helm chart creates the service account. Set to false when using a pre-existing service account. | true |
terminationGracePeriodSeconds | The grace period for the worker Pod to finish existing tasks before terminating. | 600 |
When you configure multiple workers, each worker creates a separate Kubernetes Deployment. The service account name for each worker defaults to
{{ resourceNamePrefix }}-worker-{{ worker.name }}. If you use IRSA (AWS), Workload Identity (GCP), or managed identity (Azure), annotate each worker’s service account.Horizontal Pod Autoscaler
workers[].hpa Each worker supports a Horizontal Pod Autoscaler (HPA) configuration to automatically scale the number of worker Pod replicas based on resource utilization or custom metrics. Whenhpa.enabled is true, the Helm chart creates a HorizontalPodAutoscaler resource for the worker Deployment. The replicas value is ignored because the HPA controls replica count.
| Parameter | Description | Default |
|---|---|---|
hpa.enabled | Enable the Horizontal Pod Autoscaler for this worker. | false |
hpa.minReplicas | Minimum number of worker Pod replicas. | 1 |
hpa.maxReplicas | Maximum number of worker Pod replicas. | 10 |
hpa.metrics | List of metric targets that the HPA uses to make scaling decisions. Follows the Kubernetes HPA metrics spec. | — |
You must set
resources.requests for the metrics you use in HPA targets. For example, CPU-based autoscaling requires resources.requests.cpu to be set. Without resource requests, the HPA cannot calculate utilization percentages.Triggerer resource configuration
triggerer The triggerer runs deferred tasks asynchronously. Configure the triggerer to control replica count, async capacity, resource allocation, and Pod-level settings.| Parameter | Description | Default |
|---|---|---|
replicas | Number of triggerer Pod replicas. | 1 |
asyncSlots | Number of concurrent triggers the triggerer Pod can compute. | 1000 |
image | Docker image for the triggerer. Defaults to the top-level image if not set. | — |
imagePullPolicy | Image pull policy for the triggerer. Defaults to the top-level imagePullPolicy if not set. | — |
resources.limits.cpu | Maximum CPU the triggerer Pod can use. | 1 |
resources.limits.ephemeral-storage | Maximum ephemeral storage the triggerer Pod can use. | 1Gi |
resources.limits.memory | Maximum memory the triggerer Pod can use. | 2Gi |
resources.requests.cpu | Minimum CPU allocated to the triggerer Pod. | 1 |
resources.requests.ephemeral-storage | Minimum ephemeral storage allocated to the triggerer Pod. | 1Gi |
resources.requests.memory | Minimum memory allocated to the triggerer Pod. | 2Gi |
env | List of environment variables specific to the triggerer. | [] |
livenessProbe | Liveness probe configuration for the triggerer Pod. | See following example |
readinessProbe | Readiness probe configuration for the triggerer Pod. | See following example |
podSecurityContext | Pod security context for the triggerer Pod. By default, the agent runs as a non-root user with UID 50000 and group ID 50000. | ~ |
containerSecurityContext | Security context for the triggerer container. | {} |
initContainers | Init containers to add to the triggerer Pod. | [] |
extraContainers | Sidecar containers to add to the triggerer Pod. | [] |
volumes | Additional volumes to mount on the triggerer Pod. | [] |
volumeMounts | Mount paths for the additional volumes. | [] |
nodeSelector | Kubernetes node selector for scheduling triggerer Pods. | ~ |
affinity | Affinity rules for the triggerer Pod. | {} |
tolerations | Kubernetes tolerations for scheduling triggerer Pods. | [] |
To run multiple triggerers, increase
replicas. The configured number of replicas runs continuously. For restricted namespaces with Pod security standards set to restricted, configure podSecurityContext and containerSecurityContext to meet your cluster’s requirements.Optional configuration
Logging sidecar
loggingSidecar Optional sidecar for exporting task logs to external platforms or viewing logs in the Airflow UI before task completion. See Configure logging sidecar for configuration instructions.OpenLineage
openLineage Optional configuration for data lineage collection.
See Configure OpenLineage for configuration instructions.
Sentinel monitoring
sentinel Monitoring service for agent health reporting (agent version 1.2.0+). Astronomer recommends enabling Sentinel for all deployments. See Sentinel for Remote Execution Agents for configuration instructions.Cloud provider annotations
annotations and labels Kubernetes annotations and labels to configure Pods to run using a specific IAM role (AWS), workload identity (GCP) or managed identity (Azure).Helm commands
After the Remote Execution Agent is installed, any updates to the agent use thehelm upgrade command.