Implementation:Apache Airflow Helm Template Deployment
Appearance
| Knowledge Sources | |
|---|---|
| Domains | Kubernetes, Helm |
| Last Updated | 2026-02-08 00:00 GMT |
Overview
Concrete tool for deploying and scaling Airflow components on Kubernetes provided by the Helm chart templates.
Description
The Helm chart contains 103 template files that generate Kubernetes resources for all Airflow components. Key templates include scheduler-deployment.yaml, worker-deployment.yaml, and associated Service, ConfigMap, and HPA templates.
Usage
Deploy via helm install/upgrade. Customize replicas, resources, and scaling via values.yaml.
Code Reference
Source Location
- Repository: Apache Airflow
- File: chart/templates/ (103 template files)
- File: chart/Chart.yaml (chart metadata, apiVersion v2, appVersion 3.1.7)
Signature
# Key component configuration
scheduler:
replicas: 1
resources: {}
# livenessProbe, readinessProbe, nodeSelector, tolerations, affinity
webserver:
replicas: 1
resources: {}
workers:
replicas: 1
persistence:
enabled: true
hpa:
enabled: false
minReplicaCount: 1
maxReplicaCount: 5
triggerer:
replicas: 1
dagProcessor:
replicas: 1
Import
# Deploy
helm install airflow apache-airflow/airflow -f my-values.yaml
# Scale workers
kubectl scale deployment airflow-worker --replicas=5
# Or via HPA
helm upgrade airflow apache-airflow/airflow \
--set workers.hpa.enabled=true \
--set workers.hpa.maxReplicaCount=10
I/O Contract
Inputs
| Name | Type | Required | Description |
|---|---|---|---|
| Component replicas | int | No | Number of replicas per component |
| Component resources | dict | No | CPU/memory requests and limits |
| HPA settings | dict | No | Autoscaling configuration |
| Kubernetes cluster | Cluster | Yes | Target cluster |
Outputs
| Name | Type | Description |
|---|---|---|
| Deployments | K8s Deployments | Running Airflow component pods |
| Services | K8s Services | Internal service endpoints |
| Ingress | K8s Ingress | External access to webserver/API |
| HPA | K8s HPA | Auto-scaling policies |
Usage Examples
Production Scaling
# my-values.yaml
scheduler:
replicas: 2
resources:
requests:
cpu: "1"
memory: "2Gi"
workers:
replicas: 3
hpa:
enabled: true
minReplicaCount: 3
maxReplicaCount: 20
metrics:
- type: Resource
resource:
name: cpu
target:
type: Utilization
averageUtilization: 80
Related Pages
Implements Principle
Requires Environment
Page Connections
Double-click a node to navigate. Hold to expand connections.
Principle
Implementation
Heuristic
Environment