Commit Graph
395 Commits
Author SHA1 Message Date
Madhu Rajanna d7dc12d834 csi: provide way to set cephfs kernel mount options
Exposing CSI configuration for the user to
set the cephfs kernel mount options.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2023-02-10 08:26:41 +01:00
Travis Nielsen ba6d75d867 Merge pull request #11505 from parth-gr/external-helm
helm: document installing different types of CephClusters
2023-02-03 07:35:46 -07:00
parth-gr 20d7c00f60 helm: document installing different types of CephClusters
currently helm has only the config of cephclusterSpec
for a converged cluster, document installing pvc based,
strech based , external based cluster

Closes: https://github.com/rook/rook/issues/11480
Signed-off-by: parth-gr <paarora@redhat.com>
2023-02-03 18:34:04 +05:30
parth-gr def9fd9056 external: dont do rgw validation if python version < 3
Signed-off-by: parth-gr <paarora@redhat.com>
2023-01-23 20:38:49 +05:30
Travis Nielsen cd2841c341 Merge pull request #11538 from opencmit/fix-11537
mgr: role rook-ceph-mgr is lack of patch verb to compete ceph request(fix 11537)
2023-01-18 12:44:07 -07:00
Ben Gao 84296a997a mgr: role rook-ceph-mgr is lack of patch verb to compete ceph request
ceph orch command uses patch method to update cephcluster. Adding patch to verbs list of rook-ceph-mgr(Role) to make it work. It was allright with deploy/charts/rook-ceph-cluster/charts/library/templates/_cluster-role.tpl to justify the changes quite a bit.

Signed-off-by: Ben Gao <bengao168@msn.com>
2023-01-18 16:39:54 +08:00
Jiffin Tony Thottan 8f8de7f335 docs: remove health checker related option in object-external.yaml
The health checker options are no longer applicable to external rgw
servers, so remove those info.

Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
2023-01-16 19:33:24 +05:30
subhamkrai e9e2313126 webhook: disable webhook by default
sadly, we need to disable webhook by default until
we find solution to https://github.com/rook/rook/issues/10719

Signed-off-by: subhamkrai <srai@redhat.com>
2023-01-12 22:08:56 +05:30
Cyril Jouve 668bd172e3 helm: storageclass parameters secrets namespace
make the parameters secrets namespace the same as the chart release namespace

Closes: https://github.com/rook/rook/issues/11516
Signed-off-by: Cyril Jouve <jv.cyril@gmail.com>
2023-01-08 23:24:17 +01:00
Travis Nielsen 4d88d4f993 Merge pull request #11510 from Madhu-1/fix-11507
csi: update sidecars to latest release
2023-01-06 07:56:54 -07:00
Madhu Rajanna f11e65f40c csi: update sidecars to latest release
update all the kubernetes sidecars to the latest
release.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2023-01-06 09:42:36 +01:00
Anthony D'Atri a84aeebb4d docs: add limitRange comment to deploy/charts/rook-ceph-cluster/values.yaml
Signed-off-by: Anthony D'Atri <anthony.datri@gmail.com>
2023-01-05 15:28:05 -05:00
Loïc Antoine-GombeaudandTravis Nielsen 59f6cd00ff helm: fix toolbox command, default to cluster image
Signed-off-by: Loïc Antoine-Gombeaud <lantoinegombeaud@gestform.com>
Co-authored-by: Travis Nielsen <tnielsen@redhat.com>
2023-01-04 14:23:37 -07:00
Travis Nielsen e1c6b18769 Merge pull request #11332 from khrisrichardson/found-unexpected-end-of-stream
manifest: revert fix unexpected end of stream
2022-12-21 09:19:33 -07:00
Madhu Rajanna 61c533ba41 csi: add missing update rbac
when a PVC is cloned external-provisioner
still required update access or else a warning
will be logged in the pvc describe output

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2022-12-21 11:11:48 +01:00
Blaine Gardner 50c1eeaeb0 Merge pull request #11374 from BlaineEXE/rgw-probe-update
object: update startup, liveness, readiness probes
2022-12-20 16:15:53 -07:00
Blaine Gardner 17c5cf7384 object: update startup, liveness, readiness probes
Based on the latest info from the Ceph RGW team, update all probes. Get
rid of the liveness probe entirely. Update startup and readiness probes
to support return codes for misconfiguration (500) and for server-side
throttling (498 or 503).

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2022-12-20 15:23:22 -07:00
Travis Nielsen ec9f520860 Merge pull request #11377 from steache/new/allow-to-specify-allowed-topologies
helm: allow to specify allowed topologies for storage class
2022-12-19 11:36:55 -07:00
Tomáš Sýkora 57babee11f helm: allow to specify allowed topologies for storage class
Signed-off-by: Tomáš Sýkora <tomas@reservio.com>
2022-12-17 11:52:59 +01:00
Travis Nielsen 25ac236b5c core: remove support for machine disruption budgets
The machine disruption budgets for handling openshift
machines and machinesets are now removed since they
have been unused and unmaintained since implemented.
This feature is expected to be handled with the more
common Pod Disruption Budgets. A workaround is for the
cluster admin to set up their machine sets so they
match the zone topology. See the original design
doc from the feature here:
https://github.com/rook/rook/blob/master/design/ceph/ceph-openshift-fencing-mitigation.md

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2022-12-16 11:15:12 -07:00
Travis Nielsen 3a8c7d2422 Merge pull request #11434 from travisn/secret-as-file
core: Read mon secret from file instead of env var
2022-12-15 10:19:09 -07:00
subhamkrai 159fe3ae6f operator: disable webhook by default
disable webhook in downstream cluster.

