Commit Graph
1224 Commits
Author SHA1 Message Date
Prabhala Tara Aasrita ebf90170bc pool: support CRUSH MSR rules for EC pools
Added failureDomains and osdsPerDomain fields to the
ErasureCodedSpec, which maps to the crush-num-failure-domains and
crush-osds-per-failure-domain Ceph EC profile parameters. This enables
creating EC pools that distribute chunks across fewer, larger hosts
without needing one host per data chunk.

Signed-off-by: Prabhala Tara Aasrita <taraprabhala@Prabhalas-MacBook-Pro.local>
(cherry picked from commit 715f38de91)
2026-07-28 19:46:04 +00:00
Travis Nielsen 8c5ca91584 build: update the version to v1.20.3
For the patch release update the docs and examples
to v1.20.3

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2026-07-28 11:55:57 -06:00
Joshua Hoblitt 8d8dec6fc3 helm: add toolbox repository and tag settings
The operator image in the rook-ceph chart and the Ceph image in the
rook-ceph-cluster chart are both configured as a repository and tag
pair. The toolbox was the exception, taking a single toolbox.image
string.

Add toolbox.repository and toolbox.tag, so the toolbox image can be
configured the same way as the others. Either setting may be applied on
its own; whichever is left unset falls back to cephImage.repository or
cephImage.tag.

The new settings take precedence over toolbox.image, which continues to
apply when neither is set, so existing values files are unaffected.

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit faf2bffe5a)
2026-07-28 17:13:32 +00:00
raaizik ec9028a9f8 doc: document CephNFS custom port and exposure examples
Document spec.server.port for host-network port conflicts, and describe
how user-managed LoadBalancer and NodePort Services must align port and
targetPort with the CR.

Signed-off-by: raaizik <raaizik@yahoo.com>
Co-Authored-By: Blaine Gardner <b.blaine.gardner@gmail.com>
(cherry picked from commit a400ae6fd5)
2026-07-28 14:50:05 +00:00
raaizik 7c4787691d nfs: support custom NFS server port
When NFS runs with host networking, port 2049 may already be in use.
Add CephNFS spec.server.port (default 2049), wire it through Ganesha
config, the operator Service, and probes, and regenerate CRDs.

Signed-off-by: raaizik <raaizik@yahoo.com>
(cherry picked from commit 5e36fa4bc3)
2026-07-28 14:50:04 +00:00
Travis Nielsen d6bfed466c Merge pull request #17948 from rook/mergify/bp/release-1.20/pr-17919
monitoring: deduplicate pool growth prediction series (backport #17919)
2026-07-22 09:31:39 -06:00
Joshua Hoblitt 2fe4b8f354 helm: add multisite CR support to rook-ceph-cluster chart
Add optional CephObjectRealm, CephObjectZoneGroup, and CephObjectZone
resources to the rook-ceph-cluster chart so an RGW multisite topology can
be deployed from the chart alongside CephObjectStore.

Each resource type follows the existing per-list template idiom: a new
template ranges over a values list and renders name, namespace, and spec.
The realm template renders spec only when set, supporting both a new realm
(no spec) and a pulled realm (spec.pull.endpoint).

The three lists ship commented out in values.yaml with a multisite
example, matching the opt-in cephECBlockPools precedent, so a default
install creates no multisite resources.

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit 8989bff653)
2026-07-13 20:10:40 +00:00
Jeff Wallace cf1acb42c7 monitoring: align pool growth alert with ceph mixin
Aggregate pool usage by pool before predict_linear to avoid duplicate series after mgr pod replacement, and add a one-hour hold time to match the source rule update in ceph/ceph#68621.

Signed-off-by: Jeff Wallace <jeff@tjwallace.ca>
(cherry picked from commit 5119f3aeb4)
2026-07-13 17:44:49 +00:00
Michael Adam 4457429406 build: set the release version to v1.20.2
For the patch release update the docs and images to
v1.20.2.

Signed-off-by: Michael Adam <obnox@samba.org>
2026-07-07 12:33:29 -06:00
subhamkrai 6b106fc03f csi: update csi-operator version to v1.0.4
Updating csi-operator to latest v1.0.4 and
updating the required doc changes as well.

Signed-off-by: subhamkrai <srai@redhat.com>
(cherry picked from commit a3e02e607d)
2026-07-07 11:15:12 -06:00
Joshua Hoblitt ac686a02c8 docs: fix typos and grammar in code comments
Fix duplicate words, incorrect articles (a/an), it's/its, and other small
grammar mistakes in Go comments and user-facing messages across pkg/, cmd/,
and tests/.

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit c0eb360041)
2026-07-01 09:23:27 -07:00
Oded Viner 8ae7637750 security: restrict mgr NetworkPolicy to ingress-only
The MGR watch-active sidecar needs Kubernetes API access to
read configmaps and monitor active-standby state. The API
server is host-networked and cannot be targeted by
pod/namespace selectors, making egress restrictions
impractical.

Switch the rook-ceph-mgr NetworkPolicy from egress-only to
ingress-only:
- Allow MON/OSD/MDS/tools pods on ports 6800-7300
- Allow Prometheus scraping on port 9283
- Remove egress rules that blocked API server access and
  caused CrashLoopBackOff in the watch-active container

Signed-off-by: Oded Viner <oviner@redhat.com>
(cherry picked from commit 9cec9780fd)
2026-06-30 17:41:34 +00:00
Joshua Hoblitt dcd4dfb2bd docs: fix function comments to match their declaration names
Several godoc comments led with a stale or incorrect identifier, left
over from renames, exported/unexported changes, copy-paste between
sibling declarations, or plain typos. As a result the documented name no
longer matched the function, method, type, or var it describes. Correct
each leading word to the name of the declaration it documents.

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit 49612461a4)
2026-06-29 19:04:45 +00:00
subhamkrai 87e7082d48 core: implement ceph health warning mute
this commit implement api to configure
ceph health warning mute/unmute.

Signed-off-by: subhamkrai <srai@redhat.com>
(cherry picked from commit 9a6c5842bc)
2026-06-29 15:50:37 +00:00
subhamkrai 789876785e core: add api changes to mute ceph warnings
adding api changes to mute/unmute ceph warnings
based on user configuration. The field is map[string]string
key is ceph warning and value is duration how longs
the warnings will be muted.

Signed-off-by: subhamkrai <srai@redhat.com>
(cherry picked from commit ff5f3baa58)
2026-06-29 15:50:37 +00:00
Joshua Hoblitt cfec82af69 external: add timeout to rgw admin ops api request
The rgw endpoint validation issued an HTTP request to the admin ops
api without a timeout. If the RGW is accepting connections but slow to
respond, for example right after the object store was created, the
script hangs indefinitely instead of reporting a validation error that
the caller could retry on.

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit 459c4bebe9)
2026-06-26 19:31:16 +00:00
parth-gr bf85ab04b9 external: volumeattachment should be deleted during unmount
before the csi op, the unblish grpc call was not present,
and it has no op
But with csi op, the unpublish grpc is called before the
volumeattachment get remove, and the unpublish call need a
unpublish secret, currently it is getting the secret from the
client profile, but the client profile secret is hardcoded to default
So to override this secret we are adding the secret name in the
storageclass parameter

Signed-off-by: parth-gr <partharora1010@gmail.com>
(cherry picked from commit 88e31185dc)
2026-06-26 15:08:41 +00:00
kavirakesh14 8e0e66d324 operator: fail reconcile if rook-config-override lacks trailing newline
Signed-off-by: kavirakesh14 <kavirakesh007@gmail.com>
(cherry picked from commit 619b800b67)
2026-06-24 16:49:17 +00:00
Oded Viner 448154e0d3 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>
(cherry picked from commit 9dc70051a8)
2026-06-17 18:54:41 +00:00
subhamkrai e2600812e5 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>
(cherry picked from commit ad26ebdab0)
2026-06-17 17:01:15 +00:00
Michael Adam efe29fae94 build: set the release version to v1.20.1
For the patch release update the docs and images to
v1.20.1.

