Commit Graph
6368 Commits
Author SHA1 Message Date
Sébastien Han 9470a64ba7 Merge pull request #7284 from leseb/pool-replica-failure
ceph: fail if subfailure domains are identical
2021-02-22 18:43:19 +01:00
Sébastien Han 0300111f73 ceph: fail if subfailure domains are identical
Both cannot be identical otherwise this will create placement issues.

Signed-off-by: Sébastien Han <seb@redhat.com>
2021-02-22 17:24:24 +01:00
Sébastien Han adcb92f635 Merge pull request #7280 from cybozu-go/ceph-fix-sigsegv-in-obc-creation
ceph: fix SIGSEGV when failing to get object store user
2021-02-22 12:59:01 +01:00
Satoru Takeuchi c628a996c8 ceph: fix SIGSEGV when failing to get object store user
We shouldn't use `user.userID` if `GetUser()` failed.

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

Signed-off-by: Satoru Takeuchi <satoru.takeuchi@gmail.com>
2021-02-22 11:24:59 +00:00
Travis Nielsen 7404de7b38 Merge pull request #7264 from fritchie/pool-quotas
ceph: add ability to set pool quotas
2021-02-19 12:53:41 -07:00
Frank Ritchie a0488dac73 ceph: add ability to set pool quotas
This will allow setting ceph pool quotas in bytes and/or objects.

Ceph documentation: https://docs.ceph.com/en/latest/rados/operations/pools/#set-pool-quotas

Signed-off-by: Frank Ritchie <12985912+fritchie@users.noreply.github.com>
2021-02-19 13:49:25 -05:00
Sébastien Han 00e85bc53c Merge pull request #7271 from hookak/patch-2
docs: Delete 'rootPath' in cephfs storageclass yaml
2021-02-19 11:46:31 +01:00
Sébastien Han 0631408c2a Merge pull request #7270 from shellwedance/ceph_correct_fs_yaml
ceph: correct fs yaml fields
2021-02-19 10:54:32 +01:00
jinhong.kim f519323524 docs: delete 'rootPath' in cephfs storageclass yaml
The pre-provisioned volume or static-PV support in cephfs-csi has changed.
Delete 'rootPath' field which is no longer used

Signed-off-by: Jinhong Kim <hookak25@gmail.com>
2021-02-19 07:13:34 +00:00
Taeuk Kim c0c4d41b47 ceph: correct fs yaml fields
Some MDS fields such as placement, resource belong to mirroring currently.
It corrects the fields location.

Signed-off-by: Taeuk Kim <taeuk_kim@tmax.co.kr>
2021-02-19 01:28:03 +00:00
Travis Nielsen 42c06e48c4 Merge pull request #7256 from travisn/osd-topology-affinity
ceph: Enforce portable OSDs in same topology as osd prepare job
2021-02-18 17:06:49 -07:00
Travis Nielsen 291bf9e061 ceph: enforce portable osds in same topology as osd prepare job
The osd prepare job detects the failure domain for the OSD by querying
the node topology labels. This topology is then assigned to the OSD
daemon in the CRUSH map. Previously, the affinity was required to be
set in the cluster CR, but it was very difficult to get right. Now the
operator will enforce the correct topology label on the OSD daemon
nodeAffinity by setting the label of the lowest topology in the hierarcy.

For example, if there are region, zone, and rack labels, the rack label
would be used to set the node affinity for the OSD daemon. If an
OSD prepare job is run in rack1, the corresponding OSD daemon will
have node affinity to rack1 to ensure the same topology. Previously,
the OSD could have ended up in rack2 unless the storageClassDeviceSet
placement was very carefully crafted.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-02-18 12:49:37 -07:00
Blaine Gardner 5b9603a763 Merge pull request #6975 from BlaineEXE/design-doc-update-osds-in-parallel
design: add design to update ceph osds in parallel
2021-02-18 12:32:11 -07:00
Blaine Gardner 2c624df7ff docs: add design to update ceph osds in parallel
Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2021-02-18 09:58:08 -07:00
Sébastien Han f8ce9df5e3 Merge pull request #7001 from crombus/master
ceph: Add ceph archive cmd in osd removal
2021-02-18 17:09:52 +01:00
crombus 76ed166e86 ceph: add ceph archive cmd in osd removal
Add ceph archive cmd in osd removal for
Silencing the warning when osd is removed.