Signed-off-by: subhamkrai <srai@redhat.com>
2022-12-15 21:08:42 +05:30
Travis Nielsen 4f77664862 manifest: toolbox and jobs mount secret volume
The toolbox, toolbox job, and osd prepare jobs need to mount the
ceph admin keyring as a file instead of using an env var.
The toolbox script will still allow setting of the env var
for backward compatibility, though all the examples are now
updated to use the keyring as a file.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2022-12-14 21:44:59 -07:00
Khris Richardson fca7d44c3f manifest: revert fix unexpected end of stream
Signed-off-by: Khris Richardson <khris.richardson@gmail.com>
2022-12-07 13:40:35 -08:00
Zuhair 792a261ca9 docs: auto generate helm chart docs using helm-docs
Signed-off-by: Zuhair AlSader <zuhair@koor.tech>
2022-12-02 17:08:50 -05:00
ac4b47d71a csi: add a parameter to modify the maxUnavailable value of rbd daemonset
The default value of maxUnavailable of daemonset is 1.
Sometimes the upgrade can be slow due to this setting.
So I add a parameter to change the value for rbd daemonset.

Signed-off-by: Shinya Hayashi <shinya-hayashi@cybozu.co.jp>
Co-authored-by: Toshikuni Fukaya <toshikuni-fukaya@cybozu.co.jp>
Co-authored-by: Yuji Ito <llamerada.jp@gmail.com>
2022-11-21 05:16:15 +00:00
Jens Erat 0f7e1d0343 helm: set DISCOVER_DAEMON_UDEV_BLACKLIST
While #4211 added support for the udev blacklist and also added it to
the values file, it omitted actually passing the value as environment
variable.

Signed-off-by: Jens Erat <email@jenserat.de>
2022-11-14 19:01:45 +01:00
Travis Nielsen 01d71c41ea Merge pull request #10652 from anthonyeleven/anthonyeleven/update-RBD-image-features
docs: add additional RBD image features to docs and YAML files
2022-11-10 11:09:21 -07:00
Travis Nielsen e0d1cabfda Merge pull request #11278 from parth-gr/resources-discovery
core: Add ability to add resources on discovery DaemonSet
2022-11-10 07:59:23 -07:00
parth-gr 9f432b4ecb core: add ability to add resources on discovery daemon set
Closes: https://github.com/rook/rook/issues/11265

