airbytehq / airbyte

The leading data integration platform for ETL / ELT data pipelines from APIs, databases & files to data warehouses, data lakes & data lakehouses. Both self-hosted and Cloud-hosted.
https://airbyte.com
Other
15.48k stars 3.99k forks source link

Buggy web app requires connector builder server #25174

Open hakuno opened 1 year ago

hakuno commented 1 year ago

Environment

Current Behavior

Web app broken.

Expected Behavior

Web app running.

Logs

/docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration
/docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/
/docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh
10-listen-on-ipv6-by-default.sh: info: Getting the checksum of /etc/nginx/conf.d/default.conf
10-listen-on-ipv6-by-default.sh: info: Enabled listen on IPv6 in /etc/nginx/conf.d/default.conf
/docker-entrypoint.sh: Launching /docker-entrypoint.d/20-envsubst-on-templates.sh
20-envsubst-on-templates.sh: Running envsubst on /etc/nginx/templates/default.conf.template to /etc/nginx/conf.d/default.conf
/docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh
/docker-entrypoint.sh: Configuration complete; ready for start up
2023/04/13 16:25:14 [emerg] 1#1: host not found in upstream "airbyte-airbyte-connector-builder-server-svc:80" in /etc/nginx/conf.d/default.conf:6
nginx: [emerg] host not found in upstream "airbyte-airbyte-connector-builder-server-svc:80" in /etc/nginx/conf.d/default.conf:6

Steps to Reproduce

  1. When I disable the connector builder server with connector-builder-server.enabled: false
  2. So I deploy the Helm Release
  3. The web app component entered in CrashLoopBackOff

Maybe this Nginx block must be behind a statement

upstream connector-builder-server {
   server $CONNECTOR_BUILDER_API_HOST;
}

source https://github.com/airbytehq/airbyte-platform/blob/main/airbyte-webapp/nginx/default.conf.template#L5-L7

bkonicek-calm commented 6 months ago

We also ran into this today, when disabling the connector-builder-server on an existing Airbyte deployment. After our nodes autoscaled and the Airbyte pods restarted we started seeing the CrashLoopBackoff with the host not found in upstream error message.

Is there any update on a fix for this?

We are on chart version 0.53.178 (app version 0.50.50)

timroes commented 5 months ago

@lmossman I think this is something we should have a look at. As described in this issue disabling the connector builder server via Helm will just not allow the webapp to start up, given it will check it's upstream references on boot thus we can't skip passing in an IP for the connector builder reverse proxy. However even if it would boot up, the UI does currently not guard at all against the server not being there.

I feel we should either: Remove the possibility to disable the connector builder server via helm and consider it a mandatory part to run, or alternatively properly implement a way to have the UI run without the builder as well and make the whole feature toggleable.

lmossman commented 4 months ago

@bgroff @colesnodgrass how would we go about removing the ability to disable the connector builder server via helm? That is the approach we'd like to go with for now