Commit Graph
441 Commits
Author SHA1 Message Date
Travis Nielsen 77d398cb3e Merge pull request #12752 from rook/mergify/bp/release-1.12/pr-12507
Replace OSD to use new backend store (backport #12507)
2023-08-21 14:46:28 -06:00
travisn a7225a9a57 build: update crds gen for new descriptions
The CRDs were not generated for the latest since #12384
was merged without rebasing, and other updates with a newer
dependency required the newer descriptions.

Signed-off-by: travisn <tnielsen@redhat.com>
(cherry picked from commit 438b61721f)
2023-08-17 18:45:52 +00:00
sp98 84b7b68582 osd: replace osd to use new backend store
If osd store is updated in the ceph cluster, then
delete OSDs one by one, cleanup disks and provision a new OSD on
the same disk

Signed-off-by: sp98 <sapillai@redhat.com>
(cherry picked from commit 886bb357ef)
2023-08-17 18:42:52 +00:00
Deepika Upadhyay 0e63059eb7 mon: fix some of the zonal storageclass support failures
Signed-off-by: Deepika Upadhyay <deepika@koor.tech>
(cherry picked from commit 0d86588620)
2023-08-17 17:53:34 +00:00
Deepika Upadhyay 385855e17d docs: update crds for mon zonal support
Signed-off-by: Deepika Upadhyay <deepika@koor.tech>
(cherry picked from commit fa7162504e)
2023-08-17 17:53:33 +00:00
subhamkrai 00b941be28 build: update vault and other indirect imports
update vault and other indirect imports. Also,
updating k8s package to `v0.28.0-rc.0` since with
v0.27.4 it was through build error.

Signed-off-by: subhamkrai <srai@redhat.com>
(cherry picked from commit ab3763767f)
2023-08-16 17:12:01 +00:00
travisn e81bc1b5b6 build: update patch version to v1.12.2
For the patch release the examples and the docs are updated
to v1.12.2.

Signed-off-by: travisn <tnielsen@redhat.com>
2023-08-15 13:18:48 -06:00
Nikhil-Ladha afff610a06 multus: add sample job manifest for multus config validation
added a sample job manifest named `multus-validation` that
validates the multus configuration in the cluster.

Signed-off-by: Nikhil-Ladha <nikhilladha1999@gmail.com>
(cherry picked from commit 9fea9cd865)
2023-08-11 19:29:11 +00:00
karthik-us cc819f00df csi: add maxUnavailable for cephfs csi daemonset
Adding maxUnavailable parameter to the cephfs csi daemonset. The
default value of maxUnavailable = 1 can make the upgrade process
slower in environments with large number of nodes.

Fixes: #12636
Signed-off-by: karthik-us <ksubrahm@redhat.com>
(cherry picked from commit 2675c976d5)
2023-08-08 17:12:41 +00:00
parth-gr 0f1d90b0b6 object: fix s5cmd for s3 endpoint verification
add a new toolbox yaml manifest which will use the
rook image instead of ceph image
for running s5 cmd container needs to run with rook image

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

Signed-off-by: parth-gr <paarora@redhat.com>
(cherry picked from commit 8a3f058329)
2023-08-04 14:20:13 +00:00
travisn dd0401e711 build: update release version to v1.12.1
For the patch release update the examples and docs

Signed-off-by: travisn <tnielsen@redhat.com>
2023-08-01 14:33:24 -06:00
Nikhil-Ladha e2c92d16ce external: added an optional flag for enabling v2 mon port
Added a new flag `--v2-port-enable` to enable the v2 mon port.

Signed-off-by: Nikhil-Ladha <nikhilladha1999@gmail.com>
(cherry picked from commit 5daddbe379)
2023-07-31 19:20:56 +00:00
Travis Nielsen fe35e61aed Merge pull request #12554 from rook/mergify/bp/release-1.12/pr-12508
external: create ceph cluster namespace (backport #12508)
2023-07-27 12:47:29 -06:00
Travis Nielsen b3c3cfe389 Merge pull request #12587 from rook/mergify/bp/release-1.12/pr-12562
object: update ceph cosi driver image to v0.1.1 (backport #12562)
2023-07-27 12:46:48 -06:00
sp98 5d51214ad5 osd: configure backend store
Configure osd backend store from the cephCluster spec

Signed-off-by: sp98 <sapillai@redhat.com>
(cherry picked from commit c13d34f8d3)
2023-07-25 21:21:20 +00:00
Jiffin Tony Thottan 049f03e684 object: update ceph cosi driver image to v0.1.1
Update the ceph cosi driver image to v0.1.1, so that it can
work on both amd and arm platforms.

Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
(cherry picked from commit 1bf33f125e)
2023-07-25 20:55:39 +00:00
parth-gr c50dfb1053 external: create ceph cluster namespace
We need to create the namespace with the import script,
As per the documentation

The import script creates the secrets and
cm which is later used by the operator for cluster creation.

Signed-off-by: parth-gr <paarora@redhat.com>
(cherry picked from commit f9f880e528)
2023-07-18 22:46:10 +00:00
travisn e511e7ce83 build: update the release version to v1.12.0
For the minor release update the docs and example manifests
to v1.12.0.

Signed-off-by: travisn <tnielsen@redhat.com>
2023-07-18 15:35:55 -06:00
Travis Nielsen d5b6405bdb Merge pull request #12546 from rook/mergify/bp/release-1.12/pr-12544
cosi: Correct capitalization for auto policy (backport #12544)
2023-07-18 14:40:05 -06:00
travisn 5dc023b512 cosi: correct capitalization for auto policy
The CephCOSIDriver deploymentStrategy requires Auto, Never,
or Always. Change the example to Auto.

Signed-off-by: travisn <tnielsen@redhat.com>
(cherry picked from commit 182211d26c)
2023-07-18 20:06:11 +00:00
Peter Goron 21007c1cbe object: align spelling of user admin capabilities with ceph
users & buckets admin capabilities aren't spelled the same
way between rook crd (singular) and ceph (plural). It's a bit
misleading when comparing ceph admin cap and rook users.

Signed-off-by: Peter Goron <peter.goron@gmail.com>
(cherry picked from commit 40eed236cf)
2023-07-18 19:23:56 +00:00
Travis Nielsen 1d5a3a27d9 Merge pull request #12539 from rook/mergify/bp/release-1.12/pr-12502
external: support custom ceph keyring file (backport #12502)
2023-07-18 13:21:02 -06:00
Jiffin Tony Thottan ce716d538c object: intial cosi driver controller design
Adding CephCOSIDriver CRD and controller. The controller will bring up
the ceph cosi driver when first object store is created in the rook
operator namespace. Then admin can defined COSI CRDs like BucketClass
and BucketAccessClass for different object stores deployed via Rook.
Using the BucketClass and BucketAccessClass, user can define
BucketAccess for backend bucket in the RGW. The CephCOSIDriver CRD
defines configuration options for ceph cosi driver. In the first version
its usability is minimal. Even if it is not defined Rook will bring up
the ceph cosi driver with default values.

Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
(cherry picked from commit b48dc8a335)
2023-07-18 18:12:53 +00:00
Angelos Kolaitis 5d76723686 external: support custom ceph keyring file
When the ceph.conf is not in a well-known location, it is typical
for a custom ceph.keyring to be required as well. Currently, the
create-external-cluster-resources.py only tries to load the keyring
from well-known paths, and fails.

This commit adds a new optional argument `--keyring` to help in this
situation. When specified, create-external-cluster-resources.py will
attempt to use this as the keyring to authenticate with Ceph.

Signed-off-by: Angelos Kolaitis <neoaggelos@gmail.com>
(cherry picked from commit c021256e96)
2023-07-18 17:20:12 +00:00
Lucas Henry 332bac5ca2 rgw: add option to disable synchronization traffic
Some users want to deploy two CephObjectStores for a single Zone. The first
configures RGWs to process the synchronization of the data, while the second
CephObjectStore configures the client RGWs.

Currently, this can be implemented by setting the RGW option
'rgw_run_sync_thread' in the 'rook-config-override' ConfigMap, though it is not
really user friendly.

Ref: https://docs.ceph.com/en/latest/radosgw/config-ref/#confval-rgw_run_sync_thread

This commit adds a new option in the CephObjectStore CRD as defined in issue
https://github.com/rook/rook/issues/12272. The new option
'disableMultisiteSyncTraffic' determine whether the operator should disable the
multisite sync threads for the RGWs.

If the option is set to 'false', or if the option is not specified, the operator
does nothing. This ensures that the multisite sync threads will not be enabled
for users that disabled explicitely the multisite sync threads either manually
or with the 'rook-config-override' ConfigMap.

This commit also recommends to use two objectstore when scaling Ceph Objectstore
Multisite replication, with one objectstore configured with disabled replication
traffic.

Signed-off-by: Lucas Henry <polyedre@disroot.org>
(cherry picked from commit 393d09347e)
2023-07-17 17:30:14 +00:00
Travis Nielsen cc754e83b7 Merge pull request #12498 from rook/mergify/bp/release-1.12/pr-12423
test: add support Ceph Reef v18 with updated integration tests (backport #12423)
2023-07-17 07:34:12 -06:00
parth-gr c8b4a26d0d external: pin the default csi subvolume
set the csi subvolume to pin type distributed and pin setting 1
So to statically balance the PVs across all MDS ranks

Signed-off-by: parth-gr <paarora@redhat.com>
(cherry picked from commit 53413e5a24)
2023-07-13 15:40:36 +00:00
Javier af7a063bf7 test: support Ceph Reef v18 with updated integration tests
update test files to support the next version of ceph, ceph reef v18

Signed-off-by: Javier <sjavierlopez@gmail.com>
(cherry picked from commit 46cb9435a6)
2023-07-11 00:05:43 +00:00
travisn 0b7949805f build: set the release version for the v1.12 beta
For the new 1.12 branch set the beta release version
to v1.12.0-beta.0.

Signed-off-by: travisn <tnielsen@redhat.com>
2023-07-07 12:16:20 -06:00
Travis Nielsen 65f413ce1f Merge pull request #12286 from subhamkrai/fix-node-loss-rbd
core: faster recovery from rbd rwo node loss
2023-07-07 10:35:59 -06:00
subhamkrai 39b5c057ce core: faster recovery from rbd rwo node loss
in the existing node watcher, we'll check for node update
event and see if there are `out-of-service` taints are applied
and `ROOK_WATCH_FOR_NODE_FAILURE` is enabled in rook-ceph-operator-configmap,
if then we'll create the networkFence cr and delete the cr if nodes come back.
And, added the unit test too.

Signed-off-by: subhamkrai <srai@redhat.com>
2023-07-07 21:16:25 +05:30
Travis Nielsen 18e2502a69 Merge pull request #12295 from subhamkrai/remve-default-scc
security: remove default scc privileges
2023-07-07 08:24:37 -06:00
subhamkrai 48f84b37e8 security: drop all capabilities to the container
adding drop `ALL` capabilities in rook operator container
as this is not required and will remove warning in ocp cluster.

Signed-off-by: subhamkrai <srai@redhat.com>
2023-07-07 17:06:48 +05:30
Travis Nielsen 854bc7d980 Merge pull request #12143 from parth-gr/IPV6-external
external: add support for IPV6 ceph daemons
2023-07-06 15:39:05 -06:00
Rakshith R aa0aa34c23 csi: update csi sidecars' image version
Signed-off-by: Rakshith R <rar@redhat.com>
2023-07-06 16:18:35 +05:30
parth-gr de61187eb4 external: add support for IPV6 ceph daemons
updated some function which were strictly used for IPV4

Signed-off-by: parth-gr <paarora@redhat.com>
2023-07-05 17:13:06 +05:30
mysiki b5d0d80444 external: fix import-external-cluster.sh and documentation
fix import-external-cluster.sh in order to work with set -e bash directive, see issue https://github.com/rook/rook/issues/12412
fix documentation mispell in namespace word

Closes: https://github.com/rook/rook/issues/12412

Signed-off-by: mysiki <hoaxboy@wanadoo.fr>
2023-07-05 13:01:44 +02:00
Blaine Gardner d6475408d9 Merge pull request #12437 from sudharsanomprakash/patch-1
Multus Validation : Added verbs "deletecollection"
2023-06-29 09:46:27 -06:00
Travis Nielsen 58994fe922 Merge pull request #12418 from Jeansen/update_docu
Remove deprecated annotation
2023-06-29 08:38:25 -06:00
Sud 2547372527 multus: add deletecollection capability for validation tool
Without deletecollection capability the image pullers won't be deleted, causing multus validation to fail.
    Added deletecollection verbs to the daemonsets resource in role rook-ceph-system
    This is fix for Issue: https://github.com/rook/rook/issues/12435

    Signed-off-by: Sudharsan Omprakash <sudharsan.omprakash@yahoo.com>
2023-06-28 17:45:18 -04:00
Travis Nielsen c2517f47d0 Merge pull request #12417 from parth-gr/idempotent-external
external: make import script idempotent
2023-06-28 14:31:11 -06:00
Rakshith R fa1be14bca csi: update csiaddons k8s-sidecar to v0.7.0
This commit updates k8s-sidecar to v0.7.0
and all links now point to v0.7.0 tag.

Signed-off-by: Rakshith R <rar@redhat.com>
2023-06-28 20:38:29 +05:30
Rakshith R 1af70aca60 csi: update cephcsi to v3.9.0
This commit updates cephcsi image to
v3.9.0 release and also removes support
for v3.7.x.

refer:
https://github.com/ceph/ceph-csi/releases/tag/v3.8.0

Signed-off-by: Rakshith R <rar@redhat.com>
2023-06-28 20:38:29 +05:30
parth-gr 483c432b26 external: make import script idempotent
import script may be need a re-run if other
resources need to be configured
for ex: if rbd is configured and later on point
someone want to also configure rgw, it will have
a choice

Closes: https://github.com/rook/rook/issues/12412

Signed-off-by: parth-gr <paarora@redhat.com>
2023-06-28 19:09:42 +05:30
subhamkrai a2e3d30526 security: remove default scc privileges
with `requiredDropCapabilities: ["All"]` we can
drop all the default privileges and we can add the
privileges required `allowedCapabilities:` here.

Signed-off-by: subhamkrai <srai@redhat.com>
2023-06-28 15:14:41 +05:30
Marcel Lautenbach 9d335ad814 docs: replace deprecated ingress.class annotation
Documentation and examples used a deprecated annotation to set the Ingress class name. This commit replaces it with the correct version using spec.ingressClassName .

Signed-off-by: Marcel Lautenbach <mlautenb@gmail.com>
2023-06-23 19:31:54 +02:00
travisn 557a3e06cc core: api updates for controller runtime v0.15
For the controller runtime v0.15 there are some breaking
changes to the api that need to be updated.

Signed-off-by: travisn <tnielsen@redhat.com>
2023-06-22 10:33:28 -06:00
travisn 11d83bfbec pool: add .mgr pool to the stretch cluster examples
The stretch clusters must create pools with a pool spec
that is valid for the stretch scenario, with 4 replicas
and failure domain and sub failure domain as needed
to match the topology. Otherwise, ceph will create a
default .mgr pool which will have replica 3 which is
invalid for the stretch scenario.

Signed-off-by: travisn <tnielsen@redhat.com>
2023-06-12 12:28:10 -06:00
Sachin Prabhu 8705f2b37e nfs: set correct kerberos domain in /etc/idmapd.conf
We add a new field domainName to the Kerberos section. The field is used
to setup /etc/idmapd.conf with the domain name. This allows idmapper to
map to kerberos credential to the correct uid/gid.

We add Spec.Security.Kerberos.DomainName to the CRD

Signed-off-by: Sachin Prabhu <sprabhu@redhat.com>
2023-06-09 18:06:45 +01:00
Redouane Kachach 08754f6197 mgr: removing unnecessary rook-ceph-mgr rbac entries
These rbac changes were introduced as part of #11845 PR to enable
sidecar accessing mgr pods but in fact they are not necessary
as rook-ceph-mgr role had already the ability to update pods

Closes: https://github.com/rook/rook/issues/12336

Signed-off-by: Redouane Kachach <rkachach@redhat.com>
2023-06-06 22:12:23 +02:00