Signed-off-by: crombus <pkundra@redhat.com>
2021-02-18 21:08:16 +05:30
Sébastien Han 42c6825d7f Merge pull request #7257 from travisn/relative-links-include
docs: Include doc script for referencing github branches
2021-02-18 14:11:52 +01:00
Travis Nielsen 99ffc4f5bf docs: include doc script for referencing github branches
The links from the documentation to github need to use the
branch name in order to point to the correct path. The docs
should reference a common script that will parse the branch
name instead of copying the script contents to all the docs.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-02-17 19:59:30 -07:00
Sébastien Han 86de4f6fb3 Merge pull request #7238 from varshar16/rados-namespace-optional
ceph: rados pool namespace is optional for nfs deployments
2021-02-17 11:40:06 +01:00
Sébastien Han 5f170bcfd2 Merge pull request #7248 from cybozu-go/ceph-fix-typos-in-ob-doc
ceph: fix typos in ob doc
2021-02-17 11:12:20 +01:00
Sébastien Han 4d4a5d2017 Merge pull request #7239 from leseb/bz-1894412
ceph: revert fail if mgr prometheus is not default
2021-02-17 10:29:50 +01:00
Travis Nielsen 99450276f6 Merge pull request #7247 from subhamkrai/osd-placement
ceph: update placement in osd with osdProps.placement
2021-02-16 21:44:00 -07:00
Travis Nielsen e130261156 Merge pull request #7249 from subhamkrai/helm-csi
ceph: helm update variable enableCephFSSnapshotter
2021-02-16 21:37:19 -07:00
subhamkrai 93309bc492 ceph: helm update variable enableCephFSSnapshotter
this commit removes the casing error in helm.
`enableCephFSSnapshotter` in `values.yaml` does not
match the casing `enableCephfsSnapshotter` in `deployment.yaml`.

Signed-off-by: subhamkrai <srai@redhat.com>
2021-02-17 08:30:27 +05:30
Satoru Takeuchi 70a5d15560 ceph: fix typos in ob doc
`phase` field name is not capitalized and its values are capitalized.
Here is an example.

```
apiVersion: objectbucket.io/v1alpha1
kind: ObjectBucketClaim
...
status:
  phase: Pending
```

Signed-off-by: Satoru Takeuchi <satoru.takeuchi@gmail.com>
2021-02-17 02:45:16 +00:00
subhamkrai b20a7f13ee ceph: update placement in osd with osdProps.placement
this commit update `osdProps.placement` instead
of `osdProps.getPreparePlacement()` in the osd.go
this was the copy paste issues coming from other pr.

Signed-off-by: subhamkrai <srai@redhat.com>
2021-02-17 07:35:18 +05:30
Blaine Gardner 57f1ff7136 Merge pull request #7234 from travisn/cleanup-tolerations
ceph: Add tolerations for all daemons to the cleanup job
2021-02-16 17:49:26 -07:00
Travis Nielsen dfc24ddd24 Merge pull request #7240 from leseb/fix-vault-key-override
ceph: do not override existing keys
2021-02-16 16:09:34 -07:00
Sébastien Han 9a604640ac ceph: do not override existing keys
If the cluster was expanded we would iterate over the entire list of
OSDs again, create a new key and override in Vault... The Secret store
is not impacted since we have a handler for "already exist".

Signed-off-by: Sébastien Han <seb@redhat.com>
2021-02-16 19:20:20 +01:00
Blaine Gardner 2a3f06bacf Merge pull request #6926 from BlaineEXE/create-new-osds-before-updating-existing
ceph: create new OSDs on PVC before updating existing ones
2021-02-16 11:17:01 -07:00
Travis Nielsen 8ce98c4b72 ceph: add tolerations for all daemons to the cleanup job
The cleanup job will need to run wherever the ceph daemons
were running. The scheduling is done by rook on the specific
nodes where the daemons were running, so there is no need for
other placement such as node or pod affinity.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-02-16 10:25:39 -07:00
Travis Nielsen 371128224b Merge pull request #7192 from subhamkrai/osd-resources
ceph: do not merge nodeAffinity
2021-02-16 10:13:18 -07:00
Sébastien Han e99c122038 ceph: revert fail if mgr prometheus is not default
This reverts commit 1ed307cb09. In
8aaff235bb we have introduced the ability
to set a specific monitoring port so the block that fails if the port is
not the default 9283 is not needed anymore.

Signed-off-by: Sébastien Han <seb@redhat.com>
2021-02-16 16:55:37 +01:00
Varsha Rao 7a4ebbef0e ceph: rados pool namespace is optional for nfs deployments
There is no need to validate rados pool namespace, it is optional[1]. And if in
case rados namespace is not specified, it is appropriately handled.

