Commit Graph
881 Commits
Author SHA1 Message Date
Blaine Gardner 7c33186e72 core: admin cephx key rotation
Implement CephX key rotation for Rook's client.admin user.

Admin user rotation is risky, so this has been tested extensively both
in unit tests as well as by manually injecting failures during runtime.
In testing, all failures were able to be recovered by the recovery
routine.

A mutex is also added to help ensure that two simultaneous admin key
rotation processes cannot be running simultaneously for any given
namespace. The mutex is tested in unit tests, and it was verified during
runtime via  manual testing.

Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
2025-08-27 14:47:45 -06:00
Praveen M 5fc4e15bb1 csi: update ceph-csi to v3.15.0
We have new release for Ceph-CSI v3.15.0 -
https://github.com/ceph/ceph-csi/releases/tag/v3.15.0

Signed-off-by: Praveen M <m.praveen@ibm.com>
2025-08-19 20:56:00 +05:30
subham rai dfff81761a Merge pull request #16320 from subhamkrai/ci-enable-csi-operator
csi: make csi-operator default deployment
2025-08-19 19:00:17 +05:30
subhamkraiandTravis Nielsen c57a47f774 ci: run csi-operator only in canary and upgrade suite
this commit add check to only run the csi-operator in
all the canary tests and upgrade suite only, other suite
like smoke and object will still test csi-driver.

Also, adding changes to make CI happy.

Signed-off-by: subhamkrai <srai@redhat.com>
Co-Authored-by: Travis Nielsen <tnielsen@redhat.com>
Signed-off-by: subhamkrai <srai@redhat.com>
2025-08-19 11:23:14 +05:30
Travis Nielsen f7d2e208c8 Merge pull request #16313 from sp98/fs-mirror-key-rotation
core: rotate fs mirror daemon cephx key
2025-08-18 15:17:06 -06:00
Travis Nielsen 7e92d2fb03 Merge pull request #16311 from travisn/csi-op-scc
security: Configure sccs for the ceph-csi operator
2025-08-18 08:22:08 -06:00
Travis Nielsen 36a47ac01a Merge pull request #16176 from sp98/mon-key-rotation
mon: rotate cephx key
2025-08-15 11:06:31 -06:00
Travis Nielsen cb6da09a44 security: configure sccs for the csi operator
The CSI operator requires the SecurityContextConstraints to
be configured for the service accounts that have a different
name from the previous CSI driver, both via the manifest install
and the helm install.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2025-08-14 13:20:37 -06:00
subhamkrai 506ac2a3ff csi: make csi-operator default deployment
this commits enable the csi-operator by default,
moving it from experimental to stable.

Also, disable the csi-operator chart from generating
rbac in common.yaml

Signed-off-by: subhamkrai <srai@redhat.com>
2025-08-14 22:33:07 +05:30
Santosh Pillai 8df6b8d0d0 core: rotate fs mirror daemon cephx key
Rotate fs mirror daemon cephx keys based on the cephXconfig in the
cephcluster spec and also update the fs mirror status with the latest
cephxStatus

Signed-off-by: Santosh Pillai <sapillai@redhat.com>
2025-08-14 16:16:51 +05:30
Santosh Pillai fe42fe102f mon: rotate keys
rotate mon daemon keys and update the cephx status for mons in the
cephcluster resource.

Signed-off-by: Santosh Pillai <sapillai@redhat.com>
2025-08-14 11:16:39 +05:30
Madhu Rajanna 3d024ce3c7 csi: update the csi-operator API
updating the csi operator API version
to latest version.

Adding the cephFS and RBD controllerPublish
secret that are required for the fencing
operation that is supported by ceph-csi
with csi-operator.

Updated the storageclass to include the
secrets incase if user wants to override
the defaults in the clientProfile for
new PVC's.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2025-08-13 09:30:50 +02:00
Travis Nielsen ce92d9cb33 Merge pull request #16295 from subhamkrai/update-csi-op-deployment
csi: update csi-operator yaml to version v0.4.0
2025-08-12 11:33:13 -06:00
Travis Nielsen 3ea967df70 Merge pull request #16294 from nixpanic/csi-addons/v0.13.0
csi: update Kubernetes CSI-Addons sidecar to version 0.13.0
2025-08-12 11:26:27 -06:00
Travis Nielsen 9f67ee1e20 Merge pull request #16289 from Madhu-1/fix-rbd-user
external: user userID and userKey for rbd
2025-08-12 11:25:15 -06:00
subhamkrai 850ef60a31 csi: update csi-operator yaml to version v0.4.0
this yaml contains all the rbac, crds and csi-operator
deployment all-in-one.

Signed-off-by: subhamkrai <srai@redhat.com>
2025-08-12 22:30:46 +05:30
Niels de Vos 17d53ed16b csi: update Kubernetes CSI-Addons sidecar to version 0.13.0
Signed-off-by: Niels de Vos <ndevos@ibm.com>
2025-08-12 17:56:37 +02:00
Madhu Rajanna db44ef3645 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>
2025-08-12 09:55:35 +02:00
Madhu Rajanna cb89f351ed csi: update cephfs user and key in secret
cephCSI already deprecated the adminID and
adminKey keys in the secrets and to be backward
compatible it still supports the adminID and
adminKey but it logs the warning, updating the
secrets created by Rook to use userID and userKey
instead of adminID and adminKey.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2025-08-12 09:53:55 +02:00
Blaine Gardner 59ca78229d Merge pull request #16075 from sp98/mirror-key-rotation
rbd mirror peer key rotation
2025-08-11 10:54:20 -06:00
Santosh Pillai ee0b137d75 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>
2025-08-11 21:53:14 +05:30
Blaine Gardner 517f519c23 Merge pull request #16227 from sp98/mirror-daemon-key-rotation
core: rotate mirror daemon keys
2025-08-08 09:45:48 -06:00
Santosh Pillai d0fbf6c424 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>
2025-08-08 10:23:49 +05:30
Blaine Gardner 9be45d949b Merge pull request #16069 from OdedViner/default_realm
object: mark realm as default to avoid zone creation
2025-08-07 10:33:11 -06:00
CL0Pinette b63c222d17 csi: add CrossNamespaceVolumeDataSource feature gate
This enables configuring the CrossNamespaceVolumeDataSource feature gate

Signed-off-by: CL0Pinette <me@cl0pinette.fr>
2025-08-07 14:28:33 +02:00
Oded Viner 182cd211ca 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>
2025-08-07 14:48:21 +03:00
Benoît Knecht 0b423a30f9 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>
2025-08-04 16:10:33 -06:00
Travis Nielsen 4d0834f605 Merge pull request #16210 from parth-gr/cephx-exporter
exporter: automate rotate exporter cephx keys
2025-08-01 10:09:39 -06:00
Travis Nielsen cef47087dd Merge pull request #16029 from BlaineEXE/osd-automatic-rotation
OSD: implement automated cephx key rotation for osds
2025-08-01 10:08:39 -06:00
parth-gr 9ec7a767c3 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>
2025-07-31 23:55:37 +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
Blaine Gardner 4189a196c1 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>
2025-07-30 14:18:54 -06:00
Travis Nielsen 66a006b99c core: update ceph version to v19.2.3
With the new squid patch release, update the base
image, the docs, and the examples to all use the latest
stable Ceph release v19.2.3.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2025-07-29 11:51:11 -06:00
Santosh Pillai c615967fa8 Merge pull request #16040 from subhamkrai/rotate-csi-keyrings
csi: automate CSI cephx key rotation
2025-07-29 11:09:50 +05:30
Travis Nielsen 55e02436da Merge pull request #16102 from Madhu-1/add-clusterID
Provide option to set the clusterID in the RNS and SVG CR
2025-07-28 08:48:38 -06:00
Madhu Rajanna 21220ea81f core: add clusterID to subvolume group CRD
Providing an option for user to specify the clusterID
they want to use in the storageclass while creating
the subvolume group.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2025-07-28 08:29:51 +02:00
Madhu Rajanna 2a41afcb28 core: add clusterID to rados namespace CRD
Providing an option for user to specify the clusterID
they want to use in the storageclass while creating
the radosnamespace.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2025-07-28 08:29:51 +02:00
Travis Nielsen f1aa5390e8 Merge pull request #16113 from subhamkrai/upgrade-csi-operator-to-v1
csi: update csi-operator yaml to v1
2025-07-25 11:08:32 -06:00
subhamkrai 6d5401c50d csi: automate CSI cephx key rotation
This PR implements the CSI cephx key rotation feature,
which follows overlapping rotation for non-daemon keys.
Refer to the cephx rotation API from design PR 15915 for details.

