DUE TO SPAM, SIGN-UP IS DISABLED. Goto Selfserve wiki signup and request an account.
...
Parameter | Description | Default | Opinion Jens | Opinion Bugra | Opinion Przemek |
|---|---|---|---|---|---|
| airflow_local_settings file as a string (templated). You can bake an airflow_local_settings.py into your image instead. In that case, set this value to null. |
| keep | keep | Keep |
| Airflow version (Used to make some decisions based on Airflow Version being deployed). |
| keep | keep | Keep |
| Annotations to add to the Api secret. |
| Why is this for flask in AF3? | Description remains from v2 terms. | Move under apiServer section |
| The Flask secret key for Airflow Api to encrypt browser session. |
| Why is this for flask in AF3? | Description remains from v2 terms. | Maybe dedicated section for flask-related configs 🤔
|
| This string (templated) will be mounted into the Airflow API Server as a custom webserver_config.py. You can bake a webserver_config.py in to your image instead or specify a configmap containing the webserver_config.py. |
Examples: apiServerConfig: |- from airflow import configuration as conf # The SQLAlchemy connection string. SQLALCHEMY_DATABASE_URI = conf.get('database', 'SQL_ALCHEMY_CONN') # Flask-WTF flag for CSRF CSRF_ENABLED = True | keep Is example still relevant? | This is still relevant if the user is using providers-fab and adding more fine-grained authentication integration through fab. That also generalised to BaseAuthManager and to providers that implement 3rd-party libraries and tools. I think the description should be updated. | |
| The configmap name containing the webserver_config.py. |
Examples: apiServerConfigConfigMapName: my-api-server-configmap | keep | keep | keep |
| Settings to go into the mounted airflow.cfg |
| keep | keep | keep |
| Enable default user creation. |
| keep | keep | If I remember correctly it is only flask-related, so maybe move to flask dedicated section? |
| Default airflow digest to deploy. Overrides tag. |
| keep | keep | keep |
| Default airflow repository. Overrides all the specific images below. |
| keep | keep | keep |
| Default airflow tag to deploy. |
| keep | keep | keep |
| Airflow executor. |
|
|
| keep |
| The Fernet key used to encrypt passwords (can only be set during install, not upgrade). |
| keep | keep | Maybe new encryption section 🤔?
|
| Annotations to add to the Fernet Key secret. |
| keep | keep | |
| Secret key used to encode and decode JWTs to authenticate to public and private APIs (can only be set during install, not upgrade). |
| keep | keep | |
| Annotations to add to the JWT secret. |
| keep | keep | |
| Enable PgBouncer. |
| keep | keep | Whole section discussion under pgbouncer section |
| Whether to mount the config secret files under /etc/pgbouncer/ by default. |
| keep | keep | |
| Specify kube scheduler name for Pods. |
| Put this to Kustomize? | No disagreement with Jens. | No strong opinion |
| This string (templated) will be mounted into the Airflow webserver as a custom webserver_config.py. You can bake a webserver_config.py in to your image instead or specify a configmap containing the webserver_config.py. |
Examples: webserverConfig: |- from airflow import configuration as conf # The SQLAlchemy connection string. SQLALCHEMY_DATABASE_URI = conf.get('database', 'SQL_ALCHEMY_CONN') # Flask-WTF flag for CSRF CSRF_ENABLED = True | removed with dropping AF2 support | Drop with Airflow 2
| |
| The configmap name containing the webserver_config.py. |
Examples: webserverConfigConfigMapName: my-webserver-configmap |
| ||
| Annotations to add to the webserver secret. |
|
| ||
| The Flask secret key for Airflow Webserver to encrypt browser session. |
|
| ||
| Specify kube scheduler name for Airflow Celery workers objects and pods created with pod-template-file. |
| Put this to Kustomize? | No disagreement with Jens. | No strong opinion |
...
Parameter | Description | Default | Opinion Jens | Opinion Bugra | Opinion Przemek |
|---|---|---|---|---|---|
| Airflow home directory. Used for mount paths. |
| keep | keep | keep |
| Whether various Airflow components launch jobs. |
| Can this not implicitly be discovered if K8s executor? | It can be automated indeed. We can map to both a feature and a deprecation along with it. |
|
| Whether various Airflow components launch pods. |
| Can this not implicitly be discovered if K8s executor? | It can be automated indeed. We can map to both a feature and a deprecation along with it. |
|
| The Secret name containing Flask secret_key for the Api. |
| Why is this for flask in AF3? | Description remains from v2 terms. | Maybe move to flask dedicated section 🤔? |
| Git branch |
| Should we transform the gitSync into a bundle definition? | It makes sense. There are multiple ways in various systems of mounting the dags into the components. Making it bundled can help with easier additions on top of it for mounting operations. | Drop in favor of bundle and maybe seperate it to not-dag related section for sync with potential external dags dependencies
|
| Git sync container name. |
|
|
| |
| Name of a Secret containing the repo GIT_SYNC_USERNAME and GIT_SYNC_PASSWORD. |
|
|
| |
| Repository depth. |
|
|
| |
| Configuration for dags empty dir volume. |
|
|
| |
| Enable Git sync. |
|
|
| |
| Environment variables for git sync container. |
Examples: env: - name: GIT_SYNC_TIMEOUT value: '60' env: - name: GIT_SYNC_USERNAME valueFrom: secretKeyRef: key: username name: git-secret |
|
| |
| Extra envFrom ‘items’ that will be added to the definition of Airflow gitSync containers; a string or array are expected (templated). |
Examples: envFrom: |- - secretRef: name: 'proxy-config envFrom: |- - configMapRef: name: 'proxy-config |
|
| |
| Mount additional volumes into git sync container. |
|
|
| |
| When using a ssh private key, the contents of your known_hosts file. |
Examples: knownHosts: |- <host1>,<ip1> <key1> <host2>,<ip2> <key2> knownHosts: <host1>,<ip1> <key1> |
|
| |
| The number of consecutive failures allowed before aborting. |
|
|
| |
| Interval between git sync attempts in Go-style duration string. High values are more likely to cause DAGs to become out of sync between different components. Low values cause more traffic to the remote git repository. |
|
|
| |
| Git revision branch, tag, or hash. |
|
|
| |
| Git repository. |
|
| ||
| Resources on workers git-sync sidecar |
Examples: resources: limits: cpu: 100m memory: 128Mi requests: cpu: 100m memory: 128Mi |
|
| |
| Git revision. |
|
|
| |
| Security context for the gitSync container (deprecated, use securityContexts instead). If not set, the values from securityContext will be used. |
Examples: securityContext: runAsGroup: 0 runAsUser: 50000 |
|
| |
| SSH private key |
|
|
| |
| Name of a Secret containing the repo sshKeySecret. |
|
|
| |
| Subpath within the repo where dags are located. |
|
|
| |
| Git sync container run as user parameter. |
|
|
| |
| Interval between git sync attempts in seconds. High values are more likely to cause DAGs to become out of sync between different components. Low values cause more traffic to the remote git repository. |
|
|
| |
| Where dags volume will be mounted. Works for both persistence and gitSync. If not specified, dags mount path will be set to $AIRFLOW_HOME/dags |
|
|
| keep |
| Access mode of the persistent volume. |
|
|
| keep |
| Annotations for the dag PVC |
|
|
| keep |
| Enable persistent volume for storing dags. |
|
|
| keep |
| The name of an existing PVC to use. |
|
|
| keep |
| Volume size for dags. |
|
|
| keep |
| If using a custom StorageClass, pass name here (templated). |
|
|
| keep |
| Subpath within the PVC where dags are located. |
|
|
| keep |
| Elasticsearch connection configuration. |
Examples: connection: host: '...' pass: '...' port: '...' scheme: https user: '...' |
|
| Drop/move to Kustomize
|
| Host |
|
|
| |
| Password |
|
|
| |
| Port |
|
|
| |
| Scheme |
|
|
| |
| Username |
|
|
| |
| Enable Elasticsearch task logging. |
|
|
| |
| Extra annotations to apply to the elasticsearch secret. |
|
|
| |
| A secret containing the connection string. |
|
|
| |
| Enable |
| What is this for? | SQLAlchemy connection string from K8s secret. Keeping with a better description and maybe renaming to reflect better. | I guess it should be the same as AIRFLOW__DATABASE__SQL_ALCHEMY_CONN so probably drop |
| Enable |
| What is this for? | Enable using K8S secret in env var to pass jwt_secret config | keep |
| Enable |
| What is this for? | Similar to above | keep |
| Enable |
| What is this for? |
All these are the same as above, as setting some config that enables to read secret to pass to the env var. Maybe move them to Kustomize? | keep/move under workers.celery section |
| Enable |
| What is this for? | Drop | |
| Enable |
| What is this for? | keep/move under workers.celery section | |
| Enable |
| What is this for? | keep | |
| Enable |
| What is this for? | Remove with Airflow 2 drop | |
| Enable |
| What is this for? | keep | |
| Enable |
| What is this for? | Drop/move to Kustomize with elasticsearch section
| |
| Enable |
| What is this for? | ||
| Enable |
| What is this for? | Drop/move to Kustomize with opensearch section | |
| Enable |
| removed with dropping AF2 support |
| Drop with Airflow 2 |
| Environment variables for all Airflow containers. |
Examples: env: - name: MYENVVAR value: something_fun |
|
| keep |
| Extra env ‘items’ that will be added to the definition of Airflow containers; a string is expected (templated). |
Examples: extraEnv: |- - name: AIRFLOW__CORE__LOAD_EXAMPLES value: True |
|
| keep |
| Extra envFrom ‘items’ that will be added to the definition of Airflow containers; a string is expected (templated). |
Examples: extraEnvFrom: |- - secretRef: name: '{{ .Release.Name }}-airflow-connections' extraEnvFrom: |- - configMapRef: name: '{{ .Release.Name }}-airflow-variables' |
|
| keep |
| The Fernet key secret name. |
|
|
| Maybe move to fernet/encryption section |
| Group of airflow user. |
|
|
| |
| The JWT secret name. |
|
|
|
|
| Configuration for logs empty dir volume. |
|
|
| keep |
| Annotations to add to logs PVC |
|
|
| keep |
| Enable persistent volume for storing logs. |
|
|
| keep |
| The name of an existing PVC to use. |
|
|
| keep |
| Volume size for logs. |
|
|
| keep |
| If using a custom StorageClass, pass name here (templated). |
|
|
| keep |
| The subpath of the existing PVC to use. |
|
|
| keep |
| Whether Airflow can launch workers and/or pods in multiple namespaces. If true, it creates |
|
|
|
|
| OpenSearch connection configuration. |
Examples: connection: host: '...' pass: '...' port: '...' scheme: https user: '...' |
|
| Drop/move to Kustomize
|
| Host |
|
|
| |
| Password |
|
|
| |
| Port |
|
|
| |
| Scheme |
|
|
| |
| Username |
|
|
| |
| Enable OpenSearch task logging. |
|
|
| |
| A secret containing the connection string. |
|
|
| |
| The content of |
Examples: podTemplate: |- apiVersion: v1 kind: Pod metadata: name: placeholder-name labels: tier: airflow component: worker release: {{ .Release.Name }} spec: priorityClassName: high-priority containers: - name: base ... |
|
| Move to workers.kubernetes as it is only related to KubernetesExecutor |
| Secrets for all Airflow containers. |
Examples: secret: - envName: SecretEnvVar secretKey: somekey secretName: somesecret |
|
| keep |
| User of airflow user. |
|
|
|
|
| VolumeMounts for all Airflow containers. |
|
|
| keep |
| Volumes for all Airflow containers. |
|
|
| keep |
| The Secret name containing Flask secret_key for the Webserver. |
| removed with dropping AF2 support |
| Drop with Airflow 2 |
...