Skip to content

Prerequisites

Work through this checklist before you run any oc apply or dump command. Confirm versions in Supported Configurations and the 2.16 migration guide.

Who this is for

  • OpenShift administrators
  • Platform SREs who operate 3scale in-cluster
  • Cluster-admin (or equivalent) to install operators, create namespaces, and patch the APIManager

Cluster and product versions

  • OpenShift version supported by both 3scale 2.15 and 2.16
  • 3scale on channel threescale-2.15 (latest CSV) before you externalize
  • Do not upgrade OpenShift in the same window as the 3scale upgrade

This lab was tested on OpenShift 4.19. See Tested versions.

Access and tooling

  • oc logged in to the target cluster
  • Validated Patterns Operator (patterns-operator, channel fast) so the Pattern CR can install GitOps, Vault, and External Secrets
  • Pull access to registry.redhat.io for registry.redhat.io/rhel9/postgresql-15 and registry.redhat.io/rhel9/redis-7
  • Linux bash for dump/restore (Git Bash on Windows: runbooks 01-bis / 02-bis in docs/runbooks/)

Storage

  • ReadWriteMany StorageClass for system-storage (EFS CSI class efs-sc on the AWS lab). Without EFS, the lab fallback is Local Storage Operator and a ReadWriteOnce recreate. See Install 3scale 2.15 (lab).
  • ReadWriteOnce StorageClass for in-cluster PostgreSQL and Redis PVCs (gp3-csi on the AWS lab)

Backup before the maintenance window

  • Snapshot or back up PVCs (postgresql-data, Redis storage, system-storage)
  • Export secrets system-database, system-redis, and backend-redis
  • Plan a maintenance window. You will scale the 3scale operator and most 3scale components to 0 during dump and restore.

Preflight requirement

After externalization, PostgreSQL must be ≥ 15.0 and Redis ≥ 7.2. Otherwise the 3scale operator 2.16 installs but the instance upgrade does not complete.

What you will not do in this repo

  • Move databases off-cluster (RDS, Azure Database, and similar)
  • Enable Redis Cluster
  • Combine the 3scale upgrade and the OpenShift upgrade in one window

Next steps