Commit Graph
13292 Commits
Author SHA1 Message Date
Blaine Gardner 1cf207947c Merge pull request #12611 from BlaineEXE/multus-revise-client-loading
multus: revise kube config/client loading
2023-07-28 11:25:19 -06:00
Blaine Gardner cc9514ad6c multus: revise kube config/client loading
The previous client loader routine assumed KUBECONFIG would be set in
CLI environments. Instead, now take this approach:

1. If KUBECONFIG is set, that is the de-facto override that informs the
   tool it is being run in a CLI environment.
2. Otherwise, try creating a client from the default kube config file.
3. If that fails, assume the tool is running in a Kubernetes Pod.

This will continue supporting dev/test environments so that building the
rook container is not necessary for development. It also allows support
for highly opinionated environments (like deployed by OpenShift CSVs)
where it's not possible to install the Rook operator without also
deploying a CephCluster.

Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
2023-07-28 09:50:00 -06:00
Travis Nielsen aac58f2b31 Merge pull request #12617 from spuiuk/sssdkrb5_unit_test_fail
nfs: fix null pointer deref in generateSssdSidecarResources()
2023-07-28 07:57:00 -06:00
Sachin Prabhu 6cf4627ccd nfs: fix null pointer deref in generateSssdSidecarResources()
0a151e913 results in a bug which causes null pointer dereference when
Kerberos is not setup. This causes a failure in Unit test
TestReconcileCephNFS_addSecurityConfigsToPod

Signed-off-by: Sachin Prabhu <sprabhu@redhat.com>
2023-07-28 11:53:10 +01:00
Blaine Gardner a2658b13fd Merge pull request #12517 from spuiuk/sssd_kerberos
nfs: mount krb5.conf and krb5.keytab in the sssd container
2023-07-26 16:52:30 -06:00
Blaine Gardner 45a1a6ca45 Merge pull request #12563 from subhamkrai/fix-panic-nodeLoss
rbd: node fencing, skip pv when pv is not backed by csi
2023-07-26 10:44:20 -06:00
Blaine Gardner c86f22e4f7 Merge pull request #12578 from subhamkrai/fix-upgrade-suite
test: fix upgrade suite for 1.27.x version
2023-07-26 09:47:43 -06:00
Blaine Gardner 93d3c8c186 Merge pull request #12564 from subhamkrai/fix-smoke-suite
test: collect kube-system logs for debugging
2023-07-26 09:01:50 -06:00
Nikhil-Ladha 5daddbe379 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>
2023-07-26 18:16:06 +05:30
Patrick Donnelly d09a90f69f docs: correct some libcephsqlite statements
Signed-off-by: Patrick Donnelly <batrick@batbytes.com>
2023-07-26 08:22:08 -04:00
Alexander Trost 47e7642eb4 Merge pull request #12592 from subhamkrai/update-owned-crd 2023-07-26 13:01:28 +02:00
subhamkrai 884a5c1c18 build: cosi driver is missing from olm list
adding cosi driver list in olm list as it is
being missed in csv crd list generated by
other project.

Signed-off-by: subhamkrai <srai@redhat.com>
2023-07-26 15:11:45 +05:30
subhamkrai 72386eb1d0 core: node fencing, skip pv when pv is not backed by csi
when node fencing is triggered and a negative case where
one deployment pod consuming pv not provisioned by csi
and another deployment pod with rbd rwo are on the same
node and node fencing is triggered.

In this case rook operator panics since it is trigger to get
field `pv.Spec.CSI.Driver` which will be nil.

Also, skip static pv as there is no `imageName` in the spec
rbd status command will fail.

Signed-off-by: subhamkrai <srai@redhat.com>
2023-07-26 14:35:41 +05:30
subhamkrai 0ed91458dc test: collect kube-system logs for debugging
added kube-system namespace also to collect
logs from to debug the smoke suite issue

Signed-off-by: subhamkrai <srai@redhat.com>
2023-07-26 14:09:15 +05:30
subhamkrai e8e8a4673a test: fix upgrade suite for 1.27.x version
the upgrade suite for version 1.27.x is failing
due
```
debug 2023-07-24T19:11:20.264+0000 7f3395a82c80 -1 error: monitor data filesystem reached concerning levels of available storage space (available: 5% 4.4 GiB)
you may adjust 'mon data avail crit' to a lower value to make this go away (default: 5%)
```
so adding mon setting to start on `compact` also adding
other setting present in cluster-test.yaml.

