Skip to content

Introduce "Rolling" update strategy to allow StatefulSet rolling updates when upgrading #2219

@ryanemerson

Description

@ryanemerson

We should introduce a "Rolling" update strategy so that users can transition from one server version to another with zero downtime. The strategy should only be selectable if using a 16.0.0 or newer server, as we know this will not work with older operands.

spec:
  version: 16.0.0
  upgrades:
    type: Rolling

As rolling upgrades are only officially supported for Infinispan patch releases (at least to begin) with, we should clearly document when it's not possible to perform such an upgrade. When a rolling upgrade is not possible from one version to another, it's necessary for the user to change the upgrade type when changing the spec.version. For example, to transition from 16.0.0 to an incompatible 17.0.0 the user would have to update their spec to:

spec:
  version: 17.0.0
  upgrades:
    type: Shutdown

When they want to upgrade to 17.0.1 they would then update their CR to:

spec:
  version: 17.0.1
  upgrades:
    type: Rolling

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions