Trouble upgrading Airbyte Control Plane using abctl local install command

Summary

The user is facing issues upgrading the Airbyte Control Plane using abctl local install command due to port 8000 being in use, even after pausing the control plane in Docker Desktop. The user is on WSL2 and has recently updated abctl to the newest version.


Question

By all accounts when using abctl I should be able to upgrade in place by simply running “abctl local install”. But I find it fails because it says port 8000 is already in use. If I pause the control plane in docker desktop, it gets a little farther but then ultimately reports the same issue.

What am I missing?

I’m on WSL2 fwiw. I did just update abctl to the newest version.



This topic has been created from a Slack thread to give it more visibility.
It will be on Read-Only mode here. Click here if you want
to access the original thread.

Join the conversation on Slack

["abctl", "upgrade", "in-place", "port-8000", "WSL2", "Docker Desktop"]

It looks like abctl needs improvement in handling nginx upgrades. You can use different port abctl local install --port XXXX , and repeat abctl local install without extra options to use default port 8000

I recommend adding new issue here https://github.com/airbytehq/airbyte/issues/new/choose

Great, that makes sense. Thanks!

22 minutes and counting seem typical for the nginx/ingress-nginx installation step? Can’t really tell if it’s doing anything, or waiting on something else.

Same issue again in this scenario somehow.

I guess for now I can once again nuke the whole thing and start over, but eventually when I start using abctl in production I’m going to need a reliable way to update the thing without wiping the whole install.

> 22 minutes and counting seem typical for the nginx/ingress-nginx installation step? Can’t really tell if it’s doing anything, or waiting on something else.
nginx Docker image is relatively small, less than 100MB, so I assume that abctl local install might download Docker images for the latest versions of Airbyte components in helm chart, and it waits for port 8000 to be ready

as I mentioned before, you can use different port as an intermediate step
you have the same suggestion in INFO section

run those 2 commands one by one, and check if that works for you

  1. abctl local install --port 8888
  2. abctl local install or abctl local install --port 8000

When it comes to nuking/wiping, I’d recommend using external database https://docs.airbyte.com/deploying-airbyte/on-kubernetes-via-helm#external-airbyte-database
In that way, all your sources/destinations/connections configurations are stored in a separate database and wiping won’t change it. Newer Airbyte will detect the last stored Airbyte version in database and perform necessary database migrations.

Yeah, that’s probably the proper way to handle it. Spin up a separate postgres container or something.

I finally had time to circle back to this. I ran abctl local uninstall, then upgraded abctl, then ran abctl local install, and it installed the newest version of airbyte without having destroyed my configured connections etc.