Releases: rook/rook
v1.17.5
Improvements
Rook v1.17.5 is a patch release limited in scope and focusing on feature additions and bug fixes to the Ceph operator.
- build: merge helm indexes instead of recreating for every release (#16033, @obnoxxx)
- rbd: Blocklist rados namespace image watchers during removal (#16009, @sp98)
- namespace: Report empty condition for rados namespace (#16013, @travisn)
- osd: Update the table of allowed configurations (#16005, @satoru-takeuchi)
- pool: Support targetSizeRatio=0 and default compressionMode (#15951, @OdedViner)
- core: Correct rados namespace log message (#15996, @OdedViner)
- rbdmirror: Fix the nil point error check during status updates (#15989, @parth-gr)
- helm: Use nested if clauses in prometheusrule template (#15979, @hedgieinsocks)
- helm: allow prometheusrule edits (#15928, @hedgieinsocks)
- ci: Use latest helm version v3.18 for helm builds (#15952, @obnoxxx)
- osd: Allow wiping encrypted osd disk from another cluster (#15972, @sp98)
- osd: Clean osd disks before reinstalling cluster (#15796, @sp98)
- csi: Replace hardcoded imagePullPolicy with dynamic Go template (#15962, @praveen21b)
v1.16.8
Improvements
Rook v1.16.8 is a patch release limited in scope and focusing on feature additions and bug fixes to the Ceph operator.
- rbdmirror: Nil pointer check during status updates (#15989, @parth-gr)
- core: ensure consistent LeastUptodateDaemonVersion (#15931, @BlaineEXE)
- exporter: Add name to the exporter container port (#15801, @jrcichra)
- osd: Fix osd disk cleanup for mpath setups (#15761, @sp98)
- object: Log all reconcile errors during object store creation (#15747, @travisn)
v1.17.4
Improvements
Rook v1.17.4 is a patch release limited in scope and focusing on feature additions and bug fixes to the Ceph operator.
- nfs: Remove duplicate short NFS CRD name (#15926, @parth-gr)
- core: ensure consistent LeastUptodateDaemonVersion (#15931, @BlaineEXE)
- nfs: Use tabs instead of spaces in nfs rgw config (#15934, @parth-gr)
- helm: Add custom labels for toolbox deployment in rook-ceph-cluster chart (#15914, @jurim76)
- osd: Debug log for long image names in label (#15887, @travisn)
v1.17.3
Improvements
Rook v1.17.3 is a patch release limited in scope and focusing on feature additions and bug fixes to the Ceph operator.
- core: Add short names to rook CRDs (#15888, @patrostkowski)
- csi: Update Kubernetes CSI sidecar images to current versions (#15878, @nixpanic)
- mgr: Continue cluster reconcile even if prometheus not installed causing service monitor to fail creation (#15862, @travisn)
- core: Allow deletion of subvolumegroups or rados namespaces if another CR references the same resource (#15853, @subhamkrai)
- helm: quote object store ingress host (#15908, @synthe102)
- osd: Don't set dmcrypt environment variable in prepare pod job spec (#15907, @subhamkrai)
- nfs: Fix the skip reconcile for nfs daemons (#15909, @parth-gr)
- nfs: Skip NFS daemon reconciliation when labeled with skip-reconcile (#15889, @patrostkowski)
- core: Improve reporting for reconcile requeue cases (#15884, @OdedViner)
- csi: Enable CSI metadata injection setting by default (#15867, @OdedViner)
- core: Fix golangci-lint check ST1005 (#15875, @cbarria)
- osd: During PVC resize wait for a short time to restart OSDs (#15824, @parth-gr)
- rbdmirror: Update mirroring status on pools and rados namespaces for latest ceph changes (#15858, @parth-gr)
- crd: Allow network provider to be 10000 set to blank (#15842, @yifeng-cerebras)
v1.17.2
Improvements
Rook v1.17.2 is a patch release limited in scope and focusing on feature additions and bug fixes to the Ceph operator.
- block: Add more deletion conditions to blockpool and radosnamespace status (#15817, @travisn)
- object: fix uppercase serialization of fields in KafkaEndpointSpec (#15815, @jhoblitt)
- cephfs: Update ceph-csi CephFS caps to include executable permission (#15793, @flx5)
- object: Change
CephObjectStore "foo" found
log level to debug (#15829, @jhoblitt) - rgw: Use pod name in ops log filename (#15605, @arttor)
- exporter: Add name to containerPort (#15801, @jrcichra)
- rbdmirror: Log message clarification with namespace (#15798, @subhamkrai)
- osd: Fix osd disk cleanup for mpath setups (#15761, @sp98)
- ci: Add test support for latest K8s version 1.33 (#15795, @subhamkrai)
v1.17.1
Improvements
Rook v1.17.1 is a patch release limited in scope and focusing on feature additions and bug fixes to the Ceph operator.
- cluster: Specify sensitive ceph config in the CephCluster CR via secrets (#15696, @patrostkowski)
- object: Lower retry log verbosity in notification OBC controller (#15764, @BlaineEXE)
- object: Log all reconcile errors during object store creation (#15747, @travisn)
- docs: Update Prometheus Operator to v0.82.0 (#15750, @OdedViner)
- build: Set correct helm version tag for the release (#15748, @travisn)
- build: Stop publishing release artifacts for non-released builds (#15742, @travisn)
v1.17.0
Upgrade Guide
To upgrade from previous versions of Rook, see the Rook upgrade guide.
Breaking Changes
- Kubernetes v1.28 is now the minimum version supported by Rook through the soon-to-be K8s release v1.33.
- Several ObjectBucketClaim options were added previously in Rook v1.16 that allowed more control over buckets. These controls allow users to self-serve their own S3 policies. Administrators may consider this flexibility a risk, depending on their environment. Rook now disables these options by default to ensure the safest off-the-shelf configurations. To enable the full range of OBC configurations, the new setting
ROOK_OBC_ALLOW_ADDITIONAL_CONFIG_FIELDS
must be set to enable users to set all of these options. For more details, see the OBC additionalConfig documentation. - First-class credential management added to CephObjectStoreUser resources, allowing multiple credentials and declarative credential rotation. For more details, see Managing User S3 Credentials. As a result, existing S3 users provisioned via CephObjectStoreUser resources no longer allow multiple credentials to exist on underlying S3 users, unless explicitly managed by Rook. Rook will purge all but one of the undeclared credentials. This could be a user observable regression for administrators who manually edited/rotated S3 user credentials for CephObjectStoreUsers, and affected users can make use of the new credential management feature as an alternative.
- Kafka notifications configured via CephBucketTopic resources will now default to setting the Kafka authentication mechanism to
PLAIN
. Previously, no auth mechanism was specified by default. It was possible to set the auth mechanism viaCephBucketTopic.spec.endpoint.kafka.opaqueData
. However, setting&mechanism=<auth type>
viaopaqueData
is no longer possible. If any auth mechanism other thanPLAIN
is in use, modification toCephBucketTopic
resources is required.
Features
- The name of a pre-existing Ceph RGW user account can be set as the bucket owner on an ObjectBucketClaim (OBC), rather than a unique RGW user being created for every bucket. A CephObjectStoreUser resource may be used to create the Ceph RGW user account which will be specified on the OBC. If the bucket owner is set on a bucket that already exists and is owned by a different user, the bucket will be re-linked to the specified user.
- The Ceph CSI 3.14 release has a number of features and improvements for RBD and CephFS volumes, volume snapshots, and many more areas. See the Ceph CSI 3.14 release notes for more details.
- External mons: In some two-datacenter clusters, there is no option to start an arbiter mon in an independent K8s node to configure a proper stretch cluster. The external mons now allow a mon to be configured outside the Kubernetes cluster, while Rook manages everything else inside the cluster. For more details, see the External Mon documentation. This feature is in currently in experimental mode.
- DNS resolution for mons: Allows clients outside the K8s cluster to resolve mon endpoints via DNS without requiring manual updates to the list of mon endpoints. This helps in scenarios such as virtual machine live migration. The Ceph client can connect to rook-ceph-active-mons..svc.cluster.local to dynamically resolve mon endpoints and receive automatic updates when mon IPs change. To configure this DNS resolution, see Tracking Mon Endpoints.
- Node-specific ceph.conf overrides: The ceph.conf overrides can now be customized per-node. This may be helpful for some ceph.conf settings that need to be unique per node depending on the hardware. This can be configured by creating a node-specific configmap that will be loaded for all OSDs and OSD prepare jobs on that node, instead of the default settings that are loaded from the rook-config-override configmap.
v1.16.7
Improvements
Rook v1.16.7 is a patch release limited in scope and focusing on feature additions and bug fixes to the Ceph operator.
- core: Set default Ceph version to v19.2.2 (#15704, @travisn)
- mon: Ensure mon canary pods are cleaned up for multicluster service (#15718, @sp98)
- core: Print correct OSD ID in key rotation logs (#15727, @sp98)
- helm: Add labels to ingress resource (#15719, @chkpwd)
- core: Update cephstatus fsmap gid type to uint64 (#15690, @BlaineEXE)
- pool: Retry status update on fail (#15593, @prazumovsky)
- helm: Allow specifying an ingress object store port to override default (#15669, @travisn)
- rbdmirror: Fix the rados namespace health checkup (#15677, @parth-gr)
- osd: Stabilize oscillating maxUnavailable in pdbs in case of node drain (#15634, @sp98)
- ci: Update x/net version to fix snyk report (#15659, @subhamkrai)
- nfs: Set allow_set_io_flusher_fail=true in config (#15652, @BlaineEXE)
v1.16.6
Improvements
Rook v1.16.6 is a patch release limited in scope and focusing on feature additions and bug fixes to the Ceph operator.
- ci: Publish the Helm charts to OCI repos (#15542, @a1994sc)
- osd: Adjust OSD PDBs if they are down but PGs are clean (#15408, @sp98)
- build: bump github.com/golang-jwt/jwt/v5 from 5.2.1 to 5.2.2 (#15561, @dependabot[bot])
- csi: Update ceph csi release version to v3.13.1 (#15510, @yati1998)
- object: All CephBucketTopic reconcile errors set .status.phase (#15562, @jhoblitt)
- operator: Set dns policy for host network if needed (#15553, @travisn)
- core: Improve error messages from ceph commands (#15528, @Madhu-1)
- docs: Update commands for zapping devices during cluster cleanup (#15565, @puskunalis)
v1.16.5
Improvements
Rook v1.16.5 is a patch release limited in scope and focusing on feature additions and bug fixes to the Ceph operator.
- ci: Push rook image to repositories quay.io and ghcr.io (#15274, @subhamkrai)
- object: Allow overriding rgw config value from secret (#15426, @arttor)
- exporter: Add missing rook-ceph-exporter container port definition (#15496, @patrostkowski)
- mgr: Wait for builtin mgr pool to exist before enabling stretch (#15470, @travisn)
- security: bump go-jose package from 4.0.4 to 4.0.5 (#15456, @dependabot)
- mds: Correct parameters to mds liveness probe (#15424, @parth-gr)
- docs: Add comprehensive Rook Ceph cluster maintenance guide (#15455, @patrostkowski)
- core: Query env vars instead of polling the operator settings configmap (#15442, @travisn)
- csi-addons: Bind cephfs and rbd provisioners on non-colliding ports (#15433, @SkalaNetworks)
- helm: Quote object store ingress hostname (#15443, @FabianPonce)