Upgrading Voyager

This guide will show you how to upgrade various Voyager components. Here, we are going to show how to upgrade from an old Voyager version to the new version, and how to update the license, etc.

Upgrading Voyager from v2021.x.x to v2024.3.18

In order to upgrade from Voyager v2021.x.x to v2024.3.18, please follow the following steps.

Please note that since v2021.09.16, we recommend installing Voyager operator in the voyager namespace. The upgrade instructions on this page assumes so. If you have currently installed the operator in a different namespace like kube-system, either follow the instructions with appropriate updates, or first uninstall the existing operator and then reinstall in the voyager namespace.

1. Update Voyager Catalog CRDs

Helm does not upgrade the CRDs bundled in a Helm chart if the CRDs already exist. So, to upgrade the Voyager catalog CRD, please run the command below:

kubectl apply -f https://github.com/voyagermesh/installer/raw/v2024.3.18/crds/voyager-crds.yaml

2. Upgrade Voyager Operator

Now, upgrade the Voyager helm chart using the following command. You can find the latest installation guide here.

helm upgrade voyager oci://ghcr.io/appscode-charts/voyager \
  --version v2024.3.18 \
  --namespace voyager --create-namespace \
  --set cloudProvider=$provider \
  --set-file license=/path/to/the/license.txt

Updating License

Voyager support updating license without requiring any re-installation. Voyager creates a Secret named <helm release name>-license with the license file. You just need to update the Secret. The changes will propagate automatically to the operator and it will use the updated license going forward.

Follow the below instructions to update the license:

  • Get a new license and save it into a file.
  • Then, run the following upgrade command based on your installation.

Using Helm 3

# detect current version
helm ls -A | grep voyager

# update license key keeping the current version
helm upgrade voyager oci://ghcr.io/appscode-charts/voyager \
  --version=<cur_version> \
  --namespace voyager --create-namespace \
  --reuse-values \
  --set-file license=/path/to/new/license.txt

Using YAML (with helm 3)

# detect current version
helm ls -A | grep voyager

# update license key keeping the current version
helm template voyager oci://ghcr.io/appscode-charts/voyager \
  --version=<cur_version> \
  --namespace voyager --create-namespace \
  --set cleaner.skip=true \
  --set-file license=/path/to/new/license.txt | kubectl apply -f -