Commit Graph
7961 Commits
Author SHA1 Message Date
Sébastien Han f0a24f852e Merge pull request #7838 from travisn/volume-unit-test
ceph: Fix intermittent volume unit test
2021-05-06 08:22:12 +02:00
Travis Nielsen 55dc1d2ba5 ceph: fix intermittent volume unit test
The unit test TestConfigureCVDevices was failing intermittently
due to comparing the first element of the slice of two elements.
The slice ordering is not guaranteed, which caused a failure
intermittently. The test only compares the critical values in the test
and no need to check elements of the slice.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-05-05 19:12:28 -06:00
Travis Nielsen f6b2a464a3 Merge pull request #7835 from travisn/preserve-pvc-annotations
ceph: Preserve volume claim template annotations during upgrade
2021-05-05 17:16:15 -06:00
Travis Nielsen 08d720f450 ceph: preserve volume claim template annotations during upgrade
The upgrade of the csv is failing to the latest schema when
the crushDeviceClass is specified and when the volumeClaimTemplate
annotations do not preserve the unknown fields. To fix the upgrade,
we preserve the fields even though it should not be necessary
from the strict schema.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-05-05 16:33:40 -06:00
Travis Nielsen 79695b0b12 Merge pull request #7820 from subhamkrai/fix-ec-command
ceph: update erasure coded profile command
2021-05-05 14:00:10 -06:00
Travis Nielsen 583c94be38 Merge pull request #7829 from BlaineEXE/ceph-image-to-16.2.2
ceph: update images to v16.2.2
2021-05-05 12:57:49 -06:00
Travis Nielsen af1d728ba6 Merge pull request #7801 from sp98/mon-failover-on-drain
ceph: retry once before mon failover if mon pod is unscheduled
2021-05-05 12:39:05 -06:00
Santosh Pillai f38829b57d ceph: retry once before mon failover if mon pod is unscheduled
Events like node drain can take more than 10-15 minutes. If the node is not update the default monTimeOut of 10 minutes, then rook will attempt to fail over the mon. This failover won't work as the node is still down.
This PR retries once before the mon failover if the mon pod is not scheduled

Signed-off-by: Santosh Pillai <sapillai@redhat.com>
2021-05-05 23:32:27 +05:30
Blaine Gardner 5245ceaf06 ceph: update images to v16.2.2
Ceph v16.2.2 is released with dated tag v16.2.2-20210505. Update Ceph
images to match with or without date as appropriate.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2021-05-05 11:35:34 -06:00
Travis Nielsen 46bf670497 Merge pull request #7711 from Rakshith-R/upd-snapshotter
ceph: update snapshot APIs from v1beta1 to v1
2021-05-05 10:03:41 -06:00
Rakshith R 7987e1b8a2 ceph: update snapshot APIs from v1beta1 to v1
This commit updates external-snapshotter version to
v4.0.0 which supports snapshots v1.
Rook now defaults to enabling RBD and CephFS snapshotter
for K8s >= v1.17 and disabling it for K8s <= v1.16.
Supporting changes in documents and examples yaml files
are made.

Signed-off-by: Rakshith R <rar@redhat.com>
2021-05-05 21:04:10 +05:30
Travis Nielsen a53a270923 Merge pull request #7823 from travisn/filestore-refs
ceph: Remove obsolete references to filestore
2021-05-05 09:10:43 -06:00
Sébastien Han 40e6633280 Merge pull request #7815 from travisn/raw-mode-device-class
ceph: Set the device class on raw mode osds
2021-05-05 08:42:34 +02:00
Travis Nielsen d5374f11a1 ceph: set the device class on raw mode osds
The deviceClass was only being set for LVM mode OSDs and was
missed for the raw mode for non-PVC. Now the deviceClass will be set
for all expected scenarios.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-05-04 17:13:49 -06:00
Travis Nielsen eba91a4bd6 ceph: remove obsolete references to filestore
Filestore support has been long gone with only bluestore
currently supported.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-05-04 15:50:20 -06:00
Travis Nielsen ef1f56f968 Merge pull request #7813 from travisn/volume-source-schema
ceph: Remove unused volumesource schema from cephcluster
2021-05-04 07:48:40 -06:00
subhamkrai 0ef7308d74 ceph: update erasure coded profile command
currently, recreating erasure codedpPool with
different Settings show error and creation
failed.

Adding `--force` to the erasure coded profile
command works file with above condition.

