Commit Graph
1210 Commits
Author SHA1 Message Date
Travis Nielsen dc50bce4e6 Merge pull request #17559 from OdedViner/network_policy_upstream
security: add example NetworkPolicy CRs for Ceph operand pods
2026-06-17 12:54:24 -06:00
subhamkrai ad26ebdab0 build: update ceph version to latest v20.2.2
updating the ceph version from v20.2.1 to v20.2.2

Signed-off-by: subhamkrai <srai@redhat.com>
2026-06-17 22:00:11 +05:30
Oded Viner 9dc70051a8 security: add example NetworkPolicy CRs for Ceph operand pods
Add a single example YAML with NetworkPolicy definitions
for all Ceph operand pods (mon, osd, mgr, mds, exporter,
osd-prepare, crashcollector, tools).
Users can apply these policies to restrict egress/ingress
traffic for Rook-Ceph daemon pods.

Signed-off-by: Oded Viner <oviner@redhat.com>
2026-06-16 17:44:34 +03:00
Parth Arora 31236a51e5 Merge pull request #17628 from parth-gr/drbd-upstream
core: add a install guide for tnf
2026-06-15 15:42:09 +05:30
parth-gr 8171c3ed3b core: add a install guide for tnf
add a install guide for tnf
1) Add a drbd install script
2) add a drbd instal doc

assisted-by: anthropic-ai/claude-code

Signed-off-by: parth-gr <partharora1010@gmail.com>
2026-06-12 17:22:43 +05:30
Travis Nielsen d8dd41a623 Merge pull request #17701 from OdedViner/nvme_image
nvmeof: fetch gateway image from ceph config when not in CR
2026-06-11 12:02:45 -06:00
Oded Viner 8b4fd67e17 nvmeof: fetch gateway image from ceph config when not in CR
Make the NVMe-oF gateway image optional in the CR spec.
When not specified, the operator fetches the image from
the Ceph mon config store using the key
mgr/cephadm/container_image_nvmeof. Falls back to the
hardcoded default if the config is unavailable.

Signed-off-by: Oded Viner <oviner@redhat.com>
2026-06-11 19:55:16 +03:00
parth-gr dbc8d2a541 external: update the external cluster to make use of csi op
updated the external cluster doc, and helm and manifest
install to make use of csi operator as it is the default
offering now

Signed-off-by: parth-gr <partharora1010@gmail.com>
2026-06-11 19:10:30 +05:30
Travis Nielsen c5c6ef385d docs: helm instructions to install drivers in another namespace
The helm values need to be updated if installing the drivers
chart in a namespace other than rook-ceph.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2026-06-08 11:11:01 -06:00
Travis Nielsen 1ec99ff4d8 Merge pull request #17665 from subhamkrai/udpate-rook-upgrade-docs
docs: add rook compatible ceph csi driver values
2026-06-05 15:25:29 -06:00
subhamkraiandTravis Nielsen 774054c45e docs: add rook compatible ceph csi driver values
adding rook compatible Ceph-Csi driver values.yaml
file making sure, upgrading to 1.20 doesn't break
when csi-driver is moved to admin.

Co-authored-by: Travis Nielsen <tnielsen@redhat.com>
Signed-off-by: subhamkrai <srai@redhat.com>
2026-06-05 14:48:21 -06:00
subhamkrai 34b0a87c9e csi: csi-addons should be disabled by default
having csi-addons enabled by default is causing random
pod restart on non-openshift cluster. Let's disable
it by default.

Signed-off-by: subhamkrai <srai@redhat.com>
2026-06-05 13:42:17 -06:00
subhamkrai fbef1d755e docs: add few examples settings for new csi management
this command adds some examples on how users can add/update
the settings based on new way of managing CSI resources.

Signed-off-by: subhamkrai <srai@redhat.com>
2026-06-02 20:47:42 +05:30
subhamkrai e4e6d3958a operator: add csi operator cr default in openshift example
adding csi operator CR default values to operator-openshift
file for cluster running on openshift.

Signed-off-by: subhamkrai <srai@redhat.com>
2026-05-27 14:23:15 -06:00
Travis Nielsen 9774d2de75 Merge pull request #17570 from subhamkrai/add-tls1.3-ciphers
object: add TLS 1.3 cipher suite support for RGW beast frontend
2026-05-27 09:51:33 -06:00
subhamkrai 34c5ad7049 build: update csi-operator to v1.0.1
Updating csi-operator to latest v1.0.1 and
updating the required doc changes as well.

