Commit Graph
7961 Commits
Author SHA1 Message Date
travisn af72af0633 add option to disable flex driver
The flex driver does not need to be started if
only the CSI drivers are going to be used. Therefore,
we allow the admin to stop launching the rook flex
agent with the setting ROOK_ENABLE_FLEX_DRIVER in
operator.yaml

Signed-off-by: travisn <tnielsen@redhat.com>
2019-08-07 10:01:26 -06:00
travisn 63e6029e82 remove csi default settings from yaml
The version of the csi driver to be installed that is officially
supported is the default baked into rook. If a different version
needs to be specified, it is officially unsupported. Therefore,
we leave the csi driver version settings unspecified in operator.yaml
so we can officially support the defaults.

Signed-off-by: travisn <tnielsen@redhat.com>
2019-08-07 10:00:55 -06:00
travisn 0a3fbf62f3 enable the ceph-csi driver by default
CSI is now the preferred storage driver for Rook.
By default both the CSI and flex drivers will be started
by the operator. In a future release the flex driver
will be deprecated, but for now is still supported.

The drivers can be disabled with an environment
variable in the operator deployment in operator.yaml.
If users are only using one driver or the other there is
no need to enable both drivers.

Signed-off-by: travisn <tnielsen@redhat.com>
2019-08-07 10:00:41 -06:00
Dmitry Yusupov 1f8bd1f431 Merge pull request #3571 from ethan-daocloud/patch-2
logging message typo fix
2019-08-06 10:44:36 -07:00
Dmitry Yusupov 8b3379f3c2 Merge pull request #3561 from sabbot/Additional-validation
Add validation and extra columns to EfgeFS CRDs
2019-08-06 10:43:43 -07:00
sabbot 11160a8720 Add validation and extra columns to EfgeFS CRDs
Signed-off-by: sabbot <sabbotagge@gmail.com>
2019-08-06 19:26:00 +03:00
giorgio076 dcd7c85a16 ceph: fix PSP allowedHostPaths syntax
If you try to uncomment items under 'allowedHostPaths:' and load the file you get an error.
Correct with right syntax, allowedHostPaths need pathPrefix

Signed-off-by: giorgio076 <51814334+giorgio076@users.noreply.github.com>
2019-08-06 08:13:26 +02:00
ethan 524c508f3b logging message typo fix
Signed-off-by: ethan <guangming.wang@daocloud.io>
2019-08-05 22:13:33 +08:00
Travis Nielsen 7fb43d72eb Merge pull request #3546 from noahdesu/mon-pvc
ceph: base monitor storage of pvc
2019-08-02 22:25:57 -06:00
Travis Nielsen ec3102a6e7 Merge pull request #3475 from noahdesu/ceph-mon-pv-design
design: ceph mon pv design
2019-08-02 22:07:52 -06:00
travisn bdeddd4995 add CephCluster RBAC to the osd service account
In order for the osd service account to reference the
cephcluster CR in the owner references, OpenShift requires
access to the CephCluster CRD. This adds the minimal changes
needed to appease OpenShift.

Signed-off-by: travisn <tnielsen@redhat.com>
2019-08-02 17:00:26 -06:00
Blaine Gardner 7944d1dc61 Merge pull request #3563 from travisn/collect-all-test-pod-logs
Tests: Collect all logs for pods in the integration tests
2019-08-02 16:39:27 -06:00
Noah Watkins fc1b494be8 design: ceph mon pv design
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2019-08-02 13:15:02 -07:00
Noah Watkins 4173c5544e ceph: base monitor storage of pvc
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2019-08-02 10:30:23 -07:00
travisn 1598a048a1 tests: collect all logs for pods in the test namespaces
Now we collect logs for all pods and all their init and main
containers during the integration tests. No longer will we be
missing logs from the integration tests as long as the pods
are available when they are collected at the end of the test.
The pod descriptions are also written to a log file instead
of being included inline with the test output.

Signed-off-by: travisn <tnielsen@redhat.com>
(cherry picked from commit 6e0bc338f90b3f36a89cf37b542ff4ff873b70bd)
2019-08-02 11:10:46 -06:00
Blaine Gardner 9af701c5dc Merge pull request #3213 from mvollman/per-osd-metadata
ceph: Add ceph-volume support for per OSD metdataDevices
2019-08-02 08:58:35 -06:00
Michael Vollman f3ef680298 ceph: Add support for per OSD metdataDevices
Add ceph-volume support for per OSD metdataDevices

Signed-off-by: Michael Vollman <michael.b.vollman@gmail.com>
2019-08-02 07:41:45 -04:00
Niels de Vos 5bf2d71ed8 ceph-csi: pass --pidlimit option to provisioners
The Ceph-CSI provisioners can hit a resource limit that is configured by
the container runtime (CRI-O restrict the number of processes/threads in
a container to 1024 by default). When there are spikes in the
provisioning, it is possible that the provisioners or helper executables
are not able to start new child processes, causing delays in the volume
creation or deletion.

A new --pidlimit command flag has been introduced with ceph/ceph-csi#517
and can be used to prevent the resource restrictions. This makes it
possible for the provisioners to stay responsive during spikes in the
requests.

The PID limit is configured to 'max' (value -1), but this can be adapted
to a (large) static value if needed.

See-also: https://github.com/ceph/ceph-csi/pull/517
Signed-off-by: Niels de Vos <ndevos@redhat.com>
2019-08-02 12:47:08 +02:00
Travis Nielsen 86cccaa554 Merge pull request #3538 from rohantmp/dynamicPDB
Ceph: Add design for managed poddisruptionbudgets.
2019-08-01 22:09:13 -06:00
Rohan CJ 733b76a523 Ceph: Add design for managed poddisrupionbudgets.
This design proposes that rook creates and manages PDBs for all ceph
daemons. OSDs need special treatment and a new heuristic, but simple
PDBs will suffice for other daemon types.

Signed-off-by: Rohan CJ <rohantmp@gmail.com>
2019-08-02 08:47:18 +05:30
Travis Nielsen 67502c2305 Merge pull request #3553 from noahdesu/mon-sched-valid-nodes
ceph: check that empty zone contains valid nodes
2019-08-01 14:31:07 -06:00
Sebastian Wagner 07d31f066b CephCluster CRD: Add resources to Storage Nodes
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
2019-08-01 14:57:19 +02:00
Noah Watkins 7ef4ff63ac ceph: check that empty zone contains valid nodes
a helper flag indicating the exitence of an empty zone (empty = no
monitor pods) is computed when checking the health of the cluster in
order to determine if mons from overloaded zones have some new location
they can be scheduled. the computation of this flag did not check that
the empty zone contains valid nodes that pods can be scheduled on to.
this lead to a mon creation loop.

fixes: #3545

Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2019-07-31 14:34:24 -07:00
Noah Watkins df20c7da17 ceph: shush device discovery log messages
fixes: #3483

Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2019-07-31 14:34:24 -07:00
Travis Nielsen 69a6fdf279 Merge pull request #3551 from AllenZMC/patch-1
fix word `ressource` to `resource`
2019-07-31 10:14:28 -06:00
AllenZMC 4616f17a26 fix word ressource to resource
Signed-off-by: czm <zhongming.chang@daocloud.io>
2019-07-31 20:53:33 +08:00
Sebastian Wagner cf19f2ad80 CRDs: Add some more validations
* Extend CephCluster
* Add validation for CephFilesystem,
* Add validation for CephNFS
* Add validation for CephObjectStore
* Syncronozed the validation of all three copies

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
2019-07-31 09:23:22 +02:00
Blaine Gardner 1b6fe840f6 Merge pull request #3460 from umangachapagain/servicemonitor-fix
fix Prometheus permissions and servicemonitor configurations
2019-07-30 11:05:12 -06:00
Blaine Gardner 9f7dbb85d8 Merge pull request #3527 from SUSE/remove-osd-copybins
ceph: osd use copy-binaries top level cmd
2019-07-30 09:41:03 -06:00
Travis Nielsen e5779f79d5 Merge pull request #3533 from ethan-daocloud/patch-1
cleanup: fix log message mis-spelled words
2019-07-29 11:14:37 -06:00
Blaine Gardner 55a726fda9 ceph: osd use copy-binaries top level cmd
Replace usage of the custom osd copybins command with the new top-level
copy-binaries command introduced with cmd-reporter.

Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
2019-07-29 09:23:45 -06:00
Travis Nielsen 0acdf9a4f1 Merge pull request #3532 from zgfh/patch-1
fix misspelling in bug_report.md
2019-07-27 07:25:02 -06:00
Alan aeb47eaf52 fix misspelling in bug_report.md
Signed-off-by: alan <zg.zhu@daocloud.io>
2019-07-27 15:47:17 +08:00
Travis Nielsen d50c9ef3bf Merge pull request #3530 from renekalff/fix-k8s-ownerreferences
Ceph (and EdgeFS?) cluster is being deleted after K8S cluster restart or api/etcd issues
2019-07-26 18:33:16 -06:00
René Kalff 25780878eb Make the ownerreference name match the cluster name referenced
In order to cleanup all cluster resources in case of cluster deletion
all resources have an ownerreference to the cluster crd instance.
Because the name of the reference was incorrectly set to the name of the
namespace the cluster resources can unintentionally be deleted by the
kubernetes garbage collector after a kubernetes cluster anomaly.