Signed-off-by: subhamkrai <srai@redhat.com>
2021-05-04 18:23:04 +05:30
Travis Nielsen ce50eb2407 ceph: remove unused volumesource schema from cephcluster
The VolumeSource type was only used internally when loading
the storageClassDeviceSets. The volumeSource element is never
expected to be specified in the CephCluster CR, so it is now
removed from the schema. The VolumeSource type is renamed to
deviceSet for clarity.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-05-03 11:54:46 -06:00
Sébastien Han f0786d345c Merge pull request #7789 from leseb/fixmon-spec
ceph: fix external cluster mode
2021-05-03 16:44:17 +02:00
Sébastien Han 15a12577f5 ceph: fix external mode setup
Because of the recent CRD changes made, the mon count had a minimum of
1, making the configuration of the external cluster impossible. The
operator would fail to add the finalizer:

```
2021-04-29 16:57:38.429451 E | ceph-cluster-controller: failed to reconcile. failed to add finalizer: failed to add finalizer "cephcluster.ceph.rook.io" on "test-external": CephCluster.ceph.rook.io "test-external" is invalid: spec.mon.count: Invalid value: 0: spec.mon.count in body should be greater than or equal to 1
```

We now fixed the CRD as well as adding the CR status.

Signed-off-by: Sébastien Han <seb@redhat.com>
2021-05-03 12:07:40 +02:00
Travis Nielsen 512d77de61 Merge pull request #7777 from travisn/nullable-pool-fields
ceph: Allow null values for pool settings
2021-04-30 12:25:36 -06:00
Travis Nielsen f22d8d4dc9 ceph: allow null values for pool settings
The schema in v1.6 is more strict and we are seeing errors in the csv
upgrades where nullable values are not allowed for the pool settings.
We now allow the nullable settings again to fix the upgrade scenario.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-04-30 11:58:18 -06:00
Satoru Takeuchi 41fb1fec01 Merge pull request #7798 from parth-gr/Document-ceph-upgrade
docs: common-issues link updated in ceph-upgrade doc
2021-04-30 15:02:31 +09:00
parth-gr 78f5a2495d docs: common-issue link updated in ceph-upgrade doc
The ceph-common-issue doc link in ceph-upgrade document was broken
Fixed the link by changing the directory path

Closes: https://github.com/rook/rook/issues/7794
Signed-off-by: parth-gr <paarora@redhat.com>
2021-04-30 11:16:08 +05:30
Sébastien Han 0c806588d2 Merge pull request #7790 from leseb/retry-vg
ci: retry vgcreate on failure
2021-04-29 19:01:35 +02:00
Sébastien Han c63a42a661 ci: retry vgcreate on failure
Try to mitigate the following error from the CI:

```
+ sudo vgcreate test-rook-vg /dev/sdb
  Can't open /dev/sdb exclusively.  Mounted filesystem?
Error: Process completed with exit code 5.

```

Now we retry up to 3 times to create the volume group.

Closes: https://github.com/rook/rook/issues/7487
Signed-off-by: Sébastien Han <seb@redhat.com>
2021-04-29 18:24:48 +02:00
Sébastien Han f8fc02db2f Merge pull request #7783 from leseb/fix-build-all
build: fix parallel build
2021-04-29 18:24:15 +02:00
Sébastien Han ffeeed30fe Merge pull request #7782 from Rakshith-R/add-static-docs
docs: add static pv and static pvc creation info
2021-04-29 17:41:31 +02:00
Sébastien Han 0f7128ece9 build: fix parallel build
We now the generate the CRDs as well as the CSV on a single GOARCH only:
amd64. This helps us avoiding builds colliding with each others.

Closes: https://github.com/rook/rook/issues/7655
Signed-off-by: Sébastien Han <seb@redhat.com>
2021-04-29 17:31:22 +02:00
Rakshith R e88bff4afd docs: add static pv and static pvc creation info
This commit adds information about static pv and static pvc
creation and links a document with more information.

Signed-off-by: Rakshith R <rar@redhat.com>
2021-04-29 20:55:03 +05:30
Travis Nielsen 2b9bd2af1a Merge pull request #7445 from jshen28/fix-upgrade-mds
ceph: complete missing steps of upgrading mds
2021-04-29 07:21:35 -06:00
Sébastien Han c8994ff450 Merge pull request #7752 from jshen28/add-print-columns
ceph: add phase to cephfilesystems crd
2021-04-29 15:00:05 +02:00
Sébastien Han f97769e7fb Merge pull request #7320 from davralin/master
cephfs-documentation: Add dedicated storageclass-ec.yaml
2021-04-29 14:54:50 +02:00
Sébastien Han 49f2f0b441 build: fix sed command for linux
The following command ended up being missinterpreted on linux,
generating a wrong file named ceph.clusterserviceversion.yaml'\''
with broken quotes.
Making it an array ensures the command and the args are parsed
correctly. Tested on both linux and macos.

Signed-off-by: Sébastien Han <seb@redhat.com>
2021-04-29 14:38:51 +02:00
shenjiatong 21bb12a20d ceph: upgrade mds fix typos
fix some nits on error wraps and logging

