Bring Your Own Kubernetes (BYOK8s) Upgrade#

Contact the Anaconda implementation team before you begin for assistance upgrading your version of Anaconda Enterprise 5. It is intended for you to follow along with these instructions as an Anaconda Implementation team member guides you through the upgrade process. They will provide you with a Helm Chart archive that contains all the necessary components needed for upgrading.

Caution

  • Project sessions are terminated during the upgrade process! Because of this, it is important to stop all sessions prior to upgrading. If you do not, sessions that are terminated as part of the upgrade process must be restarted manually post upgrade.

  • Sessions can be stopped programmatically using ae5-tools by running the following command in a terminal that has access your Anaconda Enterprise cluster over the network:

    ae5 session list --columns=id --no-header | xargs -n1 ae5 session stop --yes
    

Prerequisites#

  • You must have access to the Administrative Server.

  • You must verify the Service Account used for the upgrade has the correct permissions.

  • Air-gapped servers must have the Docker images added to their Docker image repository.

Upgrading#

Upgrade your BYOK8s cluster by performing the following steps:

  1. Log in to the service account on the Administrative Server running your Anaconda Enterprise software.

  2. Unpack the Helm Charts provided by Anaconda onto the Administrative Server:

    # Replace <HELM_CHARTS> with the Helm Charts you received from Anaconda
    tar xvzf <HELM_CHARTS>
    
  3. Save your current configurations with the extract_config.sh script delivered with your Helm Chart by running the following command:

    # Replace <NAMESPACE> with the namespace Anaconda Enterprise is installed in
    NAMESPACE=<NAMESPACE> ./extract_config.sh
    

    The extract_config.sh script creates a file called helm_values.yaml and saves it in the directory where the script was run.

  4. Verify the information captured in helm_values.yaml file is correct and contains all of your current cluster configuration settings.

  5. Begin the upgrade by running the following command:

    helm upgrade --values ./helm_values.yaml anaconda-enterprise ./Anaconda-Enterprise/
    

    If the upgrade is successful, your output will look like this:

    Release "anaconda-enterprise" has been upgraded. Happy Helming!
    NAME: anaconda-enterprise
    LAST DEPLOYED: Wed Dec  7 21:52:34 2022
    NAMESPACE: aaron
    STATUS: deployed
    REVISION: 10
    TEST SUITE: None
    

    The duration of the upgrade depends on both the cluster node count and the speed of the new docker images loading into each node. You can view the status of the upgrade process by running the following command:

    kubectl get pods
    

    Once all pods display a Running status and each pod is running all their containers, you may return to using the cluster as normal.