Signed-off-by: parth-gr <paarora@redhat.com>
2022-11-10 17:50:06 +05:30
Travis Nielsen d587272d82 Merge pull request #11263 from zalsader/disable-psp
security: change `pspEnable` default value to `false` in Ceph Operator helm chart
2022-11-09 16:48:59 -07:00
Shinya Hayashi 05875a3f4f osd: support loop devices for test clusters
A new variable is added to rook-ceph-operator-config
ConfigMap to allow using loop devices for osd.

This feature is intended to be used for testing purposes only.

Signed-off-by: Shinya Hayashi <shinya-hayashi@cybozu.co.jp>
2022-11-09 06:45:41 +00:00
Blaine Gardner fc56108865 object: allow status endpoints to be null
For the upgrade case, Rook can fail to set status information
on CephObjectStores after CRDs are updated but before the operator is
updated. To fix this, merely allow the slices to be null in the
CephObjectStore's status.endpoints.

This PR seems to be aggravating the helm filesystem upgrade test. Allow
30 more seconds for CRDs to be done before bailing. In debugging, the
filesystem often needed only an extra 3 seconds to succeed.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2022-11-08 13:36:15 -07:00
Zuhair AlSader 1454d5a7a6 security: change pspEnable default value to false
Disable PodSecurityPolicy in Ceph Operator helm charts by default.

Signed-off-by: Zuhair AlSader <zalsader@hotmail.com>
2022-11-07 21:40:07 +00:00
Blaine Gardner c67c33f1d3 Merge pull request #11202 from BlaineEXE/object-external-enpoint-do-not-use-service
object: do not create service for external object stores
2022-11-07 10:51:33 -07:00
Blaine Gardner a777b1d7d1 object: do not create service for external object stores
External CephObjectStores already have endpoints defined by
spec.gateway.externalRgwEndpoints, and if the external store is
configured with TLS (HTTPS), the store's certificates will likely not
accept connections intended for the Service endpoint Rook creates. Some
users might not be able to easily add the service endpoint to their
certificates. Therefore, don't even bother creating a Service for
external clusters.

This does introduce a few issues. The Service seems to have been
initially created to allow multiple external RGW endpoints to be
addressable via a single address in Rook. For all connections to an
external CephObjectStore with multiple endpoints, simply choose an
endpoint at random. Random selection will prevent Rook from failing to
create buckets or users on an external store if one of the external
store's endpoints fails.

The latest OBC library (lib-bucket-provisioner) allows updating the
endpoints on ObjectBuckets after they are created. This allows Rook
users to change endpoints on external CephObjectStores without breaking
all existing OBCs. It requires implementation of the new GetUserID()
library call, requires updating Provision() and Grant() calls to be
idempotent, and it requires removing the Update() call.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2022-11-04 17:30:30 -06:00
Jairo Llopis e0ad2f9789 helm: bugs following docs for NixOS deployment
85b079105b introduced some bugs that here I'm fixing.

1. Docs missing `csi.` prefix.
2. Chart was using `cis.csiRBDPluginVolumes` instead of `csi.csiCephFSPluginVolume`.
3. Values had to be a scalar value, not a raw string. Otherwise, the operator can't parse it.
4. Link to `/run/booted-system` instead of `/run/current-system`. In the former, the kernel modules will always match the current kernel; in the latter, it could happen that after a new `nixos-rebuild switch`, plugin containers can't find the kernel modules for the booted kernel version.
5. Values included in the `values.yaml` template were plural. These are not supported, they must all be singular.

About that 3rd point, this was the error being logged:

```
2022-11-04 09:54:47.489851 I | op-k8sutil: CSI_RBD_PLUGIN_VOLUME="|\n - name: lib-modules\n hostPath:\n path: /run/current-system/kernel-modules/lib/modules/\n - name: host-nix\n hostPath:\n path: /nix" (configmap)
2022-11-04 09:54:47.489907 W | ceph-csi: failed to parse "|\n - name: lib-modules\n hostPath:\n path: /run/current-system/kernel-modules/lib/modules/\n - name: host-nix\n hostPath:\n path: /nix" for "CSI_RBD_PLUGIN_VOLUME". json: cannot unmarshal string into Go value of type []v1.Volume
2022-11-04 09:54:47.489916 I | op-k8sutil: CSI_RBD_PLUGIN_VOLUME_MOUNT="|\n - name: host-nix\n mountPath: /nix\n readOnly: true" (configmap)
2022-11-04 09:54:47.489937 W | ceph-csi: failed to parse "|\n - name: host-nix\n mountPath: /nix\n readOnly: true" for "CSI_RBD_PLUGIN_VOLUME_MOUNT". json: cannot unmarshal string into Go value of type []v1.VolumeMount
```

@moduon MT-1503

Signed-off-by: Jairo Llopis <yajo.sk8@gmail.com>
2022-11-04 13:24:31 +00:00
Anthony D'Atri 10b398cc02 docs: add additional RBD image features to docs and YAML files
Signed-off-by: Anthony D'Atri <anthonyeleven@users.noreply.github.com>
2022-10-27 10:57:50 -06:00
Travis Nielsen 0d3d12c0fd Merge pull request #11198 from subhamkrai/latest-ceph-version
core: upgrade ceph to latest release v17.2.5
2022-10-26 09:51:47 -06:00
subhamkrai 270b565f18 core: upgrade ceph to latest release v17.2.5
Signed-off-by: subhamkrai <srai@redhat.com>
2022-10-26 19:59:53 +05:30
Blaine Gardner 0937eaee38 Merge pull request #11124 from BlaineEXE/object-revise-health-check
object: remove health checker
2022-10-24 11:31:23 -06:00
gauravsitlani c5841c98fd docs: adding enableRBDStats example in helm chart deployment
Signed-off-by: gauravsitlani <gauravsitlani@riseup.net>
2022-10-21 17:57:43 +05:30
Travis Nielsen ba6adc60e1 build: update the go modules to the latest
The security scan is failing due to a go dependency
so we update the go modules and all dependencies to
the latest available.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2022-10-20 10:40:17 -06:00
Madhu Rajanna 729f2a8b32 csi: update csi to latest release
This updates the cephcsi to latest 3.7.2
release and also updates sidecar to the latest
release in some missing files.

Note:- sidecar images are upto date in most of
the places, in some places it was missing, This
PR updates it in missing place.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2022-10-20 09:16:05 +02:00
Travis Nielsen 67582fe0da operator: remove obsolete flex driver properties
The flex driver was deprecated and fully purged long ago,
and now finally we are purging the related properties
from the operator deployment that are no longer applied
anywhere.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2022-10-19 13:51:39 -06:00
Travis Nielsen d695a0f930 Merge pull request #11163 from gauravsitlani/gdb-coredump-tests
core: enabling logCollector by default for coredump collection
2022-10-19 12:34:54 -06:00
gauravsitlani cc02399c4c core: enabling logCollector by default for coredump
enabling logCollector by default will enable the coredump
generation in case a process terminates with a segmentation fault.

Signed-off-by: gauravsitlani <gauravsitlani@riseup.net>
2022-10-19 23:04:22 +05:30
Blaine Gardner a7c0c7ee93 object: remove health checker
Remove the health checker for CephObjectStore. The liveness and
readiness probes go through the same code paths in RGW as creating
buckets without as much affect on the storage backend.

Full discussion: https://github.com/rook/rook/issues/11031

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2022-10-18 13:41:46 -06:00
Travis Nielsen 87afc09e05 Merge pull request #11090 from parth-gr/external-rgw
external: fix endpoint_dial check for rgw endpoint
2022-10-18 09:11:10 -06:00
parth-gr fb7b67c3f4 external: fix endpoint_dial check for rgw endpoint
the validate rgw endpoint tls cert returns the certificate instead
of returning whether it exist or not,
So updatd the flow how to use it

Closes: https://github.com/rook/rook/issues/11060
Signed-off-by: parth-gr <paarora@redhat.com>
2022-10-14 19:16:30 +05:30