Signed-off-by: René Kalff <r.kalff@intermax.nl>
2019-07-26 18:33:38 +02:00
Travis Nielsen 81dde4b381 Merge pull request #3528 from phlogistonjohn/jjm-csi-new-template-changes
ceph csi: add new required tempfs mounts to csi templates
2019-07-26 10:00:43 -06:00
Dmitry Yusupov dde1b9114c Merge pull request #3516 from NullOranje/edgefs-configurable-servicetypes
EdgeFS: Allow control over K8s service type via CRD
2019-07-26 07:58:12 -07:00
ethan 3a6bef33df cleanup: fix log message mis-spelled words
Signed-off-by: ethan <guangming.wang@daocloud.io>
2019-07-26 16:40:48 +08:00
Umanga Chapagain d30c06860d fixes permissions and servicemonitor configurations
this adds the access for rook to create monitoring resources
across namespaces and provides servicemonitor config to
monitor the current service being created

Signed-off-by: Umanga Chapagain <chapagainumanga@gmail.com>
2019-07-26 10:53:18 +05:30
John Mulligan 57c663c0c1 ceph csi: add new required tempfs mounts to csi templates
Ceph CSI now requires a tempfs mountpoint and will not function without
it. These changes are cloned from the ceph csi yaml.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
2019-07-25 16:43:08 -04:00
Nick McKinney d9aec6bad6 Allow control over K8s service type via CRD
Signed-off-by: Nick McKinney <nmckinney@breakpoint-labs.com>
2019-07-25 15:49:18 -04:00
Blaine Gardner 6d2ef93669 Merge pull request #3443 from SUSE/nfs-refactor
Ceph NFS: use new config
2019-07-25 09:39:50 -06:00
Travis Nielsen 1bf5118c7f Merge pull request #3514 from Madhu-1/fix-csi-deployment
update ceph-csi templates
2019-07-24 21:21:52 -06:00
Travis Nielsen 180b3db759 Merge pull request #3509 from travisn/simplify-cluster-status
Simplify CR status updates for Ceph and EdgeFS
2019-07-24 15:48:50 -06:00
Travis Nielsen 91d2f95f34 Merge pull request #3224 from mvollman/ceph-vol-md-fail
ceph: fail when metadataDevice not used by cephvol
2019-07-24 15:27:27 -06:00
travisn 3142c3e5cb simplify CR status updates for ceph and edgefs
The status messages on the CRs had much duplicated code
for logging an error if the status update failed.
Now any failures around the status update are logged
consistently within the updateClusterStatus method
so there is no need to return an error and duplicate
the error handling everywhere.

Signed-off-by: travisn <tnielsen@redhat.com>
2019-07-24 12:52:30 -06:00
Travis Nielsen 35e2943ec8 Merge pull request #3513 from leseb/mgr-uid-cephfs
ceph: mgr fix startup
2019-07-24 12:39:40 -06:00
Madhu Rajanna f95929da16 update csi template
ceph-csi https://github.com/ceph/ceph-csi/pull/457

made deployment template changes and also
removed node publish secrets and added not
stage secrets.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2019-07-24 22:27:56 +05:30
Sébastien Han e52efdb8d4 ceph: mgr fix startup
Because the manager is running under the 'ceph' user the cephfs
subvolume plugin can not create directories anymore. It fails with a
permission denied because of the usage of the 'ceph' user, root is need
here, hence the special startup line to go over this.

Closes: https://github.com/ceph/ceph-csi/issues/486
Signed-off-by: Sébastien Han <seb@redhat.com>
2019-07-24 17:47:43 +02:00
Sébastien Han 72b9ec3a0c Merge pull request #3507 from travisn/minikube-1.15
Update minikube script to 1.15.1
2019-07-24 07:49:22 +02:00