Commit Graph
705 Commits
Author SHA1 Message Date
Travis Nielsen 4083282687 Merge pull request #14801 from rook/bugfix/cephobjectzone-existing-pools
rgw: fix CephObjectZone failing with pre-existing pools
2024-10-03 13:49:15 -06:00
Travis Nielsen e26d5f80ed Merge pull request #14795 from travisn/remove-quincy
core: Remove support for Ceph Quincy
2024-10-03 12:07:39 -06:00
Joshua Hoblitt 76fa776795 rgw: change CephObjectZone.spec.{dataPool,metadataPool} to optional
These fields must be optional in order to allow usage of pre-existing
pools managed by CephBlockPool CR(s).

Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
2024-10-03 10:56:24 -07:00
Joshua Hoblitt ed8156017e test: add object-with-cephblockpool canary test
Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
2024-10-03 10:16:30 -07:00
Travis Nielsen b665d7a7b7 core: remove support for ceph quincy
Given that Ceph Quincy (v17) is past end of life,
remove Quincy from the supported Ceph versions,
examples, and documentation.

Supported versions now include only Reef and Squid.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2024-10-03 11:12:55 -06:00
Travis Nielsen 810de394e7 helm: add enforce host network setting
The ROOK_ENFORCE_HOST_NETWORK option was implemented recently
and now we add the helm setting to expose this new setting
in the rook chart.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2024-10-02 15:14:46 -06:00
Michael Adam ab8fd90aa6 core: add ROOK_REVISION_HISTORY_LIMIT operator setting
This adds an operator config setting ROOK_REVISION_HISTORY_LIMIT
defaulting to kubernetes'value for RevisionHistoryLimit.

If configured, the provided value will be used as RevisionHistoryLimit

for all Deployments rook creates.

Fixes: #12722

Signed-off-by: Michael Adam <obnox@samba.org>
2024-10-02 19:40:37 +02:00
subham rai 5d69d80874 Merge pull request #14722 from subhamkrai/update-caps-cephfs-external-fencing
external: mds caps to healthchecker/cephfs users
2024-09-20 11:41:50 +05:30
Travis Nielsen d4f3bf3f2c Merge pull request #14717 from cobaltcore-dev/ceph_exporter_config
Configure prio-limit for ceph exporter container
2024-09-18 14:15:17 -06:00
Travis Nielsen 19ab0eab76 Merge pull request #14720 from black-dragon74/docs-add-vgs
docs: Add documentation for VolumeGroupSnapshot
2024-09-18 13:46:49 -06:00
Praveen M afad40e404 csi: update csi-addons to v0.10.0
The csi-addons v0.10.0 release is now available.
Ref: https://github.com/csi-addons/kubernetes-csi-addons/releases/tag/v0.10.0

Signed-off-by: Praveen M <m.praveen@ibm.com>
2024-09-18 12:19:46 +05:30
subhamkrai 32c5d99ef5 external: mds caps to healthchecker/cephfs users
for cephfs fencing in external mode, we run command `ceph tell mds ***`
which requires user user to include cap mds allow * in permission. So,
we need to add this in healthchercker and cephfs provisioner user

Signed-off-by: subhamkrai <srai@redhat.com>
2024-09-17 22:51:04 +05:30
Niraj Yadav 1e3d08f114 docs: add documentation for volumegroupsnapshot
This PR adds the sample YAMLs and documentation
for the VolumeGroupSnapshot feature.

Signed-off-by: Niraj Yadav <niryadav@redhat.com>
2024-09-17 16:55:14 +05:30
Artem Torubarov b2c39ace25 exporter: move config to cluster CRD
allows to set prio-limit and stats-period options to ceph exporter