Signed-off-by: subhamkrai <srai@redhat.com>
2026-05-27 18:05:56 +05:30
Praveen M 449d1baeb7 csi: update ceph-csi image and sidecars
Update ceph-csi to v3.17.0 and CSI sidecars:
- csi-provisioner v6.1.1 -> v6.2.0
- csi-attacher v4.11.0 -> v4.12.0
- csi-node-driver-registrar v2.16.0 -> v2.17.0

Signed-off-by: Praveen M <m.praveen@ibm.com>
2026-05-27 13:25:22 +05:30
Joshua Hoblitt 959c223fa8 Merge pull request #17544 from jhoblitt/maint/sync-prometheusrules
helm: update prometheus rules from upstream ceph/ceph; add `cluster` label to all scraped metrics
2026-05-26 12:08:42 -07:00
subhamkrai b70a0c9257 object: add TLS 1.3 cipher suite support for RGW beast frontend
adding new tls ssl_ciphersuites supporting tls 1.3 and the existing,
ssl_cipher supports tls 1.2 and below. Adding, the docs and unit-test
changs as well.

Signed-off-by: subhamkrai <srai@redhat.com>
2026-05-26 20:50:21 +05:30
Travis Nielsen 888e725c40 Merge pull request #17555 from subhamkrai/update-csi-operator-1.0
csi: update csi-operator to v1.0.0
2026-05-21 12:32:46 -06:00
subhamkraiandTravis Nielsen 06452991bf csi: update csi-operator to v1.0.0
this commit update the csi-operator to latest v1.0.0.
we need to manually patch the csi drivers with the new serviceAccount
name that are being creating based on the latest ceph-csi-operator
release v1.0.0 where serviceAccount are being separate from csi-operator
chart.

co-authored-by: Travis Nielsen <tnielsen@redhat.com>
Signed-off-by: subhamkrai <srai@redhat.com>
2026-05-21 21:52:32 +05:30
Joshua Hoblitt 0f02ac7af7 Merge pull request #17476 from stingalleman/update-external-store-example
external: update object-external.yaml example
2026-05-18 13:44:24 -07:00
Sting Alleman a927edb6d5 external: update object-external.yaml example
Update the description in the object-external example. Previously it
contained a note about replication recommendations, which does not apply
when using an external Ceph cluster object store.

Signed-off-by: Sting Alleman <me@stingalleman.nl>
2026-05-18 22:14:29 +02:00
Joshua Hoblitt ec75182dad helm: add cluster label to prom persistent-volume-alert.rules
Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
2026-05-15 14:55:07 -07:00
Joshua Hoblitt 22913f5b2f helm: drop ceph version constraint from PrometheusJobExporterMissing
The purpose of this constraint is unknown.

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
2026-05-14 16:12:46 -07:00
Joshua Hoblitt 47c97cf4a2 helm: update prometheus rules from upstream ceph/ceph
Synced with:

https://github.com/ceph/ceph/blob/4b5096cc0de40a1b80bf801b4261bb58b0702e82/monitoring/ceph-mixin/prometheus_alerts.yml

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
2026-05-14 16:12:30 -07:00
Oded Viner 572527d476 security: remove net_raw from operator-openshift.yaml scc
net_raw is listed in the rook-ceph scc allowedcapabilities
but no daemon uses it — all pods explicitly drop net_raw.
remove it to align with the go scc helper and helm charts.

Signed-off-by: Oded Viner <oviner@redhat.com>
2026-05-14 19:41:11 +03:00
Travis Nielsen 2ef74f3189 Merge pull request #17447 from subhamkrai/add-stipe-unit-support
pool: add stripe_unit with erasure-code-profile set
2026-05-14 10:38:06 -06:00
subhamkrai 9fb0582dd6 pool: add stripe_unit with erasure-code-profile set
this commit adds flag stripe_unit for the command
ceph osd erasure-code-profile set [flags]. This key
increase perfomance for ec pool. The default value
is 4kib/4096 bytes.

Signed-off-by: subhamkrai <srai@redhat.com>
2026-05-14 21:39:15 +05:30
Travis Nielsen a6b7da2c5a Merge pull request #17474 from travisn/stable-concurrency
core: Declare concurrent cluster reconciles stable
2026-05-11 12:49:21 -10:00
Oded Viner f8c1c99cb4 nvmeof: add sys_admin to scc allowedcapabilities for gateway pods
the nvmeof gateway requires privileged containers with
sys_admin capability. the rook-ceph scc only allowed mknod,
causing pod creation to fail on openshift with:
"unable to validate against any security context constraint"