Signed-off-by: subhamkrai <srai@redhat.com>
2023-07-26 12:14:34 +05:30
Blaine Gardner 5979b38162 Merge pull request #12560 from polyedre/do-not-add-objectstore-endpoint-to-zone-when-sync-is-disabled
object: do not add objectstore endpoint to zone when sync is disabled
2023-07-25 15:31:42 -06:00
Blaine Gardner 6e12df32ad Merge pull request #12466 from sp98/osd-store
osd: configure backend store
2023-07-25 15:20:13 -06:00
Blaine Gardner 75e31a126c Merge pull request #12575 from sp98/delete-exportor-pod
core: force delete rook-ceph-exporter pod
2023-07-25 15:17:42 -06:00
Blaine Gardner c064f65e29 Merge pull request #12562 from thotz/update-cosi-0.1.1
object: update ceph cosi driver image to v0.1.1
2023-07-25 14:54:49 -06:00
Blaine Gardner 51b9ab780b Merge pull request #12572 from rook/dependabot/github_actions/wagoid/commitlint-github-action-5.4.3
build(deps): bump wagoid/commitlint-github-action from 5.4.1 to 5.4.3
2023-07-25 14:51:03 -06:00
Blaine Gardner f2bf76893e Merge pull request #12579 from subhamkrai/update-tmate
ci: add detached mode in tmate
2023-07-25 14:46:47 -06:00
Alexander Trost 882c07faf6 Merge pull request #12574 from parth-gr/doc-external-update-format
doc: update the external doc format
2023-07-25 18:18:03 +02:00
parth-gr 8a445ef0cb docs: update the external doc format
Cephobjectstore is not formated correctly
https://rook.io/docs/rook/v1.12/CRDs/Cluster/external-cluster/#connect-to-an-external-object-store

Signed-off-by: parth-gr <paarora@redhat.com>
2023-07-25 21:33:16 +05:30
subhamkrai f171e1c037 ci: add detached mode in tmate
with detached mode, we don't need to wait for the
tests to complete. Now, we can get inside tmate before
the tests start and we can monitor the tests.

By default, this mode will wait at the end of the job for
a user to connect and then to terminate the tmate session.
If no user has connected within 10 minutes after the post-job step started,
it will terminate the tmate session and quit gracefully.

Signed-off-by: subhamkrai <srai@redhat.com>
2023-07-25 16:54:14 +05:30
sp98 dd90ef5db2 core: force delete rook-ceph-exporter pod
Force delete rook-ceph-exporter pod that is stuck in terminating
state due to unavailability of node.

