Commit Graph
3007 Commits
Author SHA1 Message Date
Sébastien Han fc27fbdff5 Merge pull request #3409 from noahdesu/pvc-binding-size-suffix
ceph: adjust M-to-Mi rounding in PV creation
2019-07-09 09:38:04 +02:00
Travis Nielsen 9250c072cc Merge pull request #3322 from umangachapagain/rook-ceph-monitoring
Integrate ceph-mixins with rook-ceph
2019-07-08 18:27:03 -06:00
Noah Watkins e7ae2b6abd ceph: adjust M-to-Mi rounding in PV creation
Example of failure scenarios:

   - requested PVC 500M = 500,000,000 bytes
   - PV is created as:
        (500M / 2**20)Mi = "476"Mi
        But 476Mi = 476 * 2**20 = 499122176 < 500M

From the k8s documentation:

   Claims will remain unbound indefinitely if a matching volume does not
   exist. Claims will be bound as matching volumes become available. For
   example, a cluster provisioned with many 50Gi PVs would not match a
   PVC requesting 100Gi. The PVC can be bound when a 100Gi PV is added
   to the cluster.

which is inline with the behavior observed in which a 500M PVC is never
bound. However, the documentation also states:

   If a PV was dynamically provisioned for a new PVC, the loop will
   always bind that PV to the PVC. Otherwise, the user will always get
   at least what they asked for

which suggests that an _explicit_ binding can be created, and perhaps
something has changed with respect to this binding that has caused the
failures in newer versions of k8s.