add sys_admin to allowedcapabilities in the helm chart sccs
and the go scc helper. this does not affect other daemons
(osd, rgw, mgr, mon) since they do not request sys_admin.

the operator-openshift.yaml example already includes
sys_admin, so this aligns the helm charts to match.

Signed-off-by: Oded Viner <oviner@redhat.com>
2026-05-11 13:47:12 +03:00
Prabhala Tara Aasrita e6ad74087e helm: add ROOK_CEPH_MON_RUN_AS_ROOT to chart values
Added monRunAsRoot chart value to support the ROOK_CEPH_MON_RUN_AS_ROOT environment variable in the operator ConfigMap.

Fixes #17452

Signed-off-by: Prabhala Tara Aasrita <taraasrita@ibm.com>
2026-05-07 11:54:08 +05:30
subhamkrai 01ef98c1e3 rgw: add option for tls and cipher in objectstore
this commit add option in the ceph objecstore CR
to configure TLS profile and TLS ciphersuite for
rgw beast.

Signed-off-by: subhamkrai <srai@redhat.com>
2026-05-06 21:02:30 +05:30
Travis Nielsen 45ec32e513 core: declare stable concurrent cluster reconciles
The ROOK_RECONCILE_CONCURRENT_CLUSTERS feature was implemented
in v1.19. This feature has been stable, with no related issues
reported. The feature is tested in the CI with no known
stability issues. Let's declare this feature as stable.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2026-05-01 14:18:35 -06:00
Joshua Hoblitt 64cf1df920 core: add default ResourceRequirements for cmd-reporter
The cmd-reporter ResourceRequirements are used by the
`rook-ceph-detect-version` pod.  Setting a default ResourceRequirement
is useful in and of itself while always allowing the `values.yaml` serve
double duty as a configuration example.

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
2026-04-30 08:52:54 -07:00
subhamkrai 4eefad42e8 csi: move csi management to admin
Going forward, admin will manage the csi operator
CR's and rook will only manage Ceph Connection cr
and client Profile cr.

The old csi driver is completely removed from Rook
and can no longer be used starting in Rook v1.20.

The upgrade guide will contain the needed transition steps
for managing the csi operator settings.

Signed-off-by: subhamkrai <srai@redhat.com>
2026-04-29 14:24:26 -06:00
Travis Nielsen 62a9debceb core: update all docs and examples to v20.2.1
With the default version now being v20.2.1, also update
all of the examples, documentation, and default CI to run
with that version

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2026-04-28 14:09:17 -06:00
Oded Viner 7f3e2ace27 security: grant scc to rook-ceph-nvmeof service account
the rook-ceph-nvmeof service account is not listed in the
securitycontextconstraints users, causing cephnvmeofgateway
pods to fail on openshift. add the service account to the
scc in the helm charts, go scc builder, and test namespace
substitution.

Signed-off-by: Oded Viner <oviner@redhat.com>
2026-04-27 16:28:15 +03:00
Asish Kumar 24a35e4e74 pool: clean up unused crush rules
Clean up stale CRUSH rules after the Ceph mgr starts so rules left behind by pool failure-domain or device-class changes do not accumulate indefinitely.

The cleanup is guarded by a package-level RWMutex. Pool create and update paths hold the read lock while creating and assigning CRUSH rules, while cluster-wide cleanup holds the write lock before listing pools and deleting unused rules. This keeps pool reconciles parallel with each other while preventing cleanup from deleting a rule that another reconcile has just created but not yet attached to a pool.

Keep direct pool-delete cleanup for the pool's current CRUSH rule, make the cluster-wide cleanup best-effort across all unused rules, and add an operator-level ROOK_DELETE_UNUSED_CRUSH_RULES setting for clusters that need to leave unused custom rules in place.

Document the operator and Helm settings, regenerate the Helm chart docs, and add a pending release note for the default cleanup behavior.

