airflow-helm / charts

The User-Community Airflow Helm Chart is the standard way to deploy Apache Airflow on Kubernetes with Helm. Originally created in 2017, it has since helped thousands of companies create production-ready deployments of Airflow on Kubernetes.
https://github.com/airflow-helm/charts/tree/main/charts/airflow
Apache License 2.0
631 stars 473 forks source link

Helm Deploy returns 404 when using prefix #682

Closed tanmaykansara closed 1 year ago

tanmaykansara commented 1 year ago

Checks

Chart Version

1.70

Kubernetes Version

Client Version: version.Info{Major:"1", Minor:"25", GitVersion:"v1.25.0", GitCommit:"a866cbe2e5bbaa01cfd5e969aa3e033f3282a8a2", GitTreeState:"clean", BuildDate:"2022-08-23T17:44:59Z", GoVersion:"go1.19", Compiler:"gc", Platform:"windows/amd64"}
Kustomize Version: v4.5.7
Server Version: version.Info{Major:"1", Minor:"23+", GitVersion:"v1.23.13-eks-fb459a0", GitCommit:"55bd5d5cb7d32bc35e4e050f536181196fb8c6f7", GitTreeState:"clean", BuildDate:"2022-10-24T20:35:40Z", GoVersion:"go1.17.13", Compiler:"gc", Platform:"linux/amd64"}

Helm Version

version.BuildInfo{Version:"v3.9.4", GitCommit:"dbc6d8e20fe1d58d50e6ed30f09a04a77e4c68db", GitTreeState:"clean", GoVersion:"go1.17.13"}

Description

I was trying to set prefix for the URL so that I can access Airflow by following URL: http://some_url.com/test. However the UI returns 404. On the deploy side, airflow UI can still be accessed by doing portforward from 8080.

Relevant Logs

169.254.175.250 - - [13/Dec/2022:22:17:17 +0000] "GET /health HTTP/1.1" 404 38 "-" "kube-probe/1.23+"
169.254.175.250 - - [13/Dec/2022:22:17:17 +0000] "GET /health HTTP/1.1" 404 38 "-" "kube-probe/1.23+"
169.254.175.250 - - [13/Dec/2022:22:17:22 +0000] "GET /health HTTP/1.1" 404 38 "-" "kube-probe/1.23+"
169.254.175.250 - - [13/Dec/2022:22:17:22 +0000] "GET /health HTTP/1.1" 404 38 "-" "kube-probe/1.23+"
169.254.175.250 - - [13/Dec/2022:22:17:27 +0000] "GET /health HTTP/1.1" 404 38 "-" "kube-probe/1.23+"
169.254.175.250 - - [13/Dec/2022:22:17:27 +0000] "GET /health HTTP/1.1" 404 38 "-" "kube-probe/1.23+"
169.254.175.250 - - [13/Dec/2022:22:17:32 +0000] "GET /health HTTP/1.1" 404 38 "-" "kube-probe/1.23+"
169.254.175.250 - - [13/Dec/2022:22:17:32 +0000] "GET /health HTTP/1.1" 404 38 "-" "kube-probe/1.23+"
169.254.175.250 - - [13/Dec/2022:22:17:37 +0000] "GET /health HTTP/1.1" 404 38 "-" "kube-probe/1.23+"
169.254.175.250 - - [13/Dec/2022:22:17:37 +0000] "GET /health HTTP/1.1" 404 38 "-" "kube-probe/1.23+"
169.254.175.250 - - [13/Dec/2022:22:17:42 +0000] "GET /health HTTP/1.1" 404 38 "-" "kube-probe/1.23+"
169.254.175.250 - - [13/Dec/2022:22:17:42 +0000] "GET /health HTTP/1.1" 404 38 "-" "kube-probe/1.23+"
169.254.175.250 - - [13/Dec/2022:22:17:47 +0000] "GET /health HTTP/1.1" 404 38 "-" "kube-probe/1.23+"
169.254.175.250 - - [13/Dec/2022:22:17:47 +0000] "GET /health HTTP/1.1" 404 38 "-" "kube-probe/1.23+"
169.254.175.250 - - [13/Dec/2022:22:17:52 +0000] "GET /health HTTP/1.1" 404 38 "-" "kube-probe/1.23+"

Custom Helm Values

extraEnv: |
  - name: "AIRFLOW_VAR_FOO"
    value: "Develp_foo"
  - name: "AIRFLOW__WEBSERVER__BASE_URL"
    value: "http://localhost:8080/test"
  - name: "AIRFLOW__WEBSERVER__ENABLE_PROXY_FIX"
    value: "True"
executor: "KubernetesExecutor"
webserverSecretKeySecretName: dev-webserver-secret

ingress:
  enabled: true

  ## WARNING: set as "networking.k8s.io/v1beta1" for Kubernetes 1.18 and earlier
  apiVersion: networking.k8s.io/v1

  ## airflow webserver ingress configs
  web:
    pathType: "Prefix"
    path: "/test"
    host: "k8s-dev-airflowi-**********0-*******.us-west-2.elb.amazonaws.com"
thesuperzapper commented 1 year ago

@tanmaykansara two things I think you should look at:

  1. I don't understand where you are getting values like ingress.web.pathType from, this is not part of the chart.
  2. I recommend against using the airflow.extraEnv values to set configs, instead please use airflow.config.
stale[bot] commented 1 year ago

This issue has been automatically marked as stale because it has not had activity in 60 days. It will be closed in 7 days if no further activity occurs.

Thank you for your contributions.


Issues never become stale if any of the following is true:

  1. they are added to a Project
  2. they are added to a Milestone
  3. they have the lifecycle/frozen label