You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I am trying to deploy airflow with KubernetesExecutor on EKS cluster. I have provisioned 2 persistent volumes based on AWS EFS and 2 claims based on that volumes. Also I have enabled persistence in dags: and logs: sections and specified claim names. But after deployment of chart volumes didn't attach to any of pods. Output of helm get values shown that persistence disabled for both dags and logs.
########################################## CONFIG | Airflow Configs########################################airflow:
## if we use legacy 1.10 airflow commandslegacyCommands: false## configs for the airflow container image## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/configuration/airflow-version.mdimage:
repository: apache/airflowtag: 2.2.5-python3.8## the airflow executor type to useexecutor: KubernetesExecutor## the fernet encryption key (sets `AIRFLOW__CORE__FERNET_KEY`)## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/security/set-fernet-key.md## [WARNING] change from default value to ensure securityfernetKey: "7T512UXSSmBOkpWimFHIVb8jK6lfmSAvx4mO6Arehnc="## the secret_key for flask (sets `AIRFLOW__WEBSERVER__SECRET_KEY`)## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/security/set-webserver-secret-key.md## [WARNING] change from default value to ensure securitywebserverSecretKey: "THIS IS UNSAFE!"## environment variables for airflow configs## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/configuration/airflow-configs.mdconfig:
AIRFLOW__WEBSERVER__EXPOSE_CONFIG: "False"AIRFLOW__CORE__LOAD_EXAMPLES: "False"## a list of users to create## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/security/airflow-users.mdusers:
- username: adminpassword: adminrole: Adminemail: admin@example.comfirstName: adminlastName: admin## a list airflow connections to create## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/dags/airflow-connections.mdconnections: []## a list airflow variables to create## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/dags/airflow-variables.mdvariables: []## a list airflow pools to create## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/dags/airflow-pools.mdpools: []## extra pip packages to install in airflow Pods## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/configuration/extra-python-packages.md## [WARNING] this feature is not recommended for production use, see docsextraPipPackages: []## extra environment variables for the airflow Pods## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/kubernetes/mount-environment-variables.mdextraEnv: []## extra VolumeMounts for the airflow Pods## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/kubernetes/mount-persistent-volumes.md## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/kubernetes/mount-files.md# extraVolumeMounts:# - name: airflow-logs# mountPath: /opt/airflow/logs# - name: airflow-dags# mountPath: /opt/airflow/dags## extra Volumes for the airflow Pods## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/kubernetes/mount-persistent-volumes.md## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/kubernetes/mount-files.md# extraVolumes:# - name: airflow-logs# persistentVolumeClaim:# name: logs-pvc# - name: airflow-dags# persistentVolumeClaim:# name: dags-pvc## configs generating the `pod_template.yaml` file for `AIRFLOW__KUBERNETES__POD_TEMPLATE_FILE`## [NOTE] the `dags.gitSync` values will create a git-sync init-container in the pod## [NOTE] the `airflow.extraPipPackages` will NOT be installedkubernetesPodTemplate:
## the full content of the pod-template file (as a string)## [NOTE] all other `kubernetesPodTemplate.*` are disabled when this is setstringOverride: ""## resource requests/limits for the Pod template "base" container## [SPEC] https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.20/#resourcerequirements-v1-coreresources: {}## extra pip packages to install in the Pod template## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/configuration/extra-python-packages.md## [WARNING] this feature is not recommended for production use, see docsextraPipPackages: []## extra VolumeMounts for the Pod template## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/kubernetes/mount-persistent-volumes.md## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/kubernetes/mount-files.mdextraVolumeMounts: []## extra Volumes for the Pod template## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/kubernetes/mount-persistent-volumes.md## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/kubernetes/mount-files.mdextraVolumes: []##################################### COMPONENT | Airflow Scheduler###################################scheduler:
## the number of scheduler Pods to runreplicas: 1## resource requests/limits for the scheduler Pods## [SPEC] https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.20/#resourcerequirements-v1-coreresources: {}logCleanup:
enabled: false## configs for the scheduler Pods' liveness probe## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/monitoring/scheduler-liveness-probe.mdlivenessProbe:
enabled: false## configs for an additional check that ensures tasks are being created by the scheduler## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/monitoring/scheduler-liveness-probe.mdtaskCreationCheck:
enabled: falsethresholdSeconds: 300##################################### COMPONENT | Airflow Webserver###################################web:
## the number of web Pods to runreplicas: 1## resource requests/limits for the web Pods## [SPEC] https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.20/#resourcerequirements-v1-coreresources: {}## configs for the Service of the web Podsservice:
type: ClusterIPexternalPort: 8080## configs generating the `webserver_config.py` file## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/configuration/airflow-configs.md#webserver_configpywebserverConfig:
## the full content of the `webserver_config.py` file (as a string)stringOverride: | from airflow import configuration as conf from flask_appbuilder.security.manager import AUTH_DB # the SQLAlchemy connection string # use embedded DB for auth AUTH_TYPE = AUTH_DB## the name of a Secret containing a `webserver_config.py` keyexistingSecret: ""livenessProbe:
enabled: false# extraVolumeMounts:# - name: airflow-logs# mountPath: /opt/airflow/logs# - name: airflow-dags# mountPath: /opt/airflow/dags## extra Volumes for the airflow Pods## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/kubernetes/mount-persistent-volumes.md## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/kubernetes/mount-files.md# extraVolumes:# - name: airflow-logs# persistentVolumeClaim:# name: logs-pvc# - name: airflow-dags# persistentVolumeClaim:# name: dags-pvc##################################### COMPONENT | Airflow Workers###################################workers:
## if the airflow workers StatefulSet should be deployedenabled: false##################################### COMPONENT | Triggerer###################################triggerer:
## if the airflow triggerer should be deployedenabled: false## the number of triggerer Pods to runreplicas: 1## resource requests/limits for the triggerer Pods## [SPEC] https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.20/#resourcerequirements-v1-coreresources: {}## maximum number of triggers each triggerer will run at once (sets `AIRFLOW__TRIGGERER__DEFAULT_CAPACITY`)capacity: 1000##################################### COMPONENT | Flower###################################flower:
## if the airflow flower UI should be deployedenabled: false##################################### CONFIG | Airflow Logs###################################logs:
## NOTE: this is the default valuepath: /opt/airflow/logspersistence:
enabled: true## the name of your existing PersistentVolumeClaimexistingClaim: logs-pvc## WARNING: as multiple pods will write logs, this MUST be ReadWriteManyaccessMode: ReadWriteMany##################################### CONFIG | Airflow DAGs###################################dags:
## NOTE: this is the default valuepath: /opt/airflow/dagspersistence:
enabled: true## NOTE: this is name of your existing volumeexistingClaim: dags-pvc## NOTE: as multiple Pods read the DAGs concurrently this MUST be ReadOnlyMany or ReadWriteManyaccessMode: ReadOnlyMany##################################### CONFIG | Kubernetes Ingress###################################ingress:
## if we should deploy Ingress resources## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/kubernetes/ingress.mdenabled: false##################################### CONFIG | Kubernetes ServiceAccount###################################serviceAccount:
## if a Kubernetes ServiceAccount is createdcreate: true## the name of the ServiceAccountname: "airflow-master"## annotations for the ServiceAccountannotations: {}##################################### CONFIG | Kubernetes Extra Manifests##################################### a list of extra Kubernetes manifests that will be deployed alongside the chart## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/kubernetes/extra-manifests.mdextraManifests: []##################################### DATABASE | PgBouncer###################################pgbouncer:
## if the pgbouncer Deployment is created## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/database/pgbouncer.mdenabled: true## resource requests/limits for the pgbouncer Pods## [SPEC] https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.20/#resourcerequirements-v1-coreresources: {}## sets pgbouncer config: `auth_type`authType: md5##################################### DATABASE | Embedded Postgres####################################postgresql:# ## if the `stable/postgresql` chart is used# ## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/database/embedded-database.md# ## [WARNING] the embedded Postgres is NOT SUITABLE for production deployments of Airflow# ## [WARNING] consider using an external database with `externalDatabase.*`# enabled: true## ## configs for the PVC of postgresql# persistence:# enabled: true# storageClass: ""# size: 8Gi##################################### DATABASE | External Database###################################externalDatabase:
## the type of external database## - allowed values: "mysql", "postgres"##type: "postgres"## the host of the external database##host: "airflow-metadata.cgxqlq4ayveu.us-east-2.rds.amazonaws.com"## the port of the external database##port: 5432## the database/scheme to use within the external database##database: "airflow"## the username for the external databaseuser: "airflow"## the name of a pre-created secret containing the external database user## - if set, this overrides `externalDatabase.user`### userSecret: "postgres-creds"## the key within `externalDatabase.userSecret` containing the user string### userSecretKey: "username"## the password for the external database## - [WARNING] to avoid storing the password in plain-text within your values,## create a Kubernetes secret and use `externalDatabase.passwordSecret`### password: ## the name of a pre-created secret containing the external database password## - if set, this overrides `externalDatabase.password`##passwordSecret: "postgres-creds"## the key within `externalDatabase.passwordSecret` containing the password string##passwordSecretKey: "password"## extra connection-string properties for the external database#### ____ EXAMPLE _______________## # require SSL (only for Postgres)## properties: "?sslmode=require"##properties: "?sslmode=disable"postgresql:
enabled: false##################################### DATABASE | Embedded Redis###################################redis:
## if the `stable/redis` chart is usedenabled: false##################################### DATABASE | External Redis####################################externalRedis:# ## the host of the external redis# ## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/database/external-redis.md# host: localhost
The text was updated successfully, but these errors were encountered:
@Andryyyha are you 100% sure that you are applying the custom-values.yaml file you are intending to?
Because you have said yourself that the helm get values ... is saying that logs.persistence.enabled is false when you have set it to true in the provided custom values.
Can you tell me the commands you are running to:
Install/Update the chart (for example, helm upgrade --namespace ....)
Get your values (for example, helm get values --namespace ...)
PS: I wonder if you are accidentally installing the chart into two different namespaces (forgetting to set --namespace)
After successful deployment, I run helm get values airflow-cluster -n airflow-cluster
Funny thing that some values from my file are applied(e.g. values from externalDatabase section). I tried to add variable through Airflow UI and it's appeared in backend DB
Checks
User-Community Airflow Helm Chart
.Chart Version
8.6.0
Kubernetes Version
Helm Version
Description
I am trying to deploy airflow with KubernetesExecutor on EKS cluster. I have provisioned 2 persistent volumes based on AWS EFS and 2 claims based on that volumes. Also I have enabled persistence in dags: and logs: sections and specified claim names. But after deployment of chart volumes didn't attach to any of pods. Output of
helm get values
shown that persistence disabled for both dags and logs.Relevant Logs
Custom Helm Values
The text was updated successfully, but these errors were encountered: