Commit Graph
12705 Commits
Author SHA1 Message Date
Travis Nielsen 57bdd548e2 Merge pull request #16399 from travisn/update-client-profile
csi: Set the cephfs kernel mount options when network encryption is enabled
2025-08-28 10:27:02 -06:00
Travis Nielsen 6309cd367e csi: default to secure kernel mount options if network encrypted
If the network is encrypted with msgr2, cephfs requires
the mount options to include ms_mode=secure. Now this
will be set by default if the mount options are not
already set in the cephcluster CR or the operator env
var CSI_CEPHFS_KERNEL_MOUNT_OPTIONS.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2025-08-27 16:30:47 -06:00
Travis Nielsen eeebfbf496 csi: set kernel mount options from env var if not in cluster spec
If the cephfs kernel mount options are not specified in the
cephcluster.spec.csi CR settings, fall back to the setting
in the operator env var CSI_CEPHFS_KERNEL_MOUNT_OPTIONS.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2025-08-27 16:11:34 -06:00
Travis Nielsen cc39368964 csi: update client profile when changing
The csi client profile CR needed to be updated if
the spec changed. Previously, the client profile was never
being updated because it was calling Update() on the
existing CR retreived from Get(), rather than with
the updated spec.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2025-08-27 15:57:28 -06:00
Blaine Gardner b162873623 Merge pull request #16271 from BlaineEXE/admin-key-rotation
core: rotate client.admin cephx key
2025-08-27 15:20:28 -06:00
Blaine Gardner b023eebc8c Merge pull request #16396 from BlaineEXE/csi-fix-cephx-status-from-config
csi: fix wrong use of daemon config for cephx status
2025-08-27 15:14:14 -06:00
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
Blaine Gardner 480b407bc2 csi: fix wrong use of daemon config for cephx status
Fix a wrong usage of the CephX daemon config that should be CephX CSI
config.

Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
2025-08-27 14:36:54 -06:00
Travis Nielsen b58689acbd Merge pull request #16393 from travisn/csi-driver-names
csi: Always initialize CSI driver names
2025-08-27 11:46:46 -06:00
Travis Nielsen 32a9bbedda Merge pull request #16392 from obnoxxx/build-fix-error-message
build: fix/improve an error message
2025-08-27 11:20:39 -06:00
Travis Nielsen af548ef2f6 csi: always initialize driver names
The driver names were only being initialized in certain code paths
where the drivers were being started and stopped. However, another
code path relied on those names being set. Now, we initialize the
driver names every time the CSI params are initialized, instead of
initializing the names separately.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2025-08-27 11:06:49 -06:00
Michael Adam 30667877a4 build: fix/improve an error message
The error message issued by `make` when the available golang was ont one
of the supported versions was somewhat confusion or even broken.

This change fixes the message.

Signed-off-by: Michael Adam <obnox@samba.org>
2025-08-27 18:53:11 +02:00
Travis Nielsen 87fa0a9a65 Merge pull request #16384 from sophotechlabs/add-sophotech-to-adopters-list
docs: add Sophotech to adopters list
2025-08-26 12:20:16 -06:00
Artem Muterko cd93c0fd58 docs: add Sophotech to adopters list
Signed-off-by: Artem Muterko <artem@sopho.tech>
2025-08-26 19:53:40 +02:00
subham rai 8f3cfb1e03 Merge pull request #16379 from rook/dependabot/go_modules/github-dependencies-e743bb0a3f
build(deps): bump the github-dependencies group with 6 updates
2025-08-26 14:21:32 +05:30
subham rai 9050972784 Merge pull request #16376 from travisn/topology-default-labels
csi: Generate default crush topology labels
2025-08-26 13:35:46 +05:30
subham rai da79736797 Merge pull request #16378 from rook/dependabot/github_actions/azure/setup-helm-4.3.1
build(deps): bump azure/setup-helm from 4.3.0 to 4.3.1
2025-08-26 12:51:08 +05:30
dependabot[bot] 73ab9017a9 build(deps): bump the github-dependencies group with 6 updates
Bumps the github-dependencies group with 6 updates:

