Skip to main content

Upgrades

Upgrade Your Platform with Confidence

Upgrades are not maintenance. They are how your platform evolves.

In this video, we explain why keeping your SKE platform continuously updated is essential to security, stability, and long term operability. Left unmanaged, platforms decay. With the right model, they continuously improve.

We walk through the Kratix architecture and show how installation and upgrades use the exact same mechanism: a declarative change to the desired version. There are no bespoke upgrade scripts and no one off processes.

You declare the version you want. The SKE Operator reconciles towards it incrementally, performing health checks at each stage. Progress only continues when the platform is stable. The result is predictable, observable, and safe upgrades by design.



You can upgrade your SKE instance via Helm or the manifests directly. Use whichever method matches how you installed SKE: if you installed via Helm, upgrade via Helm below; if you installed via the Operator manifests, use the Manifests section instead.

Via Helm

Upgrade the Operator

To verify the version of the Operator installed, run the following command:

helm list

You should see the following output:

NAME NAMESPACE [...] CHART APP VERSION
ske-operator default [...] ske-operator-0.8.0 v0.1.1

To check the available versions of the Operator, run the following command:

helm search repo syntasso/ske-operator --versions

To upgrade, run:

helm upgrade ske-operator syntasso/ske-operator \
--version <CHART VERSION> --values values.yaml

Upgrade the SKE instance

To upgrade the SKE instance, you can apply a new version to the Kratix CRD:

apiVersion: platform.syntasso.io/v1alpha1
kind: Kratix
metadata:
name: my-kratix
spec:
version: latest # Or new desired version
tip

If you set the spec.version to latest, the SKE Operator may automatically upgrade your Kratix instance to the latest compatible version of SKE, whenever a new version is available and a reconciliation loop is triggered.

At this moment, the SKE Operator will not automatically check for new versions.

By default, the SKE Operator will perform the following steps:

  1. Validate that the current Kratix installation is in a healthy state.
  2. Upgrade your Kratix Deployment to the next compatible version.
  3. Wait for the Kratix Deployment to become healthy (ready and available).
  4. Repeat the above steps until the desired version is reached.
info

The Operator will stop the upgrade process if:

  1. A new major is reached, or
  2. No valid upgrade path is found.

Patch versions on the same minor can be upgraded without restrictions.

Downgrades are not currently supported by the SKE Operator.

Via the Manifests

Upgrade the SKE Operator

To upgrade the SKE Operator, you can apply the new manifest directly:

kubectl apply -f http://s3.eu-west-2.amazonaws.com/syntasso-enterprise-releases/ske-operator/<NEW-VERSION>/ske-operator-distribution.yaml

Upgrade the SKE instance

To upgrade the SKE instance, you can apply a new version of the Kratix CRD:

apiVersion: platform.syntasso.io/v1alpha1
kind: Kratix
metadata:
name: my-kratix
spec:
version: v0.100.0 # New desired version

Upgrade checks

The SKE Operator will perform pre-upgrade checks as part of the upgrade flow.

To skip these checks, you can add the ske.syntasso.io/skip-all-upgrade-checks label when updating your .spec.version:

apiVersion: platform.syntasso.io/v1alpha1
kind: Kratix
metadata:
name: my-kratix
labels:
ske.syntasso.io/skip-all-upgrade-checks: "true"
spec:
version: v0.100.0 # New desired version
tip

Skipping checks can be useful when you need to upgrade SKE while its current state is unhealthy.