Commit Graph
11197 Commits
Author SHA1 Message Date
Travis Nielsen 1113688aa8 Merge pull request #2952 from dyusupov/master
support for configurable trlog settings
2019-04-10 17:18:47 -06:00
Travis Nielsen 5a2bc901fe Merge pull request #2938 from travisn/save-cluster-health
Add ceph health info to the cephcluster custom resource
2019-04-10 17:18:19 -06:00
John Mulligan d46190357a doc: minor csi doc fix
When testing my changes I couldn't successfully deploy without also
creating the contents of common.yaml first.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
2019-04-10 17:53:28 -04:00
John Mulligan c0f5557d47 docs: remove instructions for manual ceph csi config maps
Signed-off-by: John Mulligan <jmulligan@redhat.com>
2019-04-10 17:53:28 -04:00
John Mulligan f6c15bfb5a ceph csi: include required templates in image
Include the mandatory template files in the rook ceph image
so that the user-driven configuration for CSI and flex do not
need to differ in this aspect.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
2019-04-10 17:53:28 -04:00
John Mulligan 7ee207b0fb ceph csi: tweak options handling around enabling csi
Simplify one function and improve option wording.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
2019-04-10 17:53:28 -04:00
travisn 5ebb651e37 ceph: update the cephcluster custom resource with ceph health
The CephCluster resource will now expose the health of the ceph cluster
so admins can query the status with k8s api or kubectl instead of
needing to run the rook toolbox. The operator will query the
ceph status periodically and update the status in the custom resource.

Signed-off-by: travisn <tnielsen@redhat.com>
2019-04-10 14:41:18 -06:00
Travis Nielsen 37c7aa35d3 Merge pull request #2961 from ktdreyer/ceph-image-comment
images: remove comment about ceph mimic image
2019-04-10 14:16:57 -06:00
Blaine Gardner 9c0369f264 k8sutil: extract granular node validity functions
Node validity is not always as simple as a true/false. Refactor each
validity test into its own function for operators that wish to check
validity more granularly. Ceph will use these changes.

Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
2019-04-10 12:43:43 -06:00
Ken Dreyer a92714b348 images: remove comment about ceph mimic image
Commit 91cc62676d changed our base ceph
version from Mimic to Nautilus.

Update the comment in the Dockerfile to reflect this change.

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2019-04-10 11:55:43 -06:00
Madhu Rajanna b5001ebfa7 update ceph-csi rbd snapshot document
The current document is too old and it has
a reference to the master branch(earlier
master branch referred to csi-v0.3.0).
This PR updated the snapshot document
wrt to the changes required for csi-v1.0.0

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2019-04-10 20:30:41 +05:30
Travis Nielsen e0d3ffdceb Merge pull request #2839 from Madhu-1/fix-drivername
Fix driver name in ceph csi driver
2019-04-10 08:51:06 -06:00
Madhu Rajanna d9dd81396c remove attacher statefulset for rbd csi driver
deploy attacher as a container inside  rbd provisioner
stateful set

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2019-04-10 18:27:08 +05:30
Travis Nielsen 2ca611a1bd Merge pull request #2940 from travisn/nautilus-support
Add nautilus to the list of supported Ceph versions
2019-04-09 21:53:14 -06:00
Dmitry Yusupov e1f61219b4 support for configurable trlog settings
Signed-off-by: Dmitry Yusupov <dmitry.yusupov@nexenta.com>
2019-04-09 15:20:18 -07:00
Blaine Gardner f126887b52 tests: add T/F/Unk. status to node ready condition
Rook previously relied on the presence of `Ready` to determine if a node
is ready, but `Ready` can have different statuses. Correct this.

