Commit Graph
3398 Commits
Author SHA1 Message Date
Travis Nielsen 89ead2f314 Merge pull request #17299 from rook/mergify/bp/release-1.19/pr-17160
test: add integration tests for CephObjectStoreUser capabilities (backport #17160)
2026-04-08 13:09:00 -06:00
Travis Nielsen 99c90c6d8e osd: add logging when detecting osd versions
When osd versions are being detected, log more info
about the versions to understand better if the
require-osd-version release is being set as
expected.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
(cherry picked from commit a80ca49855)
2026-04-08 17:07:28 +00:00
Joshua Hoblitt 01eeb21aeb test: add integration tests for CephObjectStoreUser capabilities
Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit 0139637e34)
2026-04-02 20:41:07 +00:00
hjk068 ff79144fef object: call generateUserCaps after AdminOpsClient calls
This prevents overwriting the user-specified capabilities
and correctly copies the Capabilities into UserCapabilities
after the AdminOpsClient calls.

Signed-off-by: hjk068 <hello.hyunjin@gmail.com>
(cherry picked from commit b113e37dae)
2026-04-02 15:15:22 +00:00
Tarun Gupta Akirala 89129f03cd cosi: update default sidecar image version
Encountered this bug in current image kubernetes-sigs/container-object-storage-interface#173
which is fixed in recent release via kubernetes-sigs/container-object-storage-interface#197

Signed-off-by: Tarun Gupta Akirala <tarun.akirala@nutanix.com>
(cherry picked from commit 9803964d03)
2026-04-01 11:28:33 -06:00
majiayu000 c9e0bca7ff object: add labels field to CephObjectStore RGW service spec
Allow users to configure custom labels on CephObjectStore RGW services
by adding a Labels field to the RGWServiceSpec, following the existing
pattern used for Annotations. This enables use cases such as service
mesh integration and monitoring discovery that require specific labels
on Kubernetes services.

Fixes: #17235
Signed-off-by: majiayu000 <1835304752@qq.com>
(cherry picked from commit ac6ec79865)
2026-03-30 16:38:49 +00:00
Oded Viner 7ec6cb6aef pool: clean up erasure code profile on pool deletion
deleting an erasure coded CephBlockPool left the ec profile
orphaned. recreating with different settings failed because
the old profile could not be overridden.
- delete ec profile during CephBlockPool deletion
- disable --format json on ec profile set command
- fix ec profile name mismatch in CephObjectStore deletion

Signed-off-by: Oded Viner <oviner@redhat.com>
(cherry picked from commit b88648d10f)
2026-03-19 16:05:04 +00:00
Oded Viner 5e62a9bedd pool: set ec pool status to ready after reconcile
ec pools skip the mirroring configuration path where
the status is set to ready, leaving them stuck in
progressing state forever. add status update to ready
in the else branch when mirroring is skipped.

Signed-off-by: Oded Viner <oviner@redhat.com>
(cherry picked from commit ba9fad77a0)
2026-03-17 21:34:56 +00:00
Niraj Yadav 333904ac0a csi: update ceph-csi image to v3.16.2
This patch updates the ceph-csi image version
to v3.16.2

Signed-off-by: Niraj Yadav <niryadav@redhat.com>
(cherry picked from commit c5613a3320)
2026-03-13 15:50:47 +00:00
Artem Torubarov eb17bb490f rgw: not update shared pools if prev pool is not empty
Signed-off-by: Artem Torubarov <artem.torubarov@sap.com>
(cherry picked from commit 845293c3cd)
2026-03-11 22:13:43 +00:00
Artem Torubarov e2ce1ea2b0 rgw: support new RGW pools in shared pools zone json config
Signed-off-by: Artem Torubarov <artem.torubarov@sap.com>
(cherry picked from commit a134643352)
2026-03-11 22:13:42 +00:00
Muhammad Adil Ghaffar ee5eb68223 exporter: delete orphaned ceph-exporter deployments on reconcile
Clean up stale exporter deployments whose target node no longer exists.
This handles the case where the operator was down when a node was deleted,
so the deletion event was missed and the stale deployment was never removed.

