Skip to main content

Upgrade Okteto Enterprise

Remove legacy components#

  1. Due to changes in Cert Manager, you'll need to manually delete some resources before being able to upgrade. You should run the following before upgrading:

    $ kubectl delete -n okteto certificates.cert-manager.io --all
    $ kubectl delete -n okteto issuers.cert-manager.io --all
    $ kubectl delete ValidatingWebhookConfiguration cert-manager-webhook
    $ kubectl delete MutatingWebhookConfiguration cert-manager-webhook

    This will delete the resources so they will be replaced when you apply the upgrade. The TLS will keep working correctly since the real certificates are stored in secrets. But will stop renewal or new issuance while upgrading process.

  2. Upgrade the CRDs. Pick the version that matches your Kubernetes cluster.

    $ kubectl apply -f https://charts.okteto.com/crds.yaml

    kubectl versions with patch versions lower than v1.18.8 v1.17.11 or v1.16.14 have issues updating from the Cert Manager CRDs. Cert Manager CRDs use apiextensions.k8s.io/v1 to install CRDs inside Kubernetes. This got added in Kubernetes 1.16. If you have an older Kubernetes version, we recommend updating it. If you need to continue using a legacy version, ask for support.

From here on you can follow the regular upgrade process.

Upgrade your Okteto Enterprise Instance#

To upgrade a new release, modify the config.yaml with your desired changes and then use:

$ helm repo update
$ helm upgrade <your-release-name> okteto/okteto-enterprise -f config.yaml --namespace=okteto --version <version_number>

For example:

$ helm repo update
$ helm upgrade enterprise okteto/okteto-enterprise -f config.yaml --namespace=okteto --version 0.9.x

You can use helm ls to find the name of your release.

Please review the release notes before upgrading. New features, known issues, and configuration changes will be listed there.