https://kubernetes.io/docs/concepts/architecture/nodes/#condition

Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
2019-04-09 15:40:37 -06:00
Jared Watts fa11c4b4d7 Merge pull request #2836 from SUSE/roadmap-update
Roadmap: update for recent v1.0 triage
2019-04-09 11:10:20 -07:00
Madhu Rajanna 38527239c4 simplify socker directory name inside container
socket directory name need not follow
the driver name format,renamed socket directory
to simple names.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2019-04-09 16:08:56 +05:30
Madhu Rajanna d99527382d replace fmt.Errorf with errors.New
if error formatting is not required
we can we errors.New()

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2019-04-09 15:48:16 +05:30
Madhu Rajanna 6461d4866f update driver name as per CSI spec
as per CSI spec,The driver name MUST follow
domain name notation format (https://tools.ietf.org/html/rfc1035#section-2.3.1).

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2019-04-09 15:48:16 +05:30
Travis Nielsen 1d98c47315 Merge pull request #2931 from sabbot/integration-test
Edgefs: Integration tests for EdgeFS
2019-04-08 20:01:40 -06:00
Travis Nielsen b15391819b Merge pull request #2910 from SUSE/mon-port-upgrade-fix-2854
ceph: fix for masked upgrade failures and getting integrations running again
2019-04-08 17:11:32 -06:00
Blaine Gardner e26c908f59 roadmap: update for latest 1.0 triage
Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
2019-04-08 14:51:20 -06:00
karmab b6fd399f02 Set correct flexvolume dir for openshift4
We make sure to use the correct path for opc4 install

Signed-off-by: karmab <karimboumedhel@gmail.com>
2019-04-08 18:55:15 +02:00
Blaine Gardner 35e2fbe4e0 optest: wait longer for deployment image
The Ceph upgrade test is the only one which uses the
`WaitForDeploymentImage` method, and it has to be configured to wait
longer after upgrade at this point. Since the wait time is still
hard-coded, this method is moved to the operator's test dir to make
it clear that the method is suitable only for tests currently.

Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
2019-04-08 10:30:32 -06:00
Anton Skriptsov 15a3a26b08 Integration tests for EdgeFS
Signed-off-by: Anton Skriptsov <sabbotagge@gmail.com>
2019-04-08 05:00:01 -07:00
travisn 1f91eda58c ceph: add nautilus to the list of supported versions
Signed-off-by: travisn <tnielsen@redhat.com>
2019-04-07 00:03:29 -06:00
Travis Nielsen 69936c170c Merge pull request #2676 from colonwq/pr2660
Deleting CephObjectStoreUser does not delete secret
2019-04-05 11:44:00 -06:00
Travis Nielsen 7bac02b06a Merge pull request #2857 from phlogistonjohn/csi-one-oh
Ceph-CSI 1.0 support and integration doc update
2019-04-05 10:24:49 -06:00
Keith Schincke 878ef8ff00 Issue 2660: Deleting CephObjectStoreUser does not delete secret
When deleting a CephObjectStoreUser the deleteUser function
attempts to delete the stored secret using the wrong name. This
patch updates deleteUser to use the same fmt.Sprintf call used in
the createUser function.

Updated CI to delete the correct CRD and check the secret is deleted.

Signed-off-by: Keith Schincke <keith.schincke@gmail.com>
2019-04-05 10:52:15 -05:00
Travis Nielsen ef336964cd Merge pull request #2820 from travisn/yaml-refactor
Refactor the ceph cluster crd and related example yamls
2019-04-04 16:01:04 -06:00
travisn 5afcf98315 Documentation for the yaml refactor and example crds
Signed-off-by: travisn <tnielsen@redhat.com>
2019-04-04 12:42:08 -06:00
travisn aa8b9d7b9d helm test charts skip the role creation since included in the chart
Signed-off-by: travisn <tnielsen@redhat.com>
2019-04-04 12:42:08 -06:00
travisn eb74bf5547 Configure a cluster in the same namespace as the operator
To simplify the deployment of Rook, both the operator and cluster crd are now created in the
same namespace in the examples. By default the operator will only manage a cluster crd
in the same namespace instead of watching for clusters in all namespaces. To manage a cluster
in another namespace, the roles in latter half of operator-common.yaml need to point to the new
namespace and the operator env var ROOK_CURRENT_NAMESPACE_ONLY should be set to false.

Signed-off-by: travisn <tnielsen@redhat.com>
2019-04-04 12:42:08 -06:00
travisn ceb2be1aca refactor the ceph cluster crd and related example yamls
The RBAC is tedious to copy everywhere with the cluster.yaml and is confusing to newcomers.
The common resources are now factored into the operator-common.yaml for the common scenario
of creating a single cluster. Examples are now added for configuration of the operator
and cluster crds to provide a more complete set.

Signed-off-by: travisn <tnielsen@redhat.com>
2019-04-04 12:42:07 -06:00
Travis Nielsen 4a2669a3db Merge pull request #2928 from clook/fix-helm-chart-discover-toleration
Fix Helm Chart `DISCOVER_TOLERATION` binding
2019-04-04 12:35:14 -06:00
Travis Nielsen d984840677 Merge pull request #2930 from leseb/octopus-support
ceph: add support octopus version detection
2019-04-04 09:49:09 -06:00
Blaine Gardner 5c41da6705 ceph rgw: more robust update for selector change
Upgrading a Ceph objectstore was failing the upgrade test because the
existing method for handling the case where update errors occurred
because labels and label selectors have changed was not robust enough.
Make this more robust by attempting delete-and-create if a normal update
does not work on an rgw deployment.

Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
2019-04-04 09:02:09 -06:00
Sébastien Han f1f4bcccf7 ceph: add support octopus version detection
Now we are able to detect a Ceph Octopus version.

Signed-off-by: Sébastien Han <seb@redhat.com>
2019-04-04 11:37:41 +02:00
Olivier Cloirec 371c294096 Fix Helm Chart DISCOVER_TOLERATION binding
Bind to `.Values.discover.toleration` (instead of `agent`)

Signed-off-by: Olivier Cloirec <5033885+clook@users.noreply.github.com>
2019-04-04 08:25:48 +02:00
Travis Nielsen 5567cc8ee7 Merge pull request #2903 from rohan47/unhardcode
ceph: update env vars for ceph-mgr containers
2019-04-03 23:25:18 -06:00
Blaine Gardner a34fbaa594 ceph: update auth caps if get/create key fails
Update integration test suite fails on an error with getting the keyring
for the mgr. The mgr's cephx capabilities have changed and need to be
updated before get, create, or get-or-create can be called. Since other
daemons' caps may change in the future, make an attempt to update the
user's caps on any key generation. This makes the key generation more
declarative from within the operator code for individual Ceph daemons.

Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
2019-04-03 15:54:00 -06:00
Blaine Gardner feff587992 ceph: mon service forwards default bind port 6789
The Ceph mon flag `--public-bind-addr` does not keep the same port as
the previous daemon run when the port is left off the flag's value. A
port is undesired since that could interfere with Nautilus' msgr2
protocol, so instead configure the mon's services to forward the default
bind port on pods (6789) to the mon endpoint's port. The endpoint port
will be 6789 for new mons, but it may be 6790 for legacy clusters.

Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
2019-04-03 15:53:56 -06:00
rohan47 0ecce1015c ceph: update env vars for ceph-mgr containers
pass env vars with rook-ceph-system namespace and API version to
ceph-mgr containers to remove hardcoded values from rook orchestrator in
ceph-mgr and updated the unit tests for the same

Signed-off-by: rohan47 <rohgupta@redhat.com>
2019-04-04 02:11:44 +05:30
Blaine Gardner 7f26f4aa13 ceph spec tests: allow adding required env vars
Allow adding additional required environment variables on a situational
basis to Ceph's spec unit tests.

Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
(cherry picked from commit 94bf2a6e14b88a8e965b4ad5ce1289b606e5c32d)
2019-04-04 02:11:44 +05:30
travisn 6ec255e269 Avoid silent failure during upgrade integration test
Signed-off-by: travisn <tnielsen@redhat.com>
2019-04-02 17:48:47 -06:00
Alexander Trost ee308ec920 Merge pull request #2911 from noahdesu/dmcrypt-docs
ceph: add docs for encrypted devices
2019-04-02 23:06:04 +02:00
Noah Watkins 0d6c5fe032 ceph: add docs for encrypted devices
fixes: #2779

Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2019-04-01 16:19:16 -07:00
Alexander Trost 0e7dbe4086 Merge pull request #2456 from whereisaaron/patch-1
Document the RBD module prerequisite for Rook Ceph
2019-03-31 15:25:51 +02:00
Aaron Roydhouse b94bbf6f98 Document the RBD module prerequisite for Rook Ceph
The RBD module is an important prerequisite for Rook Ceph. It is mentioned as a possible problem on the Common Issues page, but that is the ambulance at the bottom of the cliff 😄. We should mention the perquisite for new users, tell them how to check, and note any major Kubernetes-as-a-service providers that do not have the RBD module.
https://rook.io/docs/rook/master/common-issues.html#rook-agent-rbd-module-missing-error

Signed-off-by: Aaron Roydhouse <aaron@roydhouse.com>
2019-03-31 02:42:20 -04:00