Commit Graph
13292 Commits
Author SHA1 Message Date
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
shenjiatong e1fd23933f ceph: add phase to cephfilesystems crd
add a Phase to columns that should be printed

Signed-off-by: shenjiatong <yshxxsjt715@gmail.com>
2021-04-28 15:18:11 +08:00
Sébastien Han 8fd932b18b Merge pull request #7685 from moritazy/master
docs: remove unrelated text "this is long video b"
2021-04-28 09:13:28 +02:00
Sébastien Han 302b90014e Merge pull request #7631 from BlaineEXE/allow-volumeclaimtemplate-metadata
api: persist VolumeClaimTemplate metadtata
2021-04-28 09:10:33 +02:00
Jiffin Tony Thottan f9c7634d88 ceph: support for OBC operations on enabled TLS RGW endpoint
OBC operations will fail if RGW only enabled HTTPS. With this change, OBC operations
will use needed TLS certs to succeed the operation.

Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
2021-04-28 12:37:38 +05:30
Jiffin Tony Thottan 7a5928d2c5 ceph: add api to fetch cacert for RGW server
Rook operator sends S3 to RGW server for bucket operations performed by healthchecker,
bucketprovisioner etc. Add api to fetch cacert if the TLS enabled for RGW.

Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
2021-04-28 12:25:36 +05:30
Blaine Gardner b60c495561 Merge pull request #7704 from alrs/nfs-multiple-imports
nfs: fix multiple imports
2021-04-27 15:47:34 -06:00
Blaine Gardner d260b81e97 core: persist VolumeClaimTemplate metadtata
Allow metadata on VolumeClaimTemplates in StorageClassDeviceSets to be
persisted. The latest changes to controller-gen allows us to embed
objectmeta for embedded types.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2021-04-27 13:37:48 -06:00
Travis Nielsen 6f61d95dc3 ceph: clarify log message to continue with upgrade if needed
The ceph upgrade blocks if the ceph heatlh is HEALTH_ERR. If the user
wants to force the upgrade despite the health error, they will need
to set skipUpgradeChecks: true in the cephcluster CR. This message
will hopefully make that setting more discoverable.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-04-27 11:31:28 -06:00
Travis Nielsen 3cb6628865 Merge pull request #7759 from travisn/topology-affinity-upgrade
ceph: Detect the osd topology affinity during upgrade
2021-04-27 10:18:09 -06:00
Sébastien Han 80713db94d Merge pull request #7677 from subhamkrai/improve-action-writing
ci: improve github action writing
2021-04-27 17:33:14 +02:00
Travis Nielsen 71bbab9bf6 Merge pull request #7606 from rohan47/multus_experimental
ceph: moved multus support out of experimental
2021-04-27 09:17:46 -06:00
Travis Nielsen 08f896e865 ceph: detect the osd topology affinity during upgrade
The nodeAffinity for portable OSDs is needed to ensure the OSDs are
tied to the same zone or other failure domain where the OSD was
prepared and where it is expected to run. During upgrade the topology
affinity was not being detected since the osd prepare job is skipped
in that case. Now the topology will be detected from the running
OSD daemon pod's node.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-04-27 08:51:51 -06:00
subhamkrai 7974d46b20 ci: improve github action writing
we have lots of duplicate codes for
github action. this commit refactor
them to a bash script which will minimize
duplicate codes.

Signed-off-by: subhamkrai <srai@redhat.com>
2021-04-27 20:15:52 +05:30
Sébastien Han afb7fb483a Merge pull request #7757 from BlaineEXE/upgrade-doc-crd-failures
docs: workaround preserveUnknownFields upgrade
2021-04-27 10:23:27 +02:00
Satoru Takeuchi 2beaa5db79 Merge pull request #7719 from cybozu-go/ceph-simplify-cmd-timeout
ceph: unity timeout values of commands
2021-04-27 07:12:36 +09:00
Blaine Gardner c90f3c3721 docs: workaround preserveUnknownFields upgrade
When upgrading Rook clusters created before v1.5,
`kubectl apply -f crds.yaml` fails due to the existence of
the usupported `spec.preserveUnknownFields`. Add text documenting how to
work around this issue in the Ceph upgrade docs.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2021-04-26 15:14:45 -06:00
rohan47 a654bc777b ceph: moved multus support out of experimental
moved multus support out of experimental.

Signed-off-by: rohan47 <rohgupta@redhat.com>
2021-04-27 00:31:09 +05:30
Sébastien Han bb5f233233 Merge pull request #7598 from thotz/rgwserviceservercert
ceph: service server cert support for rgw
2021-04-26 15:24:20 +02:00
Satoru Takeuchi 709e8d5ba8 ceph: unity timeout values of commands
There is no strong reason to have different timeout values.

Signed-off-by: Satoru Takeuchi <satoru.takeuchi@gmail.com>
2021-04-26 12:57:40 +00:00