Upgrading PAM on a customer-supported cluster

Upgrade Puppet Application Manager (PAM) on your own Kubernetes cluster to take advantage of new features and bug fixes.

There are two possible upgrade types for customer-supported Puppet Application Manager deployments:

  • Online - For installations with a connection to the internet.
  • Offline - For air-gapped installations without a connection to the internet.

Upgrade PAM on a customer-supported online cluster

Upgrading Puppet Application Manager (PAM) on a customer-supported online Kubernetes cluster can be done with a single command.

Before you begin
Make sure you have captured an up-to-date snapshot of your PAM installation, which you can use to fall back the current version if there is an issue with the upgrade process. Learn more about snapshots at Backing up PAM using snapshots.

To upgrade Puppet Application Manager on a customer-supported online cluster:

  1. Upgrade kubectl KOTS:
    curl https://kots.io/install | bash
  2. Issue the following KOTS command:
    kubectl kots admin-console upgrade --namespace <target namespace>
    Tip: Run the kubectl kots admin-console upgrade -h command for more usage information.

Upgrade PAM on a customer-supported offline cluster

Upgrading Puppet Application Manager (PAM) on a customer-supported offline Kubernetes cluster requires a few simple kubectl commands.

Before you begin
Make sure you have captured an up-to-date snapshot of your PAM installation, which you can use to fall back the current version if there is an issue with the upgrade process. Learn more about snapshots at Backing up PAM using snapshots.

To upgrade Puppet Application Manager on a customer-supported offline cluster, perform the following steps from a workstation that has kubectl access to the cluster:

  1. Upgrade kubectl KOTS:
    curl https://kots.io/install | bash
  2. Ensure the required images are available in your local registry. Download the release assets matching the CLI version using the following command:
    curl -LO https://github.com/replicatedhq/kots/releases/download/v$(kubectl kots version | head -n1 | cut -d' ' -f3)/kotsadm.tar.gz
  3. Extract the images and push them to your private registry. Registry credentials provided in this step must have push access. These credentials are not stored anywhere or reused later.
    kubectl kots admin-console push-images ./kotsadm.tar.gz <private.registry.host>/puppet-application-manager \
    --registry-username <rw-username> \
    --registry-password <rw-password>
  4. After you push the images to your private registry, execute the upgrade command with registry read-only credentials:
    kubectl kots upgrade puppet-application-manager \
    --kotsadm-namespace puppet-application-manager \
    --kotsadm-registry <private.registry.host> \
    --registry-username <ro-username> \
    --registry-password <ro-password> \
    --namespace <target namespace>