fixes: #3391
fixes: #2922

Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2019-07-08 10:20:03 -07:00
Alexander Trost f0b0f0e4f3 ceph: wrong pool name for CephFS StorageClass (#3400)
ceph: wrong pool name for CephFS StorageClass
2019-07-08 09:56:02 +02:00
Sébastien Han 2372c4f9c8 Merge pull request #3410 from travisn/test-cleanup-before-start
Tests: Ensure cluster does not exist before starting a test
2019-07-08 09:27:24 +02:00
Umanga Chapagain 732f3030d0 integrate prometheus based monitoring with rook-ceph
> add new field to cluster spec
> deploy servicemonitor
> deploy prometheusRule

Signed-off-by: Umanga Chapagain <chapagainumanga@gmail.com>
2019-07-08 11:40:17 +05:30
travisn ef9dc0be74 tests: ensure cluster does not exist before starting a test
The CI instances are not always being properly cleaned up
between runs. This is an attempt to get the tests
to ensure a clean install before proceeding with the test.

Signed-off-by: travisn <tnielsen@redhat.com>
2019-07-05 16:41:52 -06:00
Joel Huang c404a7e68b ceph: wrong pool name for CephFS StorageClass
* This error is found in creating CephFS StorageClass using document `Documentation/ceph-csi-drivers.md`: "expect a pool named `cephfs_data` in your Ceph cluster"
* **`kubectl apply -f pool.yaml` using metadata.name "cephfs_data" produce error:** The CephBlockPool "cephfs_data" is invalid: metadata.name: Invalid value: "cephfs_data": a DNS-1123 subdomain must consist of lower case alphanumeric characters, '-' or '.', and must start and end with an alphanumeric character (e.g. 'example.com', regex used for validation is '[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*')
* accoding to `Documentation/ceph-filesystem-crd.md` linked from `Documentation/ceph-csi-drivers.md` file and field test, it should be `myfs-data0`

Signed-off-by: Joel Huang <joelhy@gmail.com>
2019-07-06 00:21:34 +08:00
Travis Nielsen 0f699aa33c Merge pull request #3377 from poornimag/fork-ceph-image-latest
Change the ceph image to point to latest-nautilus-devel
2019-07-05 08:42:05 -06:00
Dmitry Yusupov 1f1f58ac1e Merge pull request #3375 from dyusupov/master
support for rook Device.FullPath
2019-07-05 07:40:47 -07:00
Sébastien Han 05c9b0253e Merge pull request #3388 from leseb/panic-cr-update
ceph: controller: fix panic on cr update
2019-07-05 16:28:55 +02:00
Alexander Trost 1992de4236 ceph: fix typo error storegeclass (#3396)
ceph: fix typo error storegeclass
2019-07-05 15:37:01 +02:00
Joel Huang d4945d6533 ceph: fix typo error storegeclass
The word "storegeclass" should be "storageclass"

Signed-off-by: Joel Huang <joelhy@gmail.com>
2019-07-05 21:28:36 +08:00
Sébastien Han c9896071ce Merge pull request #2886 from umangachapagain/issue-2005
Added NodeAffinity to Agent and Discover Daemon
2019-07-05 10:37:24 +02:00
Umanga Chapagain 25e4275082 Rook: Added NodeAffinity to agent and discovery daemon
Previously, Rook Agent and Discovery DaemonSet deployment didn't allow
adding nodeAffinity. This commit adds nodeAffinity spec to daemonSet
deployment, which can be configured through environment variables in
operator deployment yaml.

+ Support multiple LabelKey, each with multiple LabelValue
+ Support multiple LabelKey with no value

Signed-off-by: Umanga Chapagain <chapagainumanga@gmail.com>
2019-07-05 13:48:09 +05:30
Poornima G 4ddef3e823 Change the ceph image to latest-nautlius-devel
Currently in cluster deploy, ceph image points to ceph/ceph:v14.2.1-20190430.
Changing this to use ceph/daemon-base:latest-nautilus-devel as its the latest nautilus.

Ceph nautilus has some changes in cephsfs mgr module, which is required by ceph-csi
canary image, without which the create/purge of RWX PVCs will fail. These changes
are not yet part of any released ceph version, i.e v14.2.1-20190430. Even in the
short future, we expect some changes to land in Nautilus after 14.2.2, hence
waiting for 14.2.2 release and updating to it, will not solve the issue.
Therefore using latest-nautilus-devel, which will always have the changes
required by ceph-csi. This is only a temperory change in the master, until
14.2.3 is released.

Signed-off-by: Poornima G <pgurusid@redhat.com>
2019-07-05 06:50:30 +00:00
Sébastien Han 71e3eef266 Merge pull request #3389 from leseb/osd-sdn-arg
ceph: osd: fix cli arg
2019-07-04 16:21:44 +02:00
Sébastien Han f183ad2bb1 ceph: controller: fix panic on cr update
If we are running a Ceph cluster that has an unsupported version and if
we have set allowUnsupported: false, a newly bootstrap operator will
fail to start. To fix this, the user will update the CR and set
allowUnsupported: true, however at this point clusterInfo hasn't been
initialized so the operator will panic because we were referencing a nil
pointer.

To fix this, we re-populate clusterInfo if necessary and things go
smoothly.

Closes: https://github.com/rook/rook/issues/3137
Signed-off-by: Sébastien Han <seb@redhat.com>
2019-07-04 16:21:17 +02:00
Sébastien Han 6d62005472 ceph: osd: fix cli arg
Somehow during startup the arg got misinterpreted by ceph-osd and was
failing with:

2019-06-19 15:23:09.098967 I | exec: Running command: ceph-osd --foreground --id 0 --osd-uuid feceb7d7-3148-4a0d-af7a-753ba2f21a92 --conf /var/lib/rook/osd0/rook-ceph.config --cluster ceph --default-log-to-file false --ms-learn-addr-from-peer false
2019-06-19 15:23:09.135921 I | unrecognized arg false
failed to start osd. Failed to complete '': exit status 1.

Now we concatenate the whole flag to avoid that.

Signed-off-by: Sébastien Han <seb@redhat.com>
2019-07-04 16:19:57 +02:00
Sébastien Han 1d19a14075 Merge pull request #3328 from travisn/test-k8s-1.15
Add k8s 1.15 and remove 1.10 from integration tests
2019-07-04 11:14:07 +02:00
Sébastien Han 83e50dbdf7 Merge pull request #3385 from bk201/wip-3384
Ceph: fix error when creating monmap in Octopus
2019-07-04 11:12:52 +02:00
Sébastien Han a66caf2da3 Merge pull request #3358 from Madhu-1/fix-3357
Update rbd and cephfs secret
2019-07-04 08:56:03 +02:00
Madhu Rajanna 51c0cddc9f remove adminID and userID from storageclass
Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2019-07-04 12:17:26 +05:30
Madhu Rajanna 210bb9aa31 update e2e to use new secrets
Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2019-07-04 12:17:26 +05:30
Madhu Rajanna de9f8c1b62 Update rbd and cephfs secret
cephcsi PR https://github.com/ceph/ceph-csi/pull/395
changed the way we are storing secrets. This PR will
bring same changes to the rook as well.

Fixes: #3357

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2019-07-04 12:17:26 +05:30
Dmitry Yusupov 5ffe2f037c support for rook Device.FullPath
Signed-off-by: Dmitry Yusupov <dmitry.yusupov@nexenta.com>
2019-07-03 23:06:58 -07:00
travisn 368d4189ae tests: Add k8s 1.15 and remove 1.10 from integration tests
Signed-off-by: travisn <tnielsen@redhat.com>
2019-07-03 17:53:44 -06:00
Kiefer Chang 7a4f5c9bda Ceph: fix error when creating monmap
Adjust keyring template because ceph-mon in Octopus fails to
parse keyring file which has leading indention.

Fixes: https://github.com/rook/rook/issues/3384
Signed-off-by: Kiefer Chang <kiefer.chang@suse.com>
2019-07-03 16:14:34 +08:00
Travis Nielsen 3ec7a5f480 Merge pull request #3306 from jarrpa/ceph-device-set-design
Rook StorageClassDeviceSet design doc
2019-07-02 16:31:32 -06:00
Jose A. Rivera 371a659491 Rook StorageClassDeviceSet design doc
Signed-off-by: Jose A. Rivera <jarrpa@redhat.com>
2019-07-02 17:13:46 -05:00
Travis Nielsen 72afc709aa Merge pull request #3353 from sabbot/handle-crd-update
EdgeFS Rolling Upgrade support
2019-07-02 10:43:24 -06:00
Anton Skriptsov 8d0866b20e upgrade service's crds
Signed-off-by: Anton Skriptsov <sabbotagge@gmail.com>
2019-07-01 13:19:03 -07:00
Travis Nielsen d1de0d890d Merge pull request #3378 from ShyamsundarR/update-csi-manifests
Update Ceph-CSI manifests as per changes to ceph-csi repository
2019-07-01 13:05:13 -06:00
ShyamsundarR 1dbdd9bb12 Update Ceph-CSI manifests as per changes to ceph-csi repository
Ceph-CSI repository had a recent PR [1] merged that contains
changes to the pod manifests.

This PR to Rook updates the pod manifests to catchup with the
changes to Ceph-CSI master.

Once Ceph-CSI has a 1.1.0 release, future PRs to Rook on manifest
changes would track that branch (at least for Rook 1.1 release).

[1] PR in ceph-csi changing the manifest:
  https://github.com/ceph/ceph-csi/pull/443

Signed-off-by: ShyamsundarR <srangana@redhat.com>
2019-07-01 13:30:23 -04:00
Travis Nielsen 18cca31205 Merge pull request #3350 from travisn/ownerref-apiversion
Set the fully qualified apiVersion on the OwnerReferences
2019-07-01 08:44:13 -06:00
travisn 9d7474467c set the fully qualified apiVersion for OwnerReferences
OwnerReferences are now created with the fully qualified apiVersion
such that the references will work properly on OpenShift.

Signed-off-by: travisn <tnielsen@redhat.com>
2019-07-01 06:55:08 -06:00
travisn 8226d577f6 remove obsolete check for setting the resource ownerreferences
The check for whether to set the OwnerReferences is no longer
necessary. When passing the correct value to the apiVersion,
the OwnerReferences can be successfully set for OpenShift.

Signed-off-by: travisn <tnielsen@redhat.com>
2019-07-01 06:55:07 -06:00
Blaine Gardner 004f795a79 Merge pull request #3326 from krig/rook-binary-location
ceph: Look for binaries on PATH if not found
2019-06-25 09:51:45 -06:00
Sébastien Han e6093d2c83 Merge pull request #3196 from travisn/upgrade-1.0
Ceph: upgrade test from 1.0 to master instead of 0.9 to master
2019-06-25 17:48:31 +02:00
Travis Nielsen e663624827 Merge pull request #3324 from Madhu-1/csiv1.1.0
update rook to use ceph-csi canary image
2019-06-25 08:24:21 -06:00
Sébastien Han 0305c3eb26 Merge pull request #3340 from andrewwebber/update-operator
Container Linux - Daemonsets missing required field "selector"
2019-06-25 14:31:24 +02:00
Sébastien Han bc50971b75 Merge pull request #3268 from noobaa/guy-init-context
Refactor operator context init and allow to run local
2019-06-25 14:20:42 +02:00
Madhu Rajanna 71f369303e update rook to use ceph-csi canary version
ceph-csi canary version is close to ceph-csi v1.1.0
release

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2019-06-25 17:15:46 +05:30
andrew webber (personal) 2eaaf26792 Container Linux - Daemonsets missing required field "selector"
Signed-off-by: andrew webber (personal) <andrewvwebber@googlemail.com>
2019-06-24 23:36:40 +02:00
travisn 37efe00cc6 ceph: clarify that upgrade guide in master does not support upgrades
Signed-off-by: travisn <tnielsen@redhat.com>
2019-06-24 15:15:55 -06:00
travisn c0d6f6edf2 ceph: upgrade test from 1.0 to master
The upgrade test is intended to upgrade from the previous release to the latest.
Given the 1.0 release recently, the upgrade test will now be from 1.0 to
master. There is no longer a need in master to upgrade from 0.9.

Signed-off-by: travisn <tnielsen@redhat.com>
2019-06-24 15:05:48 -06:00
Alexander Trost 9b7eff4ab2 Merge pull request #3321 from phantooom/rui.zou/fix-3141
Minio: throw validatefunc err msg
2019-06-24 18:39:27 +02:00
Sébastien Han 1bf3cfa4bf Merge pull request #3329 from leseb/no-tunables
ceph: stop forcing crush tunable
2019-06-24 16:43:44 +02:00
Sébastien Han d3845e7f75 ceph: stop enforcing crush tunable
This requirement is long gone and was reported in 2017. Clients should
have been updated by then, so there is no reason to set the CRUSH
tunable to such an old client. Actually, we should let Ceph run its own
tunable. They can always be changed later. Also, this was really
restrictive and applied on every orchestration and thus would override
any other config done by an administrator. Even worse, this will trigger
data movement back and forth...

Closes: https://github.com/rook/rook/issues/3138
Signed-off-by: Sébastien Han <seb@redhat.com>
2019-06-24 09:47:32 +02:00
Kristoffer Grönlund b3ba6b40fd ceph: Look for binaries on PATH if not found
Similarly to #2675, try to find the rook binary
on PATH in case it isn't found in /usr/local/bin/rook.

Distributions generally disallow installing files
into /usr/local, as it is reserved for non-system
installations by the FHS.

Signed-off-by: Kristoffer Grönlund <kgronlund@suse.com>
2019-06-21 19:15:56 +02:00