Upgrade Guide
To upgrade from previous versions of Rook, see the Rook upgrade guide.
Breaking Changes
- The Ceph CSI operator is required for managing CSI driver settings.
- Upgrades will continue working with the existing settings that had been applied by Rook previously. Further updates to CSI settings will need to be updated by the Rook admin. Clusters with default CSI settings do not require customizations.
- CSI settings are removed from the Rook operator configmap rook-ceph-operator-config and the rook-ceph Helm chart.
- New installs must configure the CSI settings with the Ceph-CSI
OperatorConfigandDriverCRs. Default settings are included in operator.yaml. For custom CSI settings, see the CSI Configuration for more details and examples. - For helm users, the Ceph CSI operator settings are configured by the ceph-csi-drivers chart. Custom CSI images remain configured by the rook-ceph chart values.
Features
- Supported Kubernetes versions are v1.31 through v1.36.
- SSE-S3 with Vault Agent: Added support for server-side encryption with SSE-S3 using HashiCorp Vault Agent authentication. See the CephObjectStore Security Settings for more details.
- Unused CRUSH rule cleanup: Rook now deletes unused CRUSH rules by default after the Ceph mgr starts. If unused CRUSH rules should not be deleted, set
ROOK_DELETE_UNUSED_CRUSH_RULEStofalsein the operator config. - Concurrently reconciling multiple Ceph Clusters with the setting
ROOK_RECONCILE_CONCURRENT_CLUSTERSis declared stable. - Containers within a pod are now consistently reconciled by name instead of relying on the order in which they are declared. This is a defensive measure against the declaration order changing due to manipulation by a mutating webhook.
- OSD resize with encrypted host-based OSDs: For encrypted OSDs (with
encryptedDevice: true) with host-based (non-PVC) clusters, resizing the underlying disk now automatically expands encrypted OSDs. - RGW Accounts (Experimental): The
CephObjectStoreAccountCRD manages RGW accounts. The accountReffield is added inCephObjectStoreUserto associate users with accounts. This feature is currently only testable with the Ceph main branch image (quay.ceph.io/ceph-ci/ceph:main`). See the Object Store Accounts documentation for more details. - Two-node clusters (Experimental): Rook allows a "floating" mon to migrate between the two nodes in case one node is down.