Signed-off-by: sp98 <sapillai@redhat.com>
2023-07-24 20:50:26 +05:30
dependabot[bot] d5f5f0b64e build(deps): bump wagoid/commitlint-github-action from 5.4.1 to 5.4.3
Bumps [wagoid/commitlint-github-action](https://github.com/wagoid/commitlint-github-action) from 5.4.1 to 5.4.3.
- [Changelog](https://github.com/wagoid/commitlint-github-action/blob/master/CHANGELOG.md)
- [Commits](https://github.com/wagoid/commitlint-github-action/compare/v5.4.1...v5.4.3)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-24 12:27:23 +00:00
sp98 c13d34f8d3 osd: configure backend store
Configure osd backend store from the cephCluster spec

Signed-off-by: sp98 <sapillai@redhat.com>
2023-07-24 09:16:30 +05:30
Jiffin Tony Thottan 1bf33f125e 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>
2023-07-20 14:19:15 +05:30
Lucas Henry 564afef4c7 object: do not add objectstore endpoint to zone when sync is disabled
Gateways that do not run the sync threads should not be accessible from one of
the Zone endpoint. If this is the case, the synchronization might stop working.

When the CephObjectStore has the option
`spec.gateway.disableMultisiteSyncTraffic` set to `true`, we must ensure that
the objectstore endpoint is not present in the Zone endpoint.

Signed-off-by: Lucas Henry <polyedre@disroot.org>
2023-07-20 08:34:41 +02:00
Travis Nielsen cb44c7b88f Merge pull request #12508 from parth-gr/external0cluster-namesapce
external: create ceph cluster namespace
2023-07-18 16:45:30 -06:00
Travis Nielsen 08bc0ca52b Merge pull request #12548 from travisn/cosi-disable-default
cosi: The COSI driver should be disabled by default
2023-07-18 15:30:38 -06:00
travisn 4c98669148 cosi: handle deletion of the cosi driver
The controller was attempting to delete the cosi driver
again and again, always failing the reconcile when the
driver did not exist. Since the desired state is for the
driver not to exist when disabled, return a successful
reconcile.

Signed-off-by: travisn <tnielsen@redhat.com>
2023-07-18 14:53:22 -06:00
travisn 4145ecec37 cosi: document enabling the cosi driver
Add steps for enabling the cosi driver that is disabled
by default. Also add an introduction to the COSI driver
and a section for prerequisites.

Signed-off-by: travisn <tnielsen@redhat.com>
2023-07-18 14:35:54 -06:00
travisn 990cb40043 cosi: change the default deployment strategy to never
While experimental, the cosi driver should not be enabled by
default.

Signed-off-by: travisn <tnielsen@redhat.com>
2023-07-18 14:35:54 -06:00
Travis Nielsen b6be93d137 Merge pull request #12544 from travisn/cosi-driver-auto
cosi: Correct capitalization for auto policy
2023-07-18 14:05:29 -06:00
travisn 182211d26c 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>
2023-07-18 13:55:48 -06:00
Travis Nielsen 2e7f9045ab Merge pull request #12460 from pgoron/admin-caps-spelling
object: align spelling of user admin capabilities with ceph
2023-07-18 13:23:15 -06:00
parth-gr f9f880e528 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>
2023-07-19 00:37:42 +05:30
Travis Nielsen 91fea5395e Merge pull request #12415 from thotz/ceph-cosi-driver
object: adding ceph cosi driver
2023-07-18 12:12:12 -06:00
Jiffin Tony Thottan b48dc8a335 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>
2023-07-18 22:49:41 +05:30
Travis Nielsen 0253353add Merge pull request #12502 from neoaggelos/feat/external-keyring
external: support custom ceph keyring file
2023-07-18 11:19:25 -06:00
Travis Nielsen a88740413e Merge pull request #12524 from subhamkrai/fix-dependabot
ci: update the update_dependabot_bundler action
2023-07-18 08:51:44 -06:00
subhamkrai 9f3e4f7e77 ci: update the update_dependabot_bundler action
the runner update_dependatbot_bundler was never running
successfully
https://github.com/rook/rook/actions/workflows/update_dependabot_bundler_pr.yml
we need small change to add the breaking change from action provider

Signed-off-by: subhamkrai <srai@redhat.com>
2023-07-18 10:42:43 +05:30
Travis Nielsen dc48ae0bf1 Merge pull request #12530 from Javlopez/feature/set-reef-as-default
test: update reef as default version
2023-07-17 15:15:05 -06:00
Javier d17109a5f5 test: update reef as default version
update ceph to reef as default version

Signed-off-by: Javier <sjavierlopez@gmail.com>
2023-07-17 12:45:28 -06:00
Angelos Kolaitis c021256e96 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>
2023-07-17 20:34:29 +03:00
Blaine Gardner d5fa754179 Merge pull request #12327 from polyedre/disableMultisiteSyncTraffic
Add option to disable synchronization traffic for RGWs
2023-07-17 11:29:33 -06:00
Travis Nielsen 6644a5dc3c Merge pull request #12515 from BlaineEXE/upgrade-doc-v1.12
Upgrade doc v1.12
2023-07-17 10:56:19 -06:00
Blaine Gardner 03d8fcf932 docs: use imperative language in health verifcation doc
Following with the latest efforts to improve Rook docs, convert the
health verification doc to use imperative language and avoid use of "you".

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2023-07-17 10:52:27 -06:00
Blaine Gardner 5a1f3f7b8c docs: use imperative language in rook/ceph upgrade docs
Following with the latest efforts to improve Rook docs, convert the Rook
and Ceph upgrade docs to use imperative language and avoid use of "you".

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2023-07-17 10:52:24 -06:00