Skip to main content
Version: v0.9.x

Upgrading OpenChoreo

This guide covers how to upgrade OpenChoreo components to newer versions.

Before You Upgrade​

  1. Review release notes for the target version
  2. Backup critical data (see below)
  3. Test in non-production environment first
  4. Plan for downtime if required by the release notes

Backup Recommendations​

Before upgrading, consider backing up:

  • OpenChoreo CRDs and resources: Organizations, Projects, Components, etc.
  • OpenSearch data (if using Observability Plane)
  • Container registry data (if using Build Plane)
# Export OpenChoreo resources
kubectl get organizations,projects,components,dataplanes,buildplanes -A -o yaml > openchoreo-backup.yaml

Upgrade Process​

Single Cluster Deployment​

Upgrade each plane in order:

1. Control Plane

helm upgrade openchoreo-control-plane oci://ghcr.io/openchoreo/helm-charts/openchoreo-control-plane \
--version 0.0.0-latest-dev \
--namespace openchoreo-control-plane \
--reuse-values

Wait for pods to be ready:

kubectl rollout status deployment -n openchoreo-control-plane

2. Data Plane

helm upgrade openchoreo-data-plane oci://ghcr.io/openchoreo/helm-charts/openchoreo-data-plane \
--version 0.0.0-latest-dev \
--namespace openchoreo-data-plane \
--reuse-values

3. Build Plane (if installed)

helm upgrade openchoreo-build-plane oci://ghcr.io/openchoreo/helm-charts/openchoreo-build-plane \
--version 0.0.0-latest-dev \
--namespace openchoreo-build-plane \
--reuse-values

4. Observability Plane (if installed)

helm upgrade openchoreo-observability-plane oci://ghcr.io/openchoreo/helm-charts/openchoreo-observability-plane \
--version 0.0.0-latest-dev \
--namespace openchoreo-observability-plane \
--reuse-values

Multi Cluster Deployment​

Follow the same order, but use --kube-context for each cluster:

helm upgrade openchoreo-control-plane ... --kube-context $CP_CONTEXT
helm upgrade openchoreo-data-plane ... --kube-context $DP_CONTEXT
helm upgrade openchoreo-build-plane ... --kube-context $BP_CONTEXT
helm upgrade openchoreo-observability-plane ... --kube-context $OP_CONTEXT

Verifying the Upgrade​

# Check helm releases
helm list -A

# Check pod versions
kubectl get pods -n openchoreo-control-plane -o jsonpath='{.items[*].spec.containers[*].image}'

# Check CRD versions
kubectl get crds | grep openchoreo

Rollback​

If issues occur, rollback to the previous release:

# List release history
helm history openchoreo-control-plane -n openchoreo-control-plane

# Rollback to previous revision
helm rollback openchoreo-control-plane -n openchoreo-control-plane

Version Compatibility​

OpenChoreo VersionKubernetes VersionHelm Version
0.7.x1.32+3.12+
0.6.x1.31+3.12+
0.5.x1.30+3.12+

Getting Help​

If you encounter issues during upgrade:

  1. Check the FAQ
  2. Review pod logs for errors
  3. Open an issue on GitHub