[1] https://github.com/nfs-ganesha/nfs-ganesha/blob/next/src/doc/man/ganesha-core-config.rst

Signed-off-by: Varsha Rao <varao@redhat.com>
2021-02-16 16:25:50 +05:30
Sébastien Han bf8fb7f179 Merge pull request #7221 from cloudical-io/docs_crds_finalizers
docs: fix crd finalizer instructions
2021-02-16 11:02:49 +01:00
Alexander Trost c988db081c docs: fix crd finalizer instructions
Signed-off-by: Alexander Trost <galexrt@googlemail.com>
2021-02-16 10:31:39 +01:00
subhamkrai 6158b6608c ceph: do not merge nodeAffinity
we don't want to merge the node affinity if specified in both
storageClassDeviceSet and placement. Now, we are passing new
boolean argument in `ApplyToPodSpec` which will be false in
case of osd and prepare pods because we don't want to overlap
placement of osd on PVC's and non-PVC's.

Signed-off-by: subhamkrai <srai@redhat.com>
2021-02-16 12:25:28 +05:30
Travis Nielsen c971b01b9e Merge pull request #7230 from leseb/return-error
ceph: embed error in return
2021-02-15 11:36:10 -07:00
Sébastien Han 4e0820f490 ceph: embed error in return
We were missing the error.

Signed-off-by: Sébastien Han <seb@redhat.com>
2021-02-15 17:09:37 +01:00
Sébastien Han 9259894844 Merge pull request #5741 from cybozu-go/ceph-add-OSD-on-LV-backed-PVC-test
ceph: add osd on lv backed pvc test
2021-02-15 15:14:12 +01:00
Sébastien Han f424a7abac Merge pull request #7224 from TomHellier/master
ceph: minor bugfix with multiple filesystems
2021-02-15 12:28:56 +01:00
Tom Hellier 2e505d7439 ceph: minor bugfix with multiple filesystems
The multiple filesystems parameter needed to be quoted for kubernetes to accept the parameter, without quotes the environment variable is rejected.

Signed-off-by: Tom Hellier <me@tomhellier.com>
2021-02-15 10:42:54 +00:00
Sébastien Han b4c55766e4 Merge pull request #7218 from BlaineEXE/clean-doc-ceph-object
docs: use -o jsonpath in ceph-object.md
2021-02-15 09:33:29 +01:00
Blaine Gardner 2e992db10c docs: use -o jsonpath in ceph-object.md
Avoids use of grep and awk.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2021-02-12 18:34:42 -07:00
Blaine Gardner a95734160e ceph: create new osds on pvc before update existing
Add a new OSD provisioner status (reported by provisioner configmap)
that denotes that an OSD is preexisting and that OSD prepare does not
need to be run for the OSD. This only applies to OSDs on PVC currently
where existence of a deployment for the OSD indicates no further
provisioning needs to occur. New status is "preexisting".

Allow creating new OSDs on PVCs before updating existing ones by
allowing deferring OSDs during processing of OSD provisioning status
ConfigMaps. Deferral is identified by new "preexisting" status.

Add a unit test to ensure OSD on PVC provisioning occurs as expected
including deferring already-created OSDs to be updated after new PVCs
are created.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2021-02-12 17:38:35 -07:00
Travis Nielsen 7c331f33a9 Merge pull request #7191 from thotz/cephobjectuser-endpoint-validation
ceph: fill up endpoint for cephobjectstore user
2021-02-12 10:42:31 -07:00
Travis Nielsen 5320e6d26a Merge pull request #7153 from subhamkrai/default-livnessProbe
ceph: set default values of liveness probe
2021-02-12 09:49:06 -07:00
subhamkrai 4ef4be019b ceph: override default values in liveness probes
this commit set default values or allow overriding of liveness probe
fields if that individual field is 0 or nil.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
Signed-off-by: subhamkrai <srai@redhat.com>
2021-02-12 20:35:56 +05:30
Jiffin Tony Thottan b836aab13e ceph: fill up endpoint for cephobjectstore user
Currently endpoint is filled from `Status.Info["endpoint"]` string map for cephobjectstore user's secret and
have two issues:
1.) endpoint is nil and only secureendpoint is available
2.) Chance of small race window in which endpoint is not filled before this ceph object user is handling.

Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
2021-02-12 10:46:30 +05:30
Travis Nielsen 3effcb2d7e Merge pull request #7182 from ron1/fix-ceph-cluster-ready-status-condition-ordering
ceph: Order CephCluster false condition before true Ready condition
2021-02-11 13:16:14 -07:00