Signed-off-by: subhamkrai <srai@redhat.com>
2025-07-25 15:39:00 +05:30
subham rai 5fff02eb86 Merge pull request #16110 from parth-gr/external-cephx
external: automate external users cephx key rotation
2025-07-25 13:45:22 +05:30
Blaine Gardner 3cc77f8777 Merge pull request #16142 from sp98/mds-key-rotation
mds: rotate cephx keys
2025-07-24 12:17:05 -06:00
parth-gr c592d36fc7 external: automate external users cephx key rotation
Ceph has a new ceph auth rotate command currently
present in ceph:main

Add a new flag `--cephx-key-rotate`  to rotate the
cephx keys genrated by external python script,
If we enable it, it will create a new user with suffix `.{x}`

Signed-off-by: parth-gr <partharora1010@gmail.com>
2025-07-24 14:41:51 +05:30
Santosh Pillai f795d9ab57 mds: rotate cephx keys
Rotate cephx keys for all the MDS daemons based on the cephxConfig in
teh cephCluster CR. Update the cephxStatus in the cephCluster CR and
cephfileSystem CR.

Signed-off-by: Santosh Pillai <sapillai@redhat.com>
2025-07-24 06:59:05 +05:30
subhamkrai 6df727b91a csi: update csi-operator yaml to v1
this commit updates the csi-operator complete deployment
file csi-operator.yaml to v1 from v1alpha1.

Signed-off-by: subhamkrai <srai@redhat.com>
2025-07-23 21:02:59 +05:30
Blaine Gardner af6545d79f Merge pull request #16157 from Madhu-1/fix-16156
csi: update ceph-csi to 3.14.2
2025-07-22 14:21:16 -06:00
Santosh Pillai 28db9740de Merge pull request #16127 from sp98/mgr-key-rotate
mgr: rotate cephx keys
2025-07-21 15:29:32 +05:30
Madhu Rajanna 052fe4a9af csi: update ceph-csi to 3.14.2
Updating the ceph-csi image to 3.14.2
release.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2025-07-21 11:24:05 +02:00
Santosh Pillai b486e308c3 mgr: rotate cephx keys
rotate cephx keys based on keyRotationPolicy and update cephxStatus for
the MGR daemon pods.

Signed-off-by: Santosh Pillai <sapillai@redhat.com>
2025-07-21 12:31:35 +05:30
parth-gr 6ffbec7308 core: automate cephclient cephx key rotation
Ceph has a new ceph auth rotate command currently
present in ceph:main

Add a cephclient api support to rotate the
cephx keys genrated by cephclient

Signed-off-by: parth-gr <partharora1010@gmail.com>
2025-07-16 14:43:18 +05:30
Blaine Gardner a156f27f34 Merge pull request #16115 from sp98/clusterCephxStatus-uninitialized
core: init cephxStatus on cephCluster
2025-07-11 13:52:31 -06:00