Commit Graph
12610 Commits
Author SHA1 Message Date
Madhu Rajanna cc2df188de external: user userID and userKey for rbd
csi never used adminID and adminKey for the
rbd secrets, This currently looks to be a
bug where we are creating the secret with userID
and userKey but updating it with adminID and
adminKey, This commits update the script to
use userID and userKey for RBD secrets.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
(cherry picked from commit db44ef3645)
2025-08-12 17:26:04 +00:00
mergify[bot] c698ab260b Merge pull request #16273 from rook/mergify/bp/release-1.18/pr-16269
csi: Create cephconnection CR with name of the cluster namespace (backport #16269)
2025-08-12 07:06:04 +00:00
mergify[bot] b5d64ea340 Merge pull request #16281 from rook/mergify/bp/release-1.18/pr-16075
rbd mirror peer key rotation (backport #16075)
2025-08-11 17:39:04 +00:00
Santosh Pillai 519ec6821c core: rotate rbd mirror peer key
rotate the client.rbd-mirror-peer key based on the cephxconfig.
Also update the cephxStatus in the cephcluster as well as the
mirrored cephblockpool.

Signed-off-by: Santosh Pillai <sapillai@redhat.com>
(cherry picked from commit ee0b137d75)
2025-08-11 16:55:09 +00:00
mergify[bot] e920350ff9 Merge pull request #16279 from rook/mergify/bp/release-1.18/pr-16277
csi: use cluster namespace for cephConn (backport #16277)
2025-08-11 07:51:49 +00:00
Madhu Rajanna 41c4e24e35 csi: use cluster namespace for cephConn
CephConnection CR is created with the
kubernetes namespace name as its the
unique name in the entire cluster.
This PR removes unwanted input
parameters and adjust the namespace
name for the cephConnection CR.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
(cherry picked from commit 1ff3f07ac5)
2025-08-11 07:12:44 +00:00
Blaine Gardner 4c26697576 Merge pull request #16274 from rook/mergify/bp/release-1.18/pr-16227
core: rotate mirror daemon keys (backport #16227)
2025-08-08 10:23:15 -06:00
Santosh Pillai c78c66f7e6 core: rotate mirror daemon keys
rotate RBD mirror daemon keys, add secret resource version to the mirror
deployment and update the mirror resource status after the key is
rotated

Signed-off-by: Santosh Pillai <sapillai@redhat.com>
(cherry picked from commit d0fbf6c424)
2025-08-08 15:46:23 +00:00
Travis Nielsen dac320bc20 csi: create cephconnection cr with cluster namespace name
The cephconnection CR expects to be created with the name of
the namespace where the cephcluster CR is found, so the CSI
driver can find the cluster when provisioning the volume.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
(cherry picked from commit 134e27e353)
2025-08-08 15:08:11 +00:00
mergify[bot] 943ab71cfa Merge pull request #16265 from rook/mergify/bp/release-1.18/pr-16260
core: cleanup csi-related folders from /var/lib/rook during uninstall (backport #16260)
2025-08-07 18:41:04 +00:00
mergify[bot] f17e7e979e Merge pull request #16268 from rook/mergify/bp/release-1.18/pr-16249
mon: Failover mon immediately if node not exist (backport #16249)
2025-08-07 18:13:41 +00:00
mergify[bot] 1688d296d7 Merge pull request #16267 from rook/mergify/bp/release-1.18/pr-16069
object: mark realm as default to avoid zone creation (backport #16069)
2025-08-07 17:03:25 +00:00
Travis Nielsen 66b3e42e03 mon: failover mon immediately if node not exist
During mon failover, if a mon is assigned to a node
but the node does not exist, the mon should be failed
over immediately instead of waiting for a 10 or 20
minute timeout. If the node does not exist, the mon pod
will be in a pending state until the failover is finally
triggered, and no point in waiting that long if the
node is gone.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
(cherry picked from commit 8b4d3b19cf)
2025-08-07 16:41:14 +00:00
Oded Viner 40a3f704a3 object: mark realm as default to avoid zone creation
add defaultRealm field to cephobjectstore to allow rook to mark the
created realm as default. this prevents ceph from auto-creating a
"default" zonegroup and zone when the default is not explicitly set.
affects only non-multisite setups.

Signed-off-by: Oded Viner <oviner@redhat.com>
(cherry picked from commit 182cd211ca)
2025-08-07 16:34:15 +00:00
Oded Viner 6b8e1b6dc9 core: cleanup csi-related folders from /var/lib/rook during uninstall
delete csi-related directories from /var/lib/rook that
match the suffix `.csi.ceph.com`.
these folders were used in earlier versions when rook managed
cephcsi directly. in later versions, logs and data are redirected
to /var/lib/cephcsi, but legacy paths may still exist and require
cleanup during uninstall.
this change improves cleanup completeness for odf 4.18 and earlier.

example of directories removed:
- /var/lib/rook/openshift-storage.cephfs.csi.ceph.com
- /var/lib/rook/openshift-storage.rbd.csi.ceph.com

Signed-off-by: Oded Viner <oviner@redhat.com>
(cherry picked from commit 87165cc6d1)
2025-08-07 16:24:19 +00:00
mergify[bot] fdaa1faae5 Merge pull request #16263 from rook/mergify/bp/release-1.18/pr-16244
csi: add CrossNamespaceVolumeDataSource feature gate (backport #16244)
2025-08-07 15:34:26 +00:00
mergify[bot] b30d288d7c Merge pull request #16261 from rook/mergify/bp/release-1.18/pr-16257
tests: Upgrade from 1.17 to master (backport #16257)
2025-08-07 15:29:17 +00:00
CL0Pinette d3285df792 csi: add CrossNamespaceVolumeDataSource feature gate
This enables configuring the CrossNamespaceVolumeDataSource feature gate

Signed-off-by: CL0Pinette <me@cl0pinette.fr>
(cherry picked from commit b63c222d17)
2025-08-07 15:01:30 +00:00
Travis Nielsen 7fac68eddf tests: upgrade from 1.17 to master
For the integration tests, now we start upgrading from v1.17.x
to the master branch, to test that the upgrades are stable
to what will become the 1.18 release.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
(cherry picked from commit 86d30082ab)
2025-08-07 14:55:25 +00:00
mergify[bot] 9a34af63b6 Merge pull request #16256 from rook/mergify/bp/release-1.18/pr-16224
test: factor out util/admin package for setup of ceph admin client (backport #16224)
2025-08-06 17:56:40 +00:00
Travis Nielsen 46471358e0 Merge pull request #16250 from rook/mergify/bp/release-1.18/pr-16238
docs: Upgrade guide support from 1.17 to 1.18 (backport #16238)
2025-08-06 10:53:43 -06:00
Joshua Hoblitt 0e23655646 test: factor out util/admin package for setup of ceph admin client
Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit 36f1a3308f)
2025-08-06 16:52:18 +00:00
Travis Nielsen b92c49cdd9 docs: upgrade guide support from 1.17 to 1.18
With the pending 1.18 release, the upgrade guide now
documents considerations for the upgrade from
v1.17 to v1.18.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
(cherry picked from commit ba30d383dc)
2025-08-05 16:05:36 -06:00
mergify[bot] 0394821b29 Merge pull request #16248 from rook/mergify/bp/release-1.18/pr-16239
ci: Update min k8s version to v1.29 (backport #16239)
2025-08-05 20:03:52 +00:00
Travis Nielsen db3287e796 ci: update min k8s version to v1.29
For Rook v1.18 the min supported version of K8s is
v1.29. With the pending release of K8s 1.34, this
will be the typical six most recent releases that
Rook tests against.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
(cherry picked from commit 3137244409)
2025-08-05 13:04:12 -06:00
mergify[bot] b96c3f996a Merge pull request #16247 from rook/mergify/bp/release-1.18/pr-16017
osd: validate node topology to prevent invalid crush map hierarchy (backport #16017)
2025-08-05 18:45:34 +00:00
Oded Viner 13faad2269 osd: validate node topology to prevent invalid crush map hierarchy
add a validation check to fail osd deployment when topology labels
like rack or chassis are duplicated across parent domains
(e.g., zones). this prevents invalid crush map hierarchies
(dfbugs-2610).

Signed-off-by: Oded Viner <oviner@redhat.com>
(cherry picked from commit 973f8a3a35)
2025-08-05 13:58:38 +00:00
mergify[bot] b3ad41b04b Merge pull request #16241 from rook/mergify/bp/release-1.18/pr-16104
core: set erasure-code-profile plugin based on pool algorithm (backport #16104)
2025-08-04 23:20:02 +00:00
Benoît Knecht 7b082939b8 core: only support isa and jerasure algorithms on ec pools
The `CephBlockPool` CR allowed any algorithm to be specified in
`spec.erasureCoded.algorithm`, but in practice only `isa` or `jerasure`
would work.

Make that restriction explicit by restricting this field to `isa` or
`jerasure` in the CRD.

Signed-off-by: Benoît Knecht <bknecht@protonmail.ch>
(cherry picked from commit 0b423a30f9)
2025-08-04 22:47:51 +00:00
Benoît Knecht f1c9de5b4c core: set erasure-code-profile plugin based on pool algorithm
When a `CephBlockPool` defines `spec.erasureCoded.algorithm`, use it as
the erasure-code-profile plugin.

Until now, that parameter would have been ignored completely, and every
erasure-coded pool would use the same plugin as the `default`
erasure-code-profile (i.e. `jerasure`).

Note that using any algorithm other than `jerasure` or `isa` is likely
to fail given the current implementation, as different algorithm require
different sets of parameters, and those cannot be supplied by the
user.

Signed-off-by: Benoît Knecht <bknecht@protonmail.ch>
(cherry picked from commit d7f08693ed)
2025-08-04 22:47:51 +00:00
Travis Nielsen db3c5b6cdb Merge pull request #16235 from rook/mergify/bp/release-1.18/pr-16052
object: simplify CephObjectStoreUser deletion logic (backport #16052)
2025-08-04 15:58:10 -06:00
Travis Nielsen 5d26d2e63d Merge pull request #16236 from rook/mergify/bp/release-1.18/pr-16233
build(deps): bump snyk/actions from 28606799782bc8e809f4076e9f8293bc4212d05e to 77490d94e966421e076e95ad8fa87aa55e5ca409 (backport #16233)
2025-08-04 13:28:04 -06:00
dependabot[bot] 9ebef6a11b build(deps): bump snyk/actions
Bumps [snyk/actions](https://github.com/snyk/actions) from 28606799782bc8e809f4076e9f8293bc4212d05e to 77490d94e966421e076e95ad8fa87aa55e5ca409.
- [Release notes](https://github.com/snyk/actions/releases)
- [Commits](https://github.com/snyk/actions/compare/28606799782bc8e809f4076e9f8293bc4212d05e...77490d94e966421e076e95ad8fa87aa55e5ca409)

---
updated-dependencies:
- dependency-name: snyk/actions
  dependency-version: 77490d94e966421e076e95ad8fa87aa55e5ca409
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
(cherry picked from commit 8396b81abd)
2025-08-04 18:23:24 +00:00
Joshua Hoblitt 31d20c7c27 object: simplify CephObjectStoreUser deletion logic
Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit 1163133aec)
2025-08-04 18:15:21 +00:00
mergify[bot] 69c16db3a1 Merge pull request #16230 from rook/mergify/bp/release-1.18/pr-16223
object: simplify obc storageclass lookup (backport #16223)
2025-08-04 15:39:11 +00:00
Joshua Hoblitt fc392248c6 object: simplify obc storageclass lookup
obc was using an internal exponential backup for the lookup of the sc.
This is somewhat of an anti-pattern when using controller-runtime as it
implements retrying logic. If the sc doesn't exist, the reconcile
attempt should fail immediately and controller-runtime will handle the
back-off policy.

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit 80da084732)
2025-08-04 15:06:41 +00:00
Blaine Gardner 82e3773afb Merge pull request #16222 from rook/mergify/bp/release-1.18/pr-16220
object: fix bucket policy in sync detection (backport #16220)
2025-08-01 16:29:36 -06:00
Joshua Hoblitt 7b65e17599 object: fix bucket policy in sync detection
A typo was causing the operator to attempt to sync bucket policy when
the state was already in sync. This resulted in the operator carrying
out unnecessary work and logging activity with no user visible change
resulting.

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit fbc60608ed)
2025-08-01 19:27:10 +00:00
mergify[bot] 60ffd2991e Merge pull request #16218 from rook/mergify/bp/release-1.18/pr-16210
exporter: automate rotate exporter cephx keys (backport #16210)
2025-08-01 17:20:35 +00:00
mergify[bot] ff48520f7a Merge pull request #16217 from rook/mergify/bp/release-1.18/pr-16029
OSD: implement automated cephx key rotation for osds (backport #16029)
2025-08-01 16:41:31 +00:00
parth-gr 3df15cacef exporter: automate rotate exporter cephx keys
rotate cephx keys based on keyRotationPolicy
and update cephxStatus for the ceph exporter daemon pods.

Signed-off-by: parth-gr <partharora1010@gmail.com>
(cherry picked from commit 9ec7a767c3)
2025-08-01 16:11:14 +00:00
Blaine Gardner 55de1bcb38 osd: implement automated cephx key rotation for osds
Implement automated CephX key rotation for OSDs.

OSDs have marshalled CephX statuses applied as an annotation on the OSD
pod spec, which differs from other Rook Ceph daemons for a two reasons:

A large cluster could have hundreds or thousands of OSDs, so it is more
critical that Rook avoid rotating OSD keys more than once in the event a
CephCluster reconcile restarts partway through OSD creation/updation.

OSDs do not have their CephX keys stored in K8s Secrets, whose resource
version is used for enforcing the desired restart behavior other daemon
pods like RGWs.

Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
(cherry picked from commit 4189a196c1)
2025-08-01 16:09:14 +00:00
Travis Nielsen 9a838d185b Merge pull request #16214 from obnoxxx/release-1.18-prep-beta0
build: set the release version for the  v1.18.0-beta.0  release
v1.18.0-beta.0
2025-07-31 12:49:57 -06:00
Michael Adam ac84d08929 build: set the release version for the v1.18.0-beta.0 release
For the minor release update the docs and examples
    to v1.18.0-beta.0

Signed-off-by: Michael Adam <obnox@samba.org>
2025-07-31 19:58:07 +02:00
Travis Nielsen eadaca9d6c Merge pull request #16201 from OdedViner/host_path_cleanup
core: improve cleanup of /var/lib/rook during cluster teardown
v1.18.0-alpha.0
2025-07-31 11:35:26 -06:00
Oded Viner 5992415b36 core: improve cleanup of /var/lib/rook during cluster teardown
extend StartHostPathCleanup to remove additional directories
under /var/lib/rook

Signed-off-by: Oded Viner <oviner@redhat.com>
2025-07-31 19:14:24 +03:00
Santosh Pillai fd2b4333e8 Merge pull request #16171 from parth-gr/cephx-crashcollector
core: automate rotate crashcollector  cephx keys
2025-07-31 13:41:13 +05:30
parth-gr fd6d22fcfe core: automate rotate crashcollector keys
rotate cephx keys based on keyRotationPolicy
and update cephxStatus for the crashcollector
daemon pods.

Signed-off-by: parth-gr <partharora1010@gmail.com>
2025-07-31 11:30:55 +05:30
Travis Nielsen 4c40d8923c Merge pull request #16179 from rook/dependabot/go_modules/k8s-dependencies-560c54cd74
build(deps): bump the k8s-dependencies group across 1 directory with 7 updates
2025-07-30 18:34:50 -06:00
dependabot[bot] a324a680f9 build(deps): bump the k8s-dependencies group across 1 directory with 7 updates
Bumps the k8s-dependencies group with 6 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [k8s.io/apiextensions-apiserver](https://github.com/kubernetes/apiextensions-apiserver) | `0.32.3` | `0.33.3` |
| [k8s.io/cli-runtime](https://github.com/kubernetes/cli-runtime) | `0.32.3` | `0.33.3` |
| [k8s.io/cloud-provider](https://github.com/kubernetes/cloud-provider) | `0.32.3` | `0.33.3` |
| [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) | `0.20.3` | `0.21.0` |
| [sigs.k8s.io/mcs-api](https://github.com/kubernetes-sigs/mcs-api) | `0.1.0` | `0.2.0` |
| [sigs.k8s.io/yaml](https://github.com/kubernetes-sigs/yaml) | `1.4.0` | `1.6.0` |

Updates `k8s.io/apiextensions-apiserver` from 0.32.3 to 0.33.3
- [Release notes](https://github.com/kubernetes/apiextensions-apiserver/releases)
- [Commits](https://github.com/kubernetes/apiextensions-apiserver/compare/v0.32.3...v0.33.3)

Updates `k8s.io/cli-runtime` from 0.32.3 to 0.33.3
- [Commits](https://github.com/kubernetes/cli-runtime/compare/v0.32.3...v0.33.3)

Updates `k8s.io/client-go` from 0.32.3 to 0.33.3
- [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/kubernetes/client-go/compare/v0.32.3...v0.33.3)

Updates `k8s.io/cloud-provider` from 0.32.3 to 0.33.3
- [Commits](https://github.com/kubernetes/cloud-provider/compare/v0.32.3...v0.33.3)

Updates `sigs.k8s.io/controller-runtime` from 0.20.3 to 0.21.0
- [Release notes](https://github.com/kubernetes-sigs/controller-runtime/releases)
- [Changelog](https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md)
- [Commits](https://github.com/kubernetes-sigs/controller-runtime/compare/v0.20.3...v0.21.0)

Updates `sigs.k8s.io/mcs-api` from 0.1.0 to 0.2.0
- [Release notes](https://github.com/kubernetes-sigs/mcs-api/releases)
- [Changelog](https://github.com/kubernetes-sigs/mcs-api/blob/master/RELEASE.md)
- [Commits](https://github.com/kubernetes-sigs/mcs-api/compare/v0.1.0...v0.2.0)

Updates `sigs.k8s.io/yaml` from 1.4.0 to 1.6.0
- [Release notes](https://github.com/kubernetes-sigs/yaml/releases)
- [Changelog](https://github.com/kubernetes-sigs/yaml/blob/master/RELEASE.md)
- [Commits](https://github.com/kubernetes-sigs/yaml/compare/v1.4.0...v1.6.0)

---
updated-dependencies:
- dependency-name: k8s.io/apiextensions-apiserver
  dependency-version: 0.33.3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: k8s-dependencies
- dependency-name: k8s.io/cli-runtime
  dependency-version: 0.33.3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: k8s-dependencies
- dependency-name: k8s.io/client-go
  dependency-version: 0.33.3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: k8s-dependencies
- dependency-name: k8s.io/cloud-provider
  dependency-version: 0.33.3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: k8s-dependencies
- dependency-name: sigs.k8s.io/controller-runtime
  dependency-version: 0.21.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: k8s-dependencies
- dependency-name: sigs.k8s.io/mcs-api
  dependency-version: 0.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: k8s-dependencies
- dependency-name: sigs.k8s.io/yaml
  dependency-version: 1.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: k8s-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-30 17:20:50 -06:00