Signed-off-by: Michael Adam <obnox@samba.org>
2026-06-16 13:08:01 -06:00
parth-gr adcb56ee70 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>
(cherry picked from commit 8171c3ed3b)
2026-06-15 10:12:36 +00:00
subham rai 3afc8f2adb Merge pull request #17721 from rook/mergify/bp/release-1.20/pr-17701
nvmeof: fetch gateway image from ceph config when not in CR (backport #17701)
2026-06-12 12:29:57 +05:30
Oded Viner 2a2dc44cb7 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>
(cherry picked from commit 8b4fd67e17)
2026-06-11 18:03:36 +00:00
parth-gr ba65c926c6 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>
(cherry picked from commit dbc8d2a541)
2026-06-11 15:40:26 +00:00
Travis Nielsen f2e67a2b3c 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>
(cherry picked from commit c5c6ef385d)
2026-06-09 04:35:46 +00:00
subhamkrai 07a1a68b1f 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>
(cherry picked from commit 774054c45e)
2026-06-05 21:25:59 +00:00
subhamkrai 426225a60a 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>
(cherry picked from commit 34b0a87c9e)
2026-06-05 20:54:38 +00:00
Michael Adam 764715b92c build: update release version to v1.20.0
For the minor release v1.20, update the examples and docs

Signed-off-by: Michael Adam <obnox@samba.org>
2026-06-02 19:19:14 +02:00
subhamkrai 92b50220d6 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>
(cherry picked from commit fbef1d755e)
2026-06-02 16:32:36 +00:00
subhamkrai 51868449e9 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>
(cherry picked from commit e4e6d3958a)
2026-05-27 23:18:37 +00:00
subhamkrai e10393f5a2 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>
(cherry picked from commit b70a0c9257)
2026-05-27 15:52:52 +00:00
subhamkrai 1ad231b355 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>
(cherry picked from commit 34c5ad7049)
2026-05-27 13:50:27 +00:00
Praveen M c616cb918f 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>
(cherry picked from commit 449d1baeb7)
2026-05-27 11:25:18 +00:00
Joshua Hoblitt 69eddeaa27 helm: add cluster label to prom persistent-volume-alert.rules
Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit ec75182dad)
2026-05-26 19:09:17 +00:00
Joshua Hoblitt afadabcf4e helm: drop ceph version constraint from PrometheusJobExporterMissing
The purpose of this constraint is unknown.

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
(cherry picked from commit 22913f5b2f)
2026-05-26 19:09:16 +00:00
Joshua Hoblitt 64f6b8d2e6 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>
(cherry picked from commit 47c97cf4a2)
2026-05-26 19:09:16 +00:00
subhamkrai ec3953ea34 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>
(cherry picked from commit 06452991bf)
2026-05-21 15:22:41 -06:00
Oded Viner 81e10ad5bf 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>
(cherry picked from commit 572527d476)
2026-05-14 17:09:43 +00:00
subhamkrai 536909a58b 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>
(cherry picked from commit 9fb0582dd6)
2026-05-14 16:38:55 +00:00
subhamkrai a9d29bdec6 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>
(cherry picked from commit 4eefad42e8)
2026-05-12 12:49:21 -10:00
Travis Nielsen 97926f1dc9 Merge pull request #17470 from rook/mergify/bp/release-1.20/pr-17464
core: add default ResourceRequirements for cmd-reporter (backport #17464)
2026-05-12 12:47:37 -10:00
mergify[bot] e51203798d Merge pull request #17513 from rook/mergify/bp/release-1.20/pr-17474
core: Declare concurrent cluster reconciles stable (backport #17474)
2026-05-12 10:38:37 +00:00
Travis Nielsen 4182fe67a1 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>
(cherry picked from commit 45ec32e513)
2026-05-11 22:50:18 +00:00
Oded Viner 67520301ac 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>
(cherry picked from commit f8c1c99cb4)
2026-05-11 22:04:16 +00:00
Prabhala Tara Aasrita 46d62209db 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>
(cherry picked from commit e6ad74087e)
2026-05-07 15:46:35 +00:00
subhamkrai 3445e2be3a 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>
(cherry picked from commit 01ef98c1e3)
2026-05-06 17:13:59 +00:00
Joshua Hoblitt ffbb449b82 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>
(cherry picked from commit 64cf1df920)
2026-04-30 17:34:49 +00:00
Travis Nielsen 82e9c4de51 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>
(cherry picked from commit 62a9debceb)
2026-04-28 22:24:53 +00:00
Travis Nielsen 03b9b8b1b0 Merge pull request #17427 from rook/mergify/bp/release-1.20/pr-17282
pool: clean up unused crush rules (backport #17282)
2026-04-27 13:32:01 -06:00