Signed-off-by: Artem Torubarov <artem.torubarov@clyso.com>
2024-09-16 14:51:49 +02:00
Travis Nielsen 45cdbb6767 Merge pull request #14679 from galexrt/add_grafana_dashboards
docs: add grafana dashboards files to docs
2024-09-12 10:42:26 -06:00
Alexander TrostandTravis Nielsen 36f6807fbe docs: add grafana dashboards files to docs
Co-authored-by: Travis Nielsen <tnielsen@redhat.com>
Signed-off-by: Alexander Trost <galexrt@googlemail.com>
2024-09-12 15:44:16 +02:00
Travis Nielsen b16c1f223e Merge pull request #14588 from cobaltcore-dev/rgw-pool-placement
Rgw pool placement
2024-09-09 11:16:54 -06:00
Madhu Rajanna d041be4bcf csi: update to new cephcsi release
we have 3.12.2 as the new cephcsi release
updating the rook to use the same.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2024-09-06 16:17:24 +02:00
Artem Torubarov 59175f0b40 rgw: pool placement
Signed-off-by: Artem Torubarov <torubarov.a.a@gmail.com>
2024-09-06 16:02:53 +02:00
Madhu Rajanna 05d579b607 csi: update csi-addons to v0.9.1
updating csi-addons to latest
v0.9.1 release.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2024-09-03 12:52:00 +02:00
rene 746ef30b09 helm: reorder volumes in rook-ceph-csi scc for argocd diff to show no changes
Signed-off-by: rene <rene.raab@gmx.net>
Co-authored-by Travis Nielsen <tnielsen@redhat.com>
2024-08-30 13:51:58 -06:00
Blaine Gardner 6a4c87dc92 Merge pull request #14616 from BlaineEXE/rgw-allow-extra-volumes
rgw: allow users to add custom volume mounts
2024-08-28 16:47:23 -06:00
Blaine Gardner eea43b7b79 rgw: allow users to add custom volume mounts
Allow RGW users to mount arbitrary volumes to RGW pods. This follows the
pattern that was established for NFS to support SSSD and LDAP, and
reuses much of the same code.

This opens the door wider for advanced users to take advantage of some
Ceph RGW features that Rook doesn't have first class support for.

Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
2024-08-27 16:16:53 -06:00
parth-gr d2f8ce4c47 external: remove the false bool values from config file
currently we created a new config file or user creation,
Which was have the user config.

We were also appending the script deafult values to the config file
With that all the boolean values were appended to the config.ini file

v2-port-enable = False
....

But the config.ini treat all the bolean values as true, irrespective of they
are set to, it is  because the boolean cli flag doesnt accept the argument

So now removed all the false values from the config.ini

Signed-off-by: parth-gr <partharora1010@gmail.com>
2024-08-21 22:19:30 +05:30
subhamkrai 838f583c66 csi: use specific tag instead of latest image
when I was pusing the new changes in older pr I missed
updating the latest tag to v0.1.0 in csi-operator.yaml
file. Updating now.

Signed-off-by: subhamkrai <srai@redhat.com>
2024-08-21 08:00:17 +05:30
Blaine Gardner afdfffac67 Merge pull request #14435 from parth-gr/osd-resize
osd: reweight osd while resizing
2024-08-20 12:14:22 -06:00
Travis Nielsen 3d747f399e Merge pull request #14598 from jrcichra/configurable-metrics-bind-address
core: add configuration option for metrics bindAddress
2024-08-20 12:13:43 -06:00
Justin Cichra 74a79b24b3 core: add configuration option for metrics bindAddress
Alerting on controller-runtime's workqueue_depth can be useful for
debugging controllers. Also having a prometheus target for a pod gives
another data point that the system is working as expected. It is useful
for uptime alerts.

Make the bind address configurable via the configmap while still retaining the default
behavior that it is disabled.

Resolves: #14538

