Commit Graph
52 Commits
Author SHA1 Message Date
Maksim Nabokikh 179e1a310d ceph: Add dynamic flexvolume expansion
Allow to dynamic resize of rook volumes

Signed-off-by: Maksim Nabokikh <maksim.nabokikh@flant.com>
2019-09-05 02:40:22 +04:00
jiffin abe3678990 adding smoke test for bucket store
Signed-off-by: jiffin <thottanjiffin@gmail.com>
Signed-off-by: Jon Cope <jcope@redhat.com>
Signed-off-by: jeffvance <jeff.h.vance@gmail.com>
2019-08-22 19:54:44 -06:00
Blaine Gardner 9009326ad7 Integration tests: use 'kubectl apply' vs create
Some integration tests fail due to resources from a previous integration
run not being cleaned up properly. Instead of using 'kubectl create' --
which fails with an error if the resource already exists -- to create
resources, use 'kubectl apply' -- which does not fail for pre-existing
resources. 'kubectl apply' will give a warning that it should be used to
apply changes to resources created with 'create' or 'apply', but there
is no error.

Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
2019-08-13 15:03:39 -06:00
travisn ecdb55b2be ceph: correct code generation for plural CephNFSes
Signed-off-by: travisn <tnielsen@redhat.com>
2019-04-23 13:36:45 -06:00
Alexander Trost 8bc26d9096 k8sclient: Update all operators to use apps/v1
All usages of k8s go client are now also using the versioned `AppsV1() `
call for the client.

Updated MySQL and Wordpress, and Kube Registy examples to use apps/v1
Deployments.

Signed-off-by: Alexander Trost <galexrt@googlemail.com>
2019-04-12 09:25:42 +02: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
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
travisn 058ffe8adf integration test for ceph nfs daemons
Signed-off-by: travisn <tnielsen@redhat.com>
2019-03-20 15:15:36 -06:00
Blaine Gardner 086fa8231c rgw: configure entirely in operator
Configure the Ceph rgw daemon completely from the operator a la the
recent changes to the Ceph mon, mgr, and mds operators.

Create the rgw deployment or daemonset first, and then create the
keyring secret for the object store with its owner reference as the
corresponding deployment or daemonset. When the replication controller
is deleted, the secret is also deleted.

The RGW's mime.types file is now stored in a configmap with a different
file created for each object store. This is primarily just a means to
get the mime.types file into the rgw pod, but the added benefit is that
the administrator can modify the configmap, which could reduce
susceptibility to file type execution vulnerabilities (worst case).

Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
2019-03-07 08:02:42 -07:00
travisn b24ebc8168 tests: remove unnecessary string returns from kubectl calls
Various kubectl helper methods return strings from calls to
create, delete, or apply resources. There is no need for this.
It is sufficient and complete to check the err from these calls to determine failure.

Signed-off-by: travisn <tnielsen@redhat.com>
2019-03-01 16:16:41 -07:00
zhangyue 87b4f45fd9 test: add nfs with multi export integration test
Signed-off-by: zhangyue <zy675793960@yeah.net>
2019-02-28 09:02:52 +08:00
travisn a29b876337 rename ceph v1 crds with the ceph prefix
Signed-off-by: travisn <tnielsen@redhat.com>
2018-12-05 16:23:55 -07:00
travisn 62f7e5d6ea ceph: update docs, code, and tests to use v1 crd types
Signed-off-by: travisn <tnielsen@redhat.com>
2018-12-05 14:33:11 -07:00
Alexander Trost ac19f85fbb Allow specifying custom Ceph user and secret name for mounting
Introduce mount security mode for basic multi tenancy

Fixes #2164.

This adds three new parameters/options to StorageClass/flexvolume entry:
* `mountUser`
* `mountSecret`
* `mountSecretNamespace`

Signed-off-by: Alexander Trost <galexrt@googlemail.com>
2018-12-04 20:17:15 +01:00
Ben Zieglmeier 6d04bbf430 ceph: Add CRD for Object Store User
Add the ability to create and manage object store users with CRDs

Signed-off-by: Ben Zieglmeier <benjamin.zieglmeier@target.com>
2018-11-21 15:15:05 -06:00
travisn 06a2461cac cleanup some errors in integration tests
Signed-off-by: travisn <tnielsen@redhat.com>
2018-11-01 11:49:36 -06:00
Blaine Gardner 96f9a9c4ad ceph mds: allow mds deployment scale-down
fix #2193

Fix regression introduced by PR allowing MDS config creation in init
container. This allows the new deployment-based mds clusters to scale
down where currently they can only remain constant or scale up.

Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
2018-10-12 14:53:08 -06:00
Blaine Gardner ce803fbf9d Ceph mds/file: Set up config in init container
Progress toward issue #2003.
Includes design from design doc PR #1578

Use init containers to create configuration for Ceph mgrs. There is only
one init container in this design. The init container calls the Rook
binary to create Ceph config files which are then shared with the mds
daemon main container.

Once this init is run, the main mds daemon is run. Leaving room to use
the Ceph-versioned image in the future, call `ceph-mds --foreground ...`
to run the Ceph mds.