Signed-off-by: shenjiatong <yshxxsjt715@gmail.com>
2021-04-29 16:45:08 +08:00
Sébastien Han 4b3007bf73 Merge pull request #7735 from leseb/mirror-pacific-tip
ci: use latest pacific for mirroring test
2021-04-29 09:45:25 +02:00
Sébastien Han 1e7f1b4ae0 Merge pull request #7633 from alimaredia/user-objectstore-endpoint-check
ceph: ensure object store endpoint is initialized for user
2021-04-29 09:01:45 +02:00
Ali Maredia c9fee1f883 ceph: ensure object store endpoint is initialized for user
when store.Status was not initialized it caused
crashes when assigning store.Status.Info["endpoint"]
to objContext.Endpoint.

This commits makes sure store.Status is not Nil
before setting objContext.Endpoint and
objContext.SecureEndpoint in the ObjectStoreUser
controller.

Closes: https://github.com/rook/rook/issues/6916
Signed-off-by: Ali Maredia <amaredia@redhat.com>
2021-04-28 21:47:34 -04:00
shenjiatong 41f775ec17 ceph: make sure standbys are stopped
wait and make sure standbys are stopped before
continuing to upgrade the primary mds daemon.

Signed-off-by: shenjiatong <yshxxsjt715@gmail.com>
2021-04-29 08:12:29 +08:00
shenjiatong 81f888260b ceph: reset max_mds and allow_standby_replay in deferred function
set fsPreparedForUpgrade to true for upgrading mds, to
make sure that max_mds is set back to active count
after all mds agent gets upgraded

Signed-off-by: shenjiatong <yshxxsjt715@gmail.com>
2021-04-29 08:06:39 +08:00
shenjiatong 58f6b495af ceph: complete missing steps of upgrading mds
Upgrading mds requires extra steps than simply
replacing ceph image. see https://docs.ceph.com/en/latest/cephfs/upgrading/
for reference.

Signed-off-by: shenjiatong <yshxxsjt715@gmail.com>
2021-04-29 08:06:38 +08:00
Blaine Gardner 6ee626b3aa Merge pull request #7764 from thotz/obcsslfix
ceph: support for OBC operations if it uses TLS RGW endpoint
2021-04-28 14:27:08 -06:00
Travis Nielsen 6af362abd4 Merge pull request #7768 from travisn/skip-upgrade-checks-log
ceph: Clarify log message to continue with upgrade if needed
2021-04-28 13:19:23 -06:00
parth-gr bb23622b72 core: enhancement in debug logs
When DEBUG logging is enabled in the operator, there are a number of overwhelming messages in the log that are very overwhelming and don't seem useful, which makes debug mode difficult to use
Updated and Cutted down the messages that are not useful in debug mode

Closes: https://github.com/rook/rook/issues/7499
Signed-off-by: parth-gr <paarora@redhat.com>
2021-04-28 22:28:10 +05:30
Sébastien Han e115e0ada8 Merge pull request #7385 from thotz/rgwkmskvv1check
ceph: check for kv engine version for SSE RGW
2021-04-28 15:22:39 +02:00
Jiffin Tony Thottan 3cacd8db32 test: add seperate test for rgw vault integration
RGW supports only v2 version of kv engine, current integration test is written for kv v1,
hence seperating existing test into two.

Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
2021-04-28 14:40:08 +05:30
Jiffin Tony Thottan 73b43c5e73 docs: update the vault kms documentation for RGW
This changes documentation from `ceph-cluster-crd.md` to `ceph-object-store-crd.md`.

Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
2021-04-28 14:40:02 +05:30
Jiffin Tony Thottan a5a5661e5f ceph: add security spec to object store spec
Add `SecuritySpec` to specify kms details for rgw in `ObjectStoreSpec` than using existing
`SecuritySpec` used for `ClusterSpec`. The vault secret engines conflict with OSD and RGW
kms encrytpion

Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
2021-04-28 14:39:39 +05:30
Jiffin Tony Thottan 3ef3e8b72e ceph: check for kv engine version for SSE RGW
The "https://docs.ceph.com/en/latest/radosgw/vault/" says RGW supports only version v2 of
kv engine, so pod won't start if the admin didn't provide "VAULT_BACKEND" in security.kms.ConnectionDetails

Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
2021-04-28 13:03:22 +05:30
Jiffin Tony Thottan 8e5c6c126c ceph: modify ValidateConnectionDetails() in kms
The ValidateConnectionDetails() contains `clusterSpec` assuming `SecuritySpec` only
part to `cephCluster` CRD. But we may need to validate same for `SecuritySpec` in
`cephObjectStore` CRD. Hence modifying the signature of the api.

Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
2021-04-28 13:03:16 +05:30