Perform an upgrade#

Introduction#

The following instructions describe how to perform an upgrade of Citadel.

If you want to perform a clean installation instead, see Perform a clean installation.

Log in to the appropriate artifact registry with Helm and set the repository address#

Upgrade Citadel#

  1. In a terminal window on your computer, make sure you’re in the Aspen Mesh Platform chart directory for the new version (the version you want to upgrade to).

  2. Copy the override values file for the old version of Citadel (the version you’re upgrading from) to the Aspen Mesh Platform chart directory for the new version (the version you want to upgrade to).

  3. Set the AM_TAG environment variable to the old version of Citadel (the version you’re upgrading from).

    Example

    $ export AM_TAG=1.21.6-am1
    
  4. Copy the old Citadel values.yaml file to a temporary file:

    $ helm show values oci://$AM_REPO/charts/security --version $AM_TAG > citadel-values-old.yaml
    
  5. Set the AM_TAG environment variable to the new version of Citadel (the version you want to upgrade to).

    Example

    $ export AM_TAG=1.21.6-am2
    
  6. Copy the new Citadel values.yaml file to a temporary file:

    $ helm show values oci://$AM_REPO/charts/security --version $AM_TAG > citadel-values-new.yaml
    
  7. Compare the new temporary file with the old temporary file:

    $ diff citadel-values-new.yaml citadel-values-old.yaml 
    
  8. If there are any new fields that are required or that you want to override:

    • Open the override values file for Citadel (for example, citadel-override-values.yaml) in a text editor.

    • Copy the fields to the override values file and change their values if you want to override them.

    • Save and close the file.

  9. Delete the temporary files:

    $ rm citadel-values-old.yaml citadel-values-new.yaml
    
  10. Upgrade Citadel:

    $ helm upgrade citadel oci://$AM_REPO/charts/security --version $AM_TAG \
        --namespace istio-system \
        --values <citadelOverrideValuesFilename> \
        --wait