Signed-off-by: Muhammad Adil Ghaffar <muhammad.adil.ghaffar@est.tech>
(cherry picked from commit 0b8ed65749)
2026-03-10 21:26:06 +00:00
Travis Nielsen 9ca5560d22 exporter: continue reconciling all clusters when disabled in the first
When reconciling the crash collectors and exporters, if one cluster
has disabled them, they will be deleted, then the reconcile
will complete, thus skipping reconcile of the crash collectors
and exporters for the remaining clusters.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
(cherry picked from commit 71e1dbffa4)
2026-03-10 17:56:41 +00:00
Travis Nielsen 46d9c79f8a exporter: remove exporter resources as best effort
Remove the exporter deployment when needed as best effort
in case the removal fails, there is no need to block other
reconcile.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
(cherry picked from commit 256a338c14)
2026-03-10 17:56:41 +00:00
Travis Nielsen 0cce6bac21 exporter: remove obsolete version checking for ceph v18
Rook no longer supports earlier than Ceph v18, so remove the
obsolete version checking in the ceph exporter reconcile.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
(cherry picked from commit 733406b175)
2026-03-10 17:56:41 +00:00
parth-gr 379f313e97 pool: skip miroring if the pool is ec
the ec pool doesnt support mirroring from ceph end
so skip if the mirroring spec is set on the ec pools

