crate-operator
crate-operator copied to clipboard
Support CrateDB major upgrade with full cluster restarts
Unlike minor and patch releases, major releases of CrateDB require a full cluster restart. https://crate.io/docs/crate/howtos/en/latest/admin/full-restart-upgrade.html
The process for that would be something like this:
- Scale down all StatefulSets of a cluster to 0 replicas
- Wait for all pods of a cluster to be gone
- Scale up all StatefulSets of a cluster to their original number of replicas
- Wait for cluster to be healthy
In order to distinguish between minor/patch and major releases, the operator's crate.operator.main.update handler will need to distinguish between these two versions upgrades and then trigger a new full cluster restart for major upgrades.