The refactor to using an init container also necessitated refactoring
the mdses replicaset implementation to a deployment-per-pod
implementation due to a chicken-egg problem. With a single container (in
the before times) the Rook binary was able to call the ceph-mds daemon
with an id generated from the pod name. Since the pod name is not known
before runtime, and the id is one of the few params that must be
specified to Ceph daemons on run, it is necessary to know the id
beforehand; thus the move to a deployment architecture following the
likes of the mon and mgr daemons.

Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
2018-10-05 19:01:12 -06:00
Ratnadeep Debnath 7ae2149961 Add support for storageclass' reclaimPolicy when creating PV.
Signed-off-by: Ratnadeep Debnath <rtnpro@gmail.com>
2018-09-14 10:05:34 +05:30
travisn f840e3574e mon: start a deployment instead of replicaset
Signed-off-by: travisn <tnielsen@redhat.com>
2018-09-01 00:12:42 -06:00
travisn 7dba506804 tests: refactor read and write
Signed-off-by: travisn <tnielsen@redhat.com>
2018-08-23 16:43:11 -06:00
travisn b2c039fc72 tests: refactor for adding an upgrade test
Signed-off-by: travisn <tnielsen@redhat.com>
2018-08-23 11:40:24 -06:00
rohan47 f31044b269 nfs: integration tests and scripts
Signed-off-by: rohan47 <rohanrgupta1996@gmail.com>
2018-08-22 10:34:40 +00:00
Blaine Gardner fe5fb394c7 Fix spellcheck and trailing space/newline issues
Fix some basic spellcheck errors. Also remove trailing spaces and make
sure files have a newline (my editor does automatically).

Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
2018-07-26 11:36:09 -06:00
Jared Watts 189e3eb611 ceph: migration logic for ceph.rook.io/v1alpha1 to ceph.rook.io/v1beta1, update all type references
Signed-off-by: Jared Watts <jbw976@gmail.com>
2018-07-11 09:23:46 -07:00
Jared Watts 0b8a8c2b65 cockroachdb: integration tests and scripts
Signed-off-by: Jared Watts <jbw976@gmail.com>
2018-06-18 19:19:15 -07:00
travisn 9f33ca2421 test: integration tests updates for multiple storage types
Signed-off-by: travisn <tnielsen@redhat.com>
2018-05-18 14:32:47 -07:00
travisn 0d685b9532 tests: volume attachment integration test logging
Signed-off-by: travisn <tnielsen@redhat.com>
2018-05-15 15:05:48 -07:00
travisn fc9118f7b2 remove support for k8s 1.6 and TPRs
Signed-off-by: travisn <tnielsen@redhat.com>
2018-05-08 10:09:38 -07:00
travisn b121357215 api: completed removal of api service
remove dependency of e2e tests on api service
remove the obsolete model package

Signed-off-by: travisn <tnielsen@redhat.com>
2018-03-16 08:31:34 -07:00
Jared Watts 8ef8718efb tests: integration test for flexvolume path discovery 2017-11-27 10:06:20 -08:00
Divesh Angula 700ace2647 adding long haul test for object store. 2017-11-16 16:22:32 -08:00
Travis Nielsen 66efebf28a tests: more efficient cluster creation and teardown 2017-10-27 14:37:56 -07:00
Divesh Angula b4ed758720 integration tests updates
- remove standalone references
   - fail test and gather logs if test setUp fails - not paniking anymore.
2017-10-18 15:47:06 -07:00
Jared Watts fe2ae89f37 Fix the multiple cluster integration tests by updating api/osd RBAC settings to be scoped to just a single namespace 2017-10-18 13:28:13 -07:00
Jared Watts d032222cfd osd: enable bluestore on directories 2017-10-18 13:28:13 -07:00
Steve Leon b4279e06fb Rook plugin for Kubernetes implemented as flexvolume
- Operator is deployed under namespace rook-system
- Operator deploys rook-agent on all nodes as daemonset also on
  rook-system
- Rook-agent installs flexvolume driver on hosts
- Rook-agent listens on unix socket for driver requests
- Rook-agent perform attach/detach on its node
- Rook-agent creates/delete CRD volumeattach objects
- Added fencing to support ROX and RWO
- Added unit and integration tests
- Updated examples and docks

fixes #432
2017-10-09 09:14:08 -07:00
Travis Nielsen ba628c6307 cephfs: create file system with a CRD
- multiple file systems are allowed
- multiple mds instances are allowed per file system.
- a keyring is created per mds instance
- double the desired mds instances are started, half in standby mode
2017-10-05 14:21:48 -07:00
Travis Nielsen 0a8d7b2e2c rgw: proper naming for the ObjectStore crd 2017-09-29 15:49:23 -07:00
Travis Nielsen a53f1b3990 tests: access rgw external port only when necessary 2017-09-20 09:43:55 -07:00
Travis Nielsen 4f4e08e1a5 tests: e2e test for creating the object store crd 2017-09-19 15:31:53 -07:00
Travis Nielsen 0553f6e512 rgw: support http and https ports both listening 2017-09-19 15:31:53 -07:00
Travis Nielsen dce1e97381 rgw: api support for multiple object stores 2017-09-19 15:31:53 -07:00
Travis Nielsen 748d8455aa rgw: support deleting an object store 2017-09-19 15:31:53 -07:00
Travis Nielsen ce997bbaf6 rgw: get configured object stores 2017-09-19 15:31:53 -07:00
Travis Nielsen c2f4aab89c rgw: object store crd creates a realm and rgw services 2017-09-19 15:31:53 -07:00
Divesh Angula 9e08afb015 creating tests for multi cluster rook install
- refactoring basic tests so they can be reused with different rook installations
2017-09-13 15:48:58 -07:00
Travis Nielsen 15809f4842 rgw: support pool config during object store creation 2017-09-06 16:55:23 -07:00
Divesh Angula da8fcaa623 refactor integration tests.
-rename tests following pattern area_functionalunit_platfrom_test.go
 -removing unused code
 -not accessing static test files
2017-07-27 12:01:16 -07:00
Travis Nielsen 0a78728f59 tests: k8s api client and more test logging 2017-07-20 23:30:32 -07:00