Signed-off-by: Asish Kumar <officialasishkumar@gmail.com>
2026-04-24 23:57:40 +05:30
Elias Carter 5a065948e2 doc: fix out of date references to default PgHealthyRegex
Signed-off-by: Elias Carter <elias@dropbox.com>
2026-04-20 09:39:25 -07:00
Travis Nielsen d3dd9f77dc Merge pull request #17352 from taraasrita10/setenv_rook_unreachablenode
helm: set ROOK_UNREACHABLE_NODE_TOLERATION_SECONDS from chart values
2026-04-17 08:22:32 -06:00
Alexander Degenhart 17b98da89e csi: add 'CSIMetadataRadosNamespace' parameter to CephFilesystemSubVolumeGroup
This parameter is written to .spec.cephFS.radosNamespace of the generated
ClientProfile.

The parameter is called 'CSIMetadataRadosNamespace' to clarify that it is used
for CSI metadata and unrelated to the actual CephFS (meta)data.

Context:

The ceph-csi CephFS plugin stores additional metadata related to PV(C)s
in RADOS objects in the metadata pool of the CephFS.
By default those objects are stored in the 'csi' RADOS namespace.

For a multi-tenant CephFS setup (that is used by multiple K8s Clusters/
ceph-csi drivers) segregating those additional objects into separate RADOS
namespaces is desireable so the clusters can not modify the metadata of other
clusters (enforced by appropriate ceph client capabilities).

'ceph-csi' implemented this via the `cephFS.radosNamespace` config option for
cluster entries in the `ceph-csi-config` ConfigMap with https://github.com/ceph/ceph-csi/pull/4661.

The `ceph-csi-operator` added support for that config entry by adding
'radosNamespace' to the 'CephFsConfigSpec' of the 'ClientProfile' with
https://github.com/ceph/ceph-csi-operator/pull/165.

Signed-off-by: Alexander Degenhart <degenhart@fim.uni-passau.de>
2026-04-16 00:31:29 +02:00
Prabhala Tara Aasrita dcb501de56 helm: set ROOK_UNREACHABLE_NODE_TOLERATION_SECONDS from chart values
Previously the unreachable node toleration on the operator pod was hardcoded to 5 seconds in the Helm chart and the ROOK_UNREACHABLE_NODE_TOLERATION_SECONDS env var was notset up at all. This change reads both from .Values.unreachableNodeTolerationSeconds (defaulting to 5).

Fixes #17303

Signed-off-by: Prabhala Tara Aasrita <taraasrita@ibm.com>
2026-04-14 21:25:04 +05:30
Travis Nielsen 8dabe11973 Merge pull request #17324 from gonzolino/rook-ceph-mgr-role-secondary
mgr: Add missing RBAC role for ceph-mgr in secondary clusters
2026-04-08 11:43:21 -06:00
Travis Nielsen abacf2e367 Merge pull request #16836 from subhamkrai/update-use-tentacnle
build: use ceph tentacle v20 as default version
2026-04-08 11:20:11 -06:00
Santosh Pillai 700220bfed Merge pull request #17262 from mateenali66/add-cleanup-job-example
deploy/examples: add standalone cleanup-job.yaml
2026-04-08 22:44:47 +05:30
Daniel Gonzalez 6e8bb63705 manifest: add missing rook-ceph-mgr role to secondary cluster
Fixes: https://github.com/rook/rook/issues/17323

Signed-off-by: Daniel Gonzalez <daniel@gonzalez-nothnagel.de>
2026-04-08 15:43:11 +02:00
subhamkrai 6285afc0a4 build: use ceph tentacle v20 as default version
let's use ceph tentacle as default version in deployment

Signed-off-by: subhamkrai <srai@redhat.com>
2026-04-08 15:39:17 +05:30
Travis Nielsen cc626020ba Merge pull request #17250 from sp98/implement-cosuser-accounts
rgw: add accountRef to CephObjectStoreUser CR
2026-04-02 15:56:30 -06:00
Mateen Anjum e3b4217458 manifest: add standalone cleanup-job.yaml example
Add a standalone Job manifest mirroring the cleanup logic the operator
executes via cleanUpJobTemplateSpec when a CephCluster is deleted with
cleanupPolicy enabled.

Useful when the operator-managed cleanup did not run (e.g. force-deleted
cluster) or a node needs manual cleanup outside normal operator flow.

Secrets (ROOK_MON_SECRET, ROOK_CLUSTER_FSID) are sourced from the
rook-ceph-mon secret via secretKeyRef. Namespace is injected via the
Downward API. Only dataDirHostPath and node hostname need manual input.

Closes #17255

Signed-off-by: Mateen Anjum <mateenali66@gmail.com>
2026-04-02 09:50:11 -04:00