Official Helm Chart version
1.6.0 (latest released)
Apache Airflow version
v2.1.2
Kubernetes Version
v1.22.10 (GKE version v1.22.10-gke.600)
Helm Chart configuration
Only livenessProbe config before and during the issue:
# Airflow scheduler settings
scheduler:
livenessProbe:
initialDelaySeconds: 10
timeoutSeconds: 15
failureThreshold: 10
periodSeconds: 60
Docker Image customisations
Here's the image we use based on the apache airflow image:
### Main official airflow image
FROM apache/airflow:2.1.2-python3.8
USER root
RUN apt update
RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections
### Add OS packages here
## GCC compiler in case it's needed for installing python packages
RUN apt install -y -q build-essential
USER airflow
### Changing the default SSL / TLS mode for mysql client to work properly
## https://askubuntu.com/questions/1233186/ubuntu-20-04-how-to-set-lower-ssl-security-level
## https://bugs.launchpad.net/ubuntu/+source/mysql-8.0/+bug/1872541
## https://stackoverflow.com/questions/61649764/mysql-error-2026-ssl-connection-error-ubuntu-20-04
RUN echo $'openssl_conf = default_conf\n\
[default_conf]\n\
ssl_conf = ssl_sect\n\
[ssl_sect]\n\
system_default = ssl_default_sect\n\
[ssl_default_sect]\n\
MinProtocol = TLSv1\n\
CipherString = DEFAULT:@SECLEVEL=1' >> /home/airflow/.openssl.cnf
## OS env var to point to the new openssl.cnf file
ENV OPENSSL_CONF=/home/airflow/.openssl.cnf
### Add airflow providers
RUN pip install apache-airflow-providers-apache-beam
### End airflow providers
### Add extra python packages
RUN pip install python-slugify==3.0.3
### End extra python packages
What happened
After the upgrade to the helm chart 1.6.0, the scheduler POD was restarting as the livenessProbe was failing.
Command for the new livenessProbe from helm chart 1.6.0 tested directly on our scheduler POD:
airflow@yc-data-airflow-scheduler-0:/opt/airflow$ CONNECTION_CHECK_MAX_COUNT=0 AIRFLOW__LOGGING__LOGGING_LEVEL=ERROR exec /entrypoint \
> airflow jobs check --job-type SchedulerJob --hostname $(hostname)
No alive jobs found.
Removing the --hostname argument works and a live job is found:
airflow@yc-data-airflow-scheduler-0:/opt/airflow$ CONNECTION_CHECK_MAX_COUNT=0 AIRFLOW__LOGGING__LOGGING_LEVEL=ERROR exec /entrypoint \
> airflow jobs check --job-type SchedulerJob
Found one alive job.
What you think should happen instead
livenessProbe should not error.
How to reproduce
No response
Anything else
No response
Are you willing to submit PR?
Code of Conduct
Official Helm Chart version
1.6.0 (latest released)
Apache Airflow version
v2.1.2
Kubernetes Version
v1.22.10 (GKE version v1.22.10-gke.600)
Helm Chart configuration
Only livenessProbe config before and during the issue:
Docker Image customisations
Here's the image we use based on the apache airflow image:
What happened
After the upgrade to the helm chart
1.6.0, the scheduler POD was restarting as thelivenessProbewas failing.Command for the new
livenessProbefrom helm chart1.6.0tested directly on our scheduler POD:Removing the
--hostnameargument works and alive job is found:What you think should happen instead
livenessProbeshould not error.How to reproduce
No response
Anything else
No response
Are you willing to submit PR?
Code of Conduct