| Package | From | To |
| --- | --- | --- |
| [github.com/aws/aws-sdk-go-v2/config](https://github.com/aws/aws-sdk-go-v2) | `1.31.0` | `1.31.2` |
| [github.com/aws/aws-sdk-go-v2/credentials](https://github.com/aws/aws-sdk-go-v2) | `1.18.4` | `1.18.6` |
| [github.com/aws/aws-sdk-go-v2/service/sns](https://github.com/aws/aws-sdk-go-v2) | `1.37.0` | `1.37.2` |
| [github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring](https://github.com/prometheus-operator/prometheus-operator) | `0.84.1` | `0.85.0` |
| [github.com/prometheus-operator/prometheus-operator/pkg/client](https://github.com/prometheus-operator/prometheus-operator) | `0.84.1` | `0.85.0` |
| [github.com/stretchr/testify](https://github.com/stretchr/testify) | `1.10.0` | `1.11.0` |

Updates `github.com/aws/aws-sdk-go-v2/config` from 1.31.0 to 1.31.2
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/v1.31.0...config/v1.31.2)

Updates `github.com/aws/aws-sdk-go-v2/credentials` from 1.18.4 to 1.18.6
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/config/v1.18.6/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/config/v1.18.4...config/v1.18.6)

Updates `github.com/aws/aws-sdk-go-v2/service/sns` from 1.37.0 to 1.37.2
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/v1.37.0...v1.37.2)

Updates `github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring` from 0.84.1 to 0.85.0
- [Release notes](https://github.com/prometheus-operator/prometheus-operator/releases)
- [Changelog](https://github.com/prometheus-operator/prometheus-operator/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prometheus-operator/prometheus-operator/compare/v0.84.1...v0.85.0)

Updates `github.com/prometheus-operator/prometheus-operator/pkg/client` from 0.84.1 to 0.85.0
- [Release notes](https://github.com/prometheus-operator/prometheus-operator/releases)
- [Changelog](https://github.com/prometheus-operator/prometheus-operator/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prometheus-operator/prometheus-operator/compare/v0.84.1...v0.85.0)

Updates `github.com/stretchr/testify` from 1.10.0 to 1.11.0
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.10.0...v1.11.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/config
  dependency-version: 1.31.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/credentials
  dependency-version: 1.18.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/sns
  dependency-version: 1.37.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-dependencies
- dependency-name: github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring
  dependency-version: 0.85.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-dependencies
- dependency-name: github.com/prometheus-operator/prometheus-operator/pkg/client
  dependency-version: 0.85.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-dependencies
- dependency-name: github.com/stretchr/testify
  dependency-version: 1.11.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: subhamkrai <srai@redhat.com>
2025-08-26 12:45:32 +05:30
subham rai 31f454cfd2 Merge pull request #16377 from rook/dependabot/github_actions/github/codeql-action-3.29.11
build(deps): bump github/codeql-action from 3.29.10 to 3.29.11
2025-08-26 12:39:19 +05:30
dependabot[bot] 156395d911 build(deps): bump azure/setup-helm from 4.3.0 to 4.3.1
Bumps [azure/setup-helm](https://github.com/azure/setup-helm) from 4.3.0 to 4.3.1.
- [Release notes](https://github.com/azure/setup-helm/releases)
- [Changelog](https://github.com/Azure/setup-helm/blob/main/CHANGELOG.md)
- [Commits](https://github.com/azure/setup-helm/compare/b9e51907a09c216f16ebe8536097933489208112...1a275c3b69536ee54be43f2070a358922e12c8d4)

---
updated-dependencies:
- dependency-name: azure/setup-helm
  dependency-version: 4.3.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-26 00:08:58 +00:00
dependabot[bot] d99a30b365 build(deps): bump github/codeql-action from 3.29.10 to 3.29.11
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3.29.10 to 3.29.11.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/96f518a34f7a870018057716cc4d7a5c014bd61c...3c3833e0f8c1c83d449a7478aa59c036a9165498)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-version: 3.29.11
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-25 21:59:19 +00:00
Travis Nielsen 79e067ec05 csi: generate default crush topology labels
The csi read affinity requires the crush topology labels
to be specified in the cephconnection CR. If they are
not specified by the user, rook can generate the default
topology labels instead of expecting them.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2025-08-25 11:55:00 -06:00
Travis Nielsen ffcb0d31d6 Merge pull request #16343 from travisn/hostnet-scc
helm: Enable host network for OpenShift if needed
2025-08-20 10:11:25 -06:00
Blaine Gardner 6d84310db5 Merge pull request #16336 from parth-gr/fix-csi-priorkey
csi: fix the prior key count for csi key rotation
2025-08-20 10:07:34 -06:00
parth-gr 7b5d476887 csi: fix the prior key count for csi key rotation
fix the prior key count status for the csi
key rotation

Signed-off-by: parth-gr <partharora1010@gmail.com>
2025-08-20 20:40:52 +05:30
Blaine Gardner 540b0c8637 Merge pull request #15915 from BlaineEXE/design-cephx-rotate
doc: add design for cephx key rotation
2025-08-19 15:09:18 -06:00
Blaine Gardner 99332fd9de doc: add design for cephx key rotation
Add a design doc to addres RFE #15904.

This design outlines important UX and implementation details for
achieving automated/assisted workflows for rotating CephX authentication
keys for Ceph daemons and other clients.

Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
2025-08-19 15:08:21 -06:00
Blaine Gardner 37b6d41d04 Merge pull request #16346 from BlaineEXE/key-rotation-1.18-cleanup
CephX key rotation 1.18 cleanup
2025-08-19 14:55:05 -06:00
Blaine Gardner 52255e314c doc: add advanced cephx key rotation doc
Add a minimally useful document explaining how to initiate CephX key
rotation for users.

Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
2025-08-19 12:19:46 -06:00
Travis Nielsen 8729332edf Merge pull request #16352 from iPraveenParihar/csi/update-ceph-csi-v3.15
csi: update ceph-csi to v3.15.0
2025-08-19 11:30:05 -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
Blaine Gardner a952b7511a core: allow cephx rotation for ceph 19.2.3 except mons
Allow Rook to rotate CephX keys for Ceph v19.2.3 and up with the
exception of Ceph mons. While v19.2.3 has the `ceph auth rotate` command
that Rook needs to perform key rotation, there is still ongoing work in
Ceph to change how the `mon.` key is tracked internally. Rook's mon key
rotation requires those currently-unreleased Ceph changes.

Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
2025-08-18 16:50:11 -06:00
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 024eb01bd7 Merge pull request #16340 from rook/dependabot/github_actions/snyk/actions-86b1cee1b8e110a78d528b3e1328a80e218111d2
build(deps): bump snyk/actions from 77490d94e966421e076e95ad8fa87aa55e5ca409 to 86b1cee1b8e110a78d528b3e1328a80e218111d2
2025-08-18 15:14:23 -06:00
Travis Nielsen 03701eec0a Merge pull request #16341 from rook/dependabot/go_modules/k8s-dependencies-3885b81615
build(deps): bump the k8s-dependencies group with 6 updates
2025-08-18 15:14:03 -06:00
Travis Nielsen 82262a8472 helm: enable host network for openshift if needed
The securityContextConstraints require setting whether
host networking and host port access is needed by the
ceph cluster service accounts. The helm chart now allows
enabling this mode with the settings:
rook-ceph chart: useOperatorHostNetwork: true
rook-ceph-cluster chart: cephClusterSpec.network.provider: host

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2025-08-18 15:02:53 -06:00
Blaine Gardner 2fd9c9a88c core: finalize CephCluster CephX status handling
Cleanup up overall usage of CephX statuses in CephCluster.

Convert all CephX statuses to non-pointer types. There is no specific
need for pointer types, and keeping these as non-pointers means there is
not a risk of nil pointer exceptions in all the various Rook controllers
for upgraded clusters.

Move initialization of CephCluster CephX status items to
`preMonStartupActions()`. This helps resolve 2 issues:

1. 'Uninitialized' state was being set for external CephClusters where
   CephX statuses are not relevant.
2. 'Uninitialized' state was being set for upgraded clusters whose key
   status cannot be determined.

Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
2025-08-18 14:53:08 -06:00
Travis Nielsen e2c41fd691 Merge pull request #16258 from travisn/csi-op-docs
docs: CSI operator deployment documentation
2025-08-18 13:44:38 -06:00
dependabot[bot] 208837a7bf 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.33.3` | `0.33.4` |
| [k8s.io/apiextensions-apiserver](https://github.com/kubernetes/apiextensions-apiserver) | `0.33.3` | `0.33.4` |
| [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) | `0.33.3` | `0.33.4` |
| [k8s.io/cli-runtime](https://github.com/kubernetes/cli-runtime) | `0.33.3` | `0.33.4` |
| [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.33.3` | `0.33.4` |
| [k8s.io/cloud-provider](https://github.com/kubernetes/cloud-provider) | `0.33.3` | `0.33.4` |

Updates `k8s.io/api` from 0.33.3 to 0.33.4
- [Commits](https://github.com/kubernetes/api/compare/v0.33.3...v0.33.4)

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

Updates `k8s.io/apimachinery` from 0.33.3 to 0.33.4
- [Commits](https://github.com/kubernetes/apimachinery/compare/v0.33.3...v0.33.4)

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

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

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

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-18 13:29:00 -06:00
subham rai a65191fc92 Merge pull request #16339 from rook/dependabot/github_actions/github/codeql-action-3.29.10
build(deps): bump github/codeql-action from 3.29.8 to 3.29.10
2025-08-18 23:05:50 +05:30
dependabot[bot] 46d44ff2a5 build(deps): bump snyk/actions
Bumps [snyk/actions](https://github.com/snyk/actions) from 77490d94e966421e076e95ad8fa87aa55e5ca409 to 86b1cee1b8e110a78d528b3e1328a80e218111d2.
- [Release notes](https://github.com/snyk/actions/releases)
- [Commits](https://github.com/snyk/actions/compare/77490d94e966421e076e95ad8fa87aa55e5ca409...86b1cee1b8e110a78d528b3e1328a80e218111d2)

---
updated-dependencies:
- dependency-name: snyk/actions
  dependency-version: 86b1cee1b8e110a78d528b3e1328a80e218111d2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-18 17:21:33 +00:00
dependabot[bot] 53329581d1 build(deps): bump github/codeql-action from 3.29.8 to 3.29.10
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3.29.8 to 3.29.10.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/76621b61decf072c1cee8dd1ce2d2a82d33c17ed...96f518a34f7a870018057716cc4d7a5c014bd61c)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-version: 3.29.10
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-18 17:05:44 +00: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 c23754fc11 Merge pull request #16329 from degorenko/fix-pool-remove
pool: fix cephblockpool remove when related pool is already removed
2025-08-15 13:45:34 -06:00
Denis Egorenko c9e0f89a8b pool: fix cephblockpool remove when related pool is already removed from cluster
When removeing CephBlockPool check first that related ceph pool is exist in cluster,
since it may be manually removed by mistake.

Related-Issue: #16328
Signed-off-by: Denis Egorenko <degorenko@mirantis.com>
2025-08-15 22:59:34 +04: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
Blaine Gardner 95c5cb0d94 Merge pull request #16070 from Madhu-1/client-name-override
core: option to override the ceph user name in cephClient CR
2025-08-15 10:54:11 -06:00
Madhu Rajanna a71cc27b72 core: implement client name override
There is a field in the CR spec to override
the name and the feature was not implement,
This commits adds the support to override the
cephclient name if ever required.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2025-08-15 09:50:32 -06:00