Signed-off-by: Justin Cichra <jcichra@cloudflare.com>
2024-08-20 13:38:38 -04:00
Zuhair AlSader 6714b86d3b manifest: add registry name to docker images
Signed-off-by: Zuhair AlSader <zuhair@devzero.io>
2024-08-20 13:35:08 -04:00
Travis Nielsen 128dcddfcf Merge pull request #14599 from subhamkrai/update-csi-operator-version
csi: update csi-operator to use latest tag v0.1
2024-08-20 11:26:44 -06:00
parth-gr 17cfda5bd6 osd: reweight osd while resizing
osd got resized by cryptsetup bluestore cmd
but it should also be reweight to balance the pgs properly

closes: https://github.com/rook/rook/issues/14430

Signed-off-by: parth-gr <partharora1010@gmail.com>
2024-08-20 22:52:33 +05:30
Praveen M 1efe3b6ee9 csi: add csinodes rbac rule for cephfs provisioner
Signed-off-by: Praveen M <m.praveen@ibm.com>
2024-08-20 22:08:21 +05:30
Praveen M a1ddf4535d csi: update csi sidecars' image version
Below csi sidecars are updated with latest available versions

csi-resizer: v1.11.1
csi-provisioner: v5.0.1
csi-attacher: v4.6.1
csi-snapshotter: v8.0.1
csi-node-driver-registrar: v2.11.1

Signed-off-by: Praveen M <m.praveen@ibm.com>
2024-08-20 22:08:19 +05:30
subhamkrai 2556e14780 build: changes forced by latest controller-runtime
this commit contains changes that are forced by latest
controller-runtime version v0.19.0.

Signed-off-by: subhamkrai <srai@redhat.com>
2024-08-20 21:21:42 +05:30
subhamkrai 89e9077e72 csi: update csi-operator to use latest tag v0.1
updating csi-operator version in go.mod and csi-operator.yaml
to use latest release v0.1. And also fixing one small bug
where csi-driver log level was set in csi-operator log level.

Signed-off-by: subhamkrai <srai@redhat.com>
2024-08-20 11:23:07 +05:30
ShravaniVangur 9656d1963a csi: storageclass update to gp2-csi
Updating storageClassName for cluster-on-pvc.yaml file from gp2 to gp2-csi.

Signed-off-by: ShravaniVangur <shravanivangur@gmail.com>
2024-08-20 00:08:50 +05:30
Blaine Gardner 679ccc762d Merge pull request #14576 from travisn/version-detect-annotation
core: Add annotations and labels to detect version jobs
2024-08-16 10:03:41 -06:00
Madhu Rajanna 7c7e8a2b32 csi: update cephcsi to 3.12.0
updating cephcsi image to 3.12.0
release.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2024-08-16 10:47:44 +02:00
Madhu Rajanna 123025f22c csi: update csi-addons to v0.9.0
As we have new csi-addons v0.9.0
updating the same here as well.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2024-08-16 07:57:16 +02:00
Travis Nielsen 5014d5bcf2 core: add annotations and labels to detect version jobs
The jobs to detect the ceph and csi versions now can have
custom annotationso and labels added to them. They are
very short-lived jobs, but they may need custom annotations
in some environments to run.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2024-08-15 16:48:28 -06:00
Blaine Gardner 5f98d2ea3e Merge pull request #13807 from jklippel/feature/swift-and-keystone
rgw: implement support for authentication using keystone for s3 and swift
2024-08-08 09:55:34 -06:00
ee8bcad49d rgw: add support for keystone auth + swift/s3
For the specification see:
<https://github.com/rook/rook/blob/master/design/ceph/object/swift-and-keystone-integration.md>

* extend the API object specs for swift and keystone integration

* adapt rgw to the new go-ceph version

  - The parameter lists of the API call have changes, as parameters
    ignored by the RGW Admin Ops API are no longer serialized, therefore
    the mock has to be adapted.

  - There is now validation for the user keys that are passed to the
    User get API, therefore things failed when we had empty keys in our
    User proxy object.

* expand the reconcile loop for the swift and keystone integration

* fix minor mistakes in design document

* add env var to pass extra args to minikube

  Minikube decides CPU cores and memory automatically based on the
  available resources on the machine which may be insufficient to
  run rook. This commit adds an environment variable to add arbitrary
  arguments to the minikube command, so both can be specified if
  desired.