Signed-off-by: parth-gr <partharora1010@gmail.com>
(cherry picked from commit 9f932d477e)
2026-03-06 14:41:49 +00:00
mergify[bot] dd72e9917a Merge pull request #17158 from rook/mergify/bp/release-1.19/pr-17116
exporter: add configurable port for ceph exporter (backport #17116)
2026-03-05 19:22:51 +00:00
Oded Viner b3f26bc27a exporter: add configurable port for ceph exporter
the ceph exporter port was hardcoded to 9926, preventing
co-location of exporters from different ceph clusters on
the same node. add a port field to cephexporterspec so
users can override it via spec.monitoring.exporter.port.

Signed-off-by: Oded Viner <oviner@redhat.com>
(cherry picked from commit c2a2fc4241)
2026-03-05 17:11:45 +00:00
Travis Nielsen 0e21503455 test: increase osd reconcile wait timeout
The osd unit tests periodically fail with a timing issue
when canceling an orchestration. Attempt to stabilize
the test with a longer timeout before canceling the
test.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
(cherry picked from commit 96f4320a34)
2026-03-05 16:24:34 +00:00
mergify[bot] 1d243854d4 Merge pull request #17127 from rook/mergify/bp/release-1.19/pr-17119
deploy: update CSI sidecars to latest versions available (backport #17119)
2026-02-26 19:02:19 +00:00
Travis Nielsen 9c1100abc7 Merge pull request #17125 from rook/mergify/bp/release-1.19/pr-17112
osd: update lockbox key rotation for encrypted OSDs (backport #17112)
2026-02-26 11:45:15 -07:00
Praveen M 95e4a8a082 csi: update CSI sidecars to latest versions available
Updated the following csi sidecars to their latest available versions:
- csi-attacher: v4.11.0
- csi-snapshotter: v8.5.0
- csi-resizer: v2.1.0
- csi-provisioner: v6.1.1
- csi-node-driver-registrar: v2.16.0

Signed-off-by: Praveen M <m.praveen@ibm.com>
(cherry picked from commit 6b55092abf)
2026-02-26 17:51:03 +00:00
Artem Torubarov 7dd938b222 rgw: skip non-raw commands on object deletion path when pools not exists
Signed-off-by: Artem Torubarov <artem.torubarov@sap.com>
(cherry picked from commit a7f176b366)
2026-02-26 17:50:08 +00:00
Artem Torubarov 16ea704cb6 rgw: force objectStore controller to wait until zone and sharedPools are ready
Fixes race condition for rgw multisite deployments caused by ObjectStore
and Zone controllers calling period commit concurrently. See: https://github.com/rook/rook/issues/17013

Signed-off-by: Artem Torubarov <artem.torubarov@sap.com>
(cherry picked from commit b47d2c2f79)
2026-02-26 17:50:08 +00:00
Blaine Gardner ef9e8be357 osd: update lockbox key rotation for encrypted OSDs
Update `lockbox.keyring` rotation for encrypted OSDs to ensure the key
is not lost if the init container fails but continues assuming
(reasonably) that the key is likely still relevant.

Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
(cherry picked from commit 931006fb91)
2026-02-26 15:41:51 +00:00
Satoru Takeuchi ec6008e2ea osd: set device-type label on update
We should set OSDInfo.DeviceType if "device-type" label is
set on the corresponding Deployment. Otherwise, Rook
deletes this label on Update.

Signed-off-by: Satoru Takeuchi <satoru.takeuchi@gmail.com>
(cherry picked from commit dac71d9edd)
2026-02-25 12:27:01 +00:00
Praveen M 08985245ad csi: update imagePullPolicy in operatorconfig and driver CR
Adds ImagePullPolicy configuration to CSI node plugin and controller
plugin specs in both the operator config and driver CR generation functions.
This ensures the CSI driver components use the configured pull policy
from CSIParam.ImagePullPolicy.

Signed-off-by: Praveen M <m.praveen@ibm.com>
(cherry picked from commit 67c4203531)
2026-02-24 16:52:57 +00:00
Oded Viner 27a3576407 nvmeof: add default gateway pod spreading
ensure each gw pod runs on a different node when possible.
add default pod anti-affinity and topology spread constraints.
keep user placement overrides by merging defaults with spec placement.
add tests for default spread and user override behavior.

Signed-off-by: Oded Viner <oviner@redhat.com>
(cherry picked from commit bc6e5fbc86)
2026-02-18 18:43:15 +00:00
Santosh c9b4e2d60b rgw: fix status info when http is disabled
When http is disabled, the spec.status.info.insecure will keep on
showing the insecure endpoint. This PR makes sure that the
spec.status.info.insecure is empty when http is disabled

Signed-off-by: Santosh <sapillai@redhat.com>
(cherry picked from commit 6b9b0231b7)
2026-02-12 15:48:38 +00:00
Joshua Hoblitt 0e25b2089f object: add ObjectStoreUserSpec.OpMask field
Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit 3ef0c90ef8)
2026-02-11 17:11:07 +00:00
subham rai 7be1e02dca Merge pull request #17062 from rook/mergify/bp/release-1.19/pr-16584
exporter: add log collector for ceph exporter pod (backport #16584)
2026-02-11 11:34:05 +05:30
subhamkrai 3a83cbbe71 exporter: add log collector for ceph exporter pod
similar to other ceph pods like osd,mon,mgr,mirror
pod this commit add log collector container to the
main exporter pod to rotate the logs of exporter pod.

Signed-off-by: subhamkrai <srai@redhat.com>
(cherry picked from commit 201f6ae104)
2026-02-10 15:52:04 +00:00
Praveen M 642fb754db csi: update ceph-csi image to 3.16.1
Signed-off-by: Praveen M <m.praveen@ibm.com>
(cherry picked from commit 1ad4c04f14)
2026-02-10 15:40:42 +00:00
subham rai ceca56d37a Merge pull request #17055 from rook/mergify/bp/release-1.19/pr-16963
build(deps): bump sigs.k8s.io/controller-runtime from 0.22.4 to 0.23.0 in the k8s-dependencies group (backport #16963)
2026-02-10 16:24:51 +05:30
subhamkrai 334bc5a1fb test: fix unit test code to remove extra comma
this commit fix regression comming from another pr
which was merged and since github was down ci were
not running.

Signed-off-by: subhamkrai <srai@redhat.com>
(cherry picked from commit f98dd9f9f0)
2026-02-10 13:51:47 +05:30
subhamkrai 6c3759322f build: update deprecated api GetEventRecorderFor
with controller runtime latest version vO.23.0, golangci lint
is complaining about deprecated api deprecated.
This commit updates the api and adds the requried rbacs

Signed-off-by: subhamkrai <srai@redhat.com>
(cherry picked from commit 08344f39f6)
2026-02-09 19:53:23 +00:00
Blaine Gardner cba8cefabb osd: in cephx key init, don't overwrite key on failure
Previously, if the OSD cephx-keyring-update init container couldn't
contact the mons, the output redirect would overwrite the on-disk
keyring file with no text, removing the on-disk keyring.

Modify the init container to only overwrite the keyring file when the
ceph command to get the latest key suceeds, to avoid removing the
on-disk key.

Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
(cherry picked from commit d69ffdfd2c)
2026-02-09 19:22:49 +00:00
Jan Breitkopf 1665c96eb0 operator: fix OSD info
This fixes OSD info being incomplete when a sidecar container is first
in the .spec.Template.Spec.Containers list.
I added a small helper function to find a container named "osd" instead
of always assuming the first one.

Signed-off-by: Jan Breitkopf <jan.breitkopf@prorocketeers.com>
(cherry picked from commit 1ff6f70311)
2026-02-05 19:55:16 +00:00
dependabot[bot] 06bb7a5abe build(deps): bump the k8s-dependencies group with 6 updates
Bumps the k8s-dependencies group with 6 updates:

| Package | From | To |
| --- | --- | --- |
| [k8s.io/api](https://github.com/kubernetes/api) | `0.34.2` | `0.34.3` |
| [k8s.io/apiextensions-apiserver](https://github.com/kubernetes/apiextensions-apiserver) | `0.34.2` | `0.34.3` |
| [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) | `0.34.2` | `0.34.3` |
| [k8s.io/cli-runtime](https://github.com/kubernetes/cli-runtime) | `0.34.2` | `0.34.3` |
| [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.34.2` | `0.34.3` |
| [k8s.io/cloud-provider](https://github.com/kubernetes/cloud-provider) | `0.34.2` | `0.34.3` |

Updates `k8s.io/api` from 0.34.2 to 0.34.3
- [Commits](https://github.com/kubernetes/api/compare/v0.34.2...v0.34.3)

Updates `k8s.io/apiextensions-apiserver` from 0.34.2 to 0.34.3
- [Release notes](https://github.com/kubernetes/apiextensions-apiserver/releases)
- [Commits](https://github.com/kubernetes/apiextensions-apiserver/compare/v0.34.2...v0.34.3)

Updates `k8s.io/apimachinery` from 0.34.2 to 0.34.3
- [Commits](https://github.com/kubernetes/apimachinery/compare/v0.34.2...v0.34.3)

Updates `k8s.io/cli-runtime` from 0.34.2 to 0.34.3
- [Commits](https://github.com/kubernetes/cli-runtime/compare/v0.34.2...v0.34.3)

Updates `k8s.io/client-go` from 0.34.2 to 0.34.3
- [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/kubernetes/client-go/compare/v0.34.2...v0.34.3)

Updates `k8s.io/cloud-provider` from 0.34.2 to 0.34.3
- [Commits](https://github.com/kubernetes/cloud-provider/compare/v0.34.2...v0.34.3)

---
updated-dependencies:
- dependency-name: k8s.io/api
  dependency-version: 0.34.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-dependencies
- dependency-name: k8s.io/apiextensions-apiserver
  dependency-version: 0.34.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-dependencies
- dependency-name: k8s.io/apimachinery
  dependency-version: 0.34.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-dependencies
- dependency-name: k8s.io/cli-runtime
  dependency-version: 0.34.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-dependencies
- dependency-name: k8s.io/client-go
  dependency-version: 0.34.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-dependencies
- dependency-name: k8s.io/cloud-provider
  dependency-version: 0.34.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
(cherry picked from commit 3c51e808f2)
2026-02-05 11:33:57 -07:00
subhamkrai 617abc0202 csi: remove rbd wording from node loss doc
since ceph-csi driver now handles both rbd and cephfs
volume node loss case, let's remove rbd specific
wording from the node loss doc in rook.

Signed-off-by: subhamkrai <srai@redhat.com>
(cherry picked from commit ae33d23053)
2026-02-05 10:54:01 -07:00
subhamkrai 617a347d97 csi: remove automated node fencing code
since node fencing is disabled in rook for sometime
and this feature is implemented in csi. So, this
commits remove obsolete code related to node loss

Signed-off-by: subhamkrai <srai@redhat.com>
(cherry picked from commit 20f350a71a)

# Conflicts:
#	pkg/operator/ceph/cluster/watcher_test.go
2026-02-05 14:47:26 +00:00
Madhu Rajanna 5dd7efeec4 csi: run csi controller plugin on host network
When CSI_ENABLE_HOST_NETWORK is set run the
csi controller plugin pods on the host network

closes: #16960

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
(cherry picked from commit 4416b5ce9d)
2026-02-05 06:21:54 +00:00
Joshua Hoblitt a87105c364 nfs: add CephNFS.spec.server.{image,imagePullPolicy} fields
Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit 3a15255583)
2026-01-29 20:47:53 +00:00
Blaine Gardner 21dccaf7dd rgw: update ca bundle mount perms to read-all
Update the CA bundle volume mount permissions to read-all (o444). RGW
runs as 'ceph', but the volume mount defaults to 'root'. o444 ensures
the RGW can read the bundle.

Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
(cherry picked from commit 5e3f7f8bc0)
2026-01-26 18:23:11 +00:00
Travis Nielsen ea7911e9ac mon: change do not reconcile to be more granular
The do-not-reconcile label on the mon deployments was
causing the mon reconcile to be skipped for all mons,
even if the label was only on a single mon. Now, the
skipping of reconcile will only be scoped to a single
mon.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
(cherry picked from commit d315d0ce46)
2026-01-21 15:15:42 +00:00
Oded Viner 8e1122ecfa nvmeof: add nvme-of gateway crd support
adds CephNVMeOFGateway crd for managing ceph nvme-of gateways.
supports configurable instances, placement, resources,
and networking options.

Signed-off-by: Oded Viner <oviner@redhat.com>
(cherry picked from commit 88a9bf5c7f)
2026-01-20 15:39:32 +00:00
subham rai ec7572dfcb Merge pull request #16930 from rook/mergify/bp/release-1.19/pr-16929
csi: update csi-addons to v0.14.0 (backport #16929)
2026-01-19 13:32:19 +05:30
Sunnatillo a1f1a627d9 object: use ceph version aware CA bundle handling for RGW
Add ceph version check to determine CA bundle configuration method.
Ceph Tentacle+ supports CURL_CA_BUNDLE environment variable, while older
versions require system CA trust update via init container.

Signed-off-by: Sunnatillo <sunnat.samadov@est.tech>
(cherry picked from commit a97233102d)
2026-01-16 14:45:37 +00:00
Sunnatillo 74dde152d5 object: simplify passing SSL certificate to RGW pod via CURL_CA_BUNDLE var
This mounts custom CA bundle directly to the RGW container at
/etc/ceph/rgw-ca-bundle/ and CURL_CA_BUNDLE points to the certificate
file. Ceph changes regarding CURL_CA_BUNDLE variable is in this PR:
https://github.com/ceph/ceph/pull/44283

This change simplifies the CA bundle handling by:
- Removing the update-ca-trust init container and related volumes
- Mounting the CA bundle secret directly to the RGW pod

Signed-off-by: Sunnatillo <sunnat.samadov@est.tech>
(cherry picked from commit 0189e2fd9a)
2026-01-16 14:45:36 +00:00
Praveen M 46fb6bba8b csi: update csi-addons to v0.14.0
Signed-off-by: Praveen M <m.praveen@ibm.com>
(cherry picked from commit 8ebf07bbfe)
2026-01-16 14:37:28 +00:00