* integration tests for swift and keystone

  The new integration of swift or s3 and keystone support by rook
  does not have any integration tests yet.

  This commit introduces integration tests for swift and keystone. The
  tests are done against a minimal keystone setup (keystone container
  image from Yaook-project (https://yaook.cloud), sqlite as database
  backend, cert-manager and trust-manager for test certificate setup).

  To prevent hardcoded credentials, passwords are generated
  by the tests. The integration tests use the openstack client
  (keystone- and swift-functionality) (https://docs.openstack.org/
  python-openstackclient/ latest/). This was a concious design decision
  to use client tooling as close as possible to the end user instead of
  using other go-libraries (such as gophercloud).

* add documentation on swift and keystone

  Currently there is no documentation on the use of Swift to access
  an object store as well as the use of OpenStack keystone for
  authentication.

  This commit adds documentation on the use of Swift and OpenStack
  keystone, as well as CRD-related documentation and an example setup.

* add integration tests for S3 via keystone

  This commit introduces integration tests for s3 and keystone. The
  tests are run against the same minimal keystone setup that the tests
  for swift and keystone use.

  The integration tests use the aws s3 client to use client tooling as
  close as possible to the end user instead of using other go-libraries.

Co-authored-by: Jan Klippel <jan.klippel@uhurutec.com>
Co-authored-by: Silvio Ankermann <silvio.ankermann@cloudandheat.com>
Signed-off-by: Sebastian Riese <sebastian.riese@cloudandheat.com>
Signed-off-by: Jan Klippel <jan.klippel@uhurutec.com>
Signed-off-by: Silvio Ankermann <silvio.ankermann@cloudandheat.com>
2024-08-08 14:26:21 +02:00
subhamkrai c30b8a527b csi: add csi-operator rbac, crds files
adding the CSI-operator manifest files
inside rook repo naming deploy/examples/csi-operator-manifests.yaml.

Also, let's skip running any lint check on file `deploy/examples/csi-operator.yaml` as this is owned by CSI-operator.

Signed-off-by: subhamkrai <srai@redhat.com>
2024-08-08 15:43:12 +05:30
subhamkrai 1ad20d07e7 csi: add csi-operator operator config cr
Signed-off-by: subhamkrai <srai@redhat.com>
2024-08-08 11:21:49 +05:30
subhamkrai 667e044013 csi: add new CSI-operator config CR
adding changes to create CSI-operator config CR based on
every radosnamesapce and subvolumegroup.

Signed-off-by: subhamkrai <srai@redhat.com>
2024-08-08 11:21:49 +05:30
subhamkrai 4b0b3a55d9 csi: add code for new CSI operator CR cephcluster
adding code changes,rbac changes required for create the new
Ceph-CSI operator CR named cephCluster in api group 'csi.ceph.io'.

Signed-off-by: subhamkrai <srai@redhat.com>
2024-08-08 11:21:45 +05:30
Rakshith R 53e2f8c67f csi: add pvc & pod yamls for block volume mode
This commit adds example yamls for block
volume mode.

Signed-off-by: Rakshith R <rar@redhat.com>
2024-08-07 12:50:50 +05:30
Blaine Gardner b76631ace9 Merge pull request #14467 from BlaineEXE/object-advertise-endpoint
object: add hosting.advertiseEndpoint config
2024-07-31 16:17:24 -06:00
Travis Nielsen d91b8073c5 Merge pull request #14488 from sp98/set-min-compat-client-to-reef
core: set min-compat-client to reef for upmap-read
2024-07-29 11:28:29 -06:00
sp98 ee5e710912 core: set min-compat-client to reef for upmap-read
If upmap-read balancer mode is required, then set
min-compat-client to reef

Signed-off-by: sp98 <sapillai@redhat.com>
2024-07-29 22:03:37 +05:30