Commit Graph
7961 Commits
Author SHA1 Message Date
Sébastien Han e96dc646a2 rook: add ExecuteCommandWithEnv
We can now execute commands and pass env variables to the executor.

Signed-off-by: Sébastien Han <seb@redhat.com>
2020-03-20 17:37:58 +01:00
Travis Nielsen 9edf205c37 Merge pull request #5035 from leseb/file-crd-controller-runtime
ceph: convert Filesystem controller to the controller-runtime
2020-03-19 18:25:41 -06:00
Sébastien Han ca0a30f38d ceph: convert Filesystem controller to the controller-runtime
The CRD watcher has been replaced by the new controller-runtime
framework.
This brings robustness in our operator, meaning that any resources that
are modified will be reconciled into the desired state.

Closes: https://github.com/rook/rook/issues/4940
Signed-off-by: Sébastien Han <seb@redhat.com>
2020-03-19 23:34:58 +01:00
Travis Nielsen d9a1ea502e Merge pull request #5054 from PCatinean/master-doc-update-helm-upgrade-path-pc
ceph: mention helm upgrade path for csi driver
2020-03-19 12:07:53 -06:00
Paul Catinean 6cd49153ad ceph: mention helm upgrade path for csi driver
Update documentation to mention helm chart upgrade path for csi driver.

This prevents the user from manually applying the RBAC roles when the helm chart does it for him also notifies him where to set the images for CSI in the helm chart.

Signed-off-by: Paul <paulcatinean@gmail.com>
2020-03-19 18:07:33 +01:00
Sébastien Han 7caedefb4f Merge pull request #5039 from travisn/bulk-cleanup
Logging and exec package cleanup
2020-03-19 16:54:19 +01:00
Sébastien Han cc647e870a Merge pull request #5051 from leseb/stop-dep-watch
ceph: child controller-runtime stop watching for deployment
2020-03-19 16:52:43 +01:00
Travis Nielsen b5d20fc383 Merge pull request #5050 from krig/clarify-error
ceph: Make error unique when OSD on PVC fails to initialize
2020-03-19 08:32:44 -06:00
Sébastien Han d3d4cd2f20 ceph: child controller-runtime stop watching for deployment
The bump from 0.2 to 0.4 controller-runtime versions which happened
during the use of Go Modules (bumping Go version to 1.13) introduced an
issue where the deployment annotations keep getting changed during
watch update event.
The easy fix is to stop watching Deployment objects for now.

Signed-off-by: Sébastien Han <seb@redhat.com>
2020-03-19 15:19:23 +01:00
Sébastien Han 84dccb0d2c Merge pull request #5044 from travisn/monitoring-openshift-doc
Document monitoring namespace for OpenShift
2020-03-19 15:07:37 +01:00
Travis Nielsen 4a2ca1c1ef ceph: enable debug logging in the osd prepare job
All processes created with the exec package will now only have debug logging
for the commands and their output. The osd prepare job relies heavily
on many of these commands so we can enable debug logging for the entire
job.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-03-19 07:49:54 -06:00
Travis Nielsen e8f9cfcb71 exec: always write commands to debug log
Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-03-19 07:49:54 -06:00
Travis Nielsen f2ecaa2bda exec: remove the unused actionName param
The helpers for executing a process have long required an actionName
param which is not being used. Now we remove the old param
while also cleaning up various other usages of the exec
package.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-03-19 07:49:53 -06:00
Travis Nielsen 84b8cdcf75 exec: simplify the exec package from unused methods and logging
The methods and arguments to the exec methods are not all used anymore.
This cleans up the methods to only what is necessary to improve
the readability and maintainability.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-03-19 07:49:53 -06:00
Travis Nielsen 18b0e7d295 ceph: scrub ceph commands to write actions to the log
The ceph commands are now only written to the log in debug mode.
For commands that change the system state we now ensure that
a useful log entry is written. If all the details of the ceph
commands are needed, debug logging should still be enabled.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-03-19 07:49:53 -06:00
Travis Nielsen 7d2811bfb6 ceph: remove obsolete ipv4 command line flags
Long ago the ipv4 flags were renamed to public-ip and private-ip
so we can go ahead and remove the obsolete flags.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-03-19 07:49:53 -06:00
Travis Nielsen 0344074c82 ceph: remove dead code for process management
Rook no longer relies on its own process management, now we can rely
completely on Kubernetes to manage the pod lifecycle. The code
to check for running processes and replacement them hasn't been
used for a long while.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-03-19 07:49:53 -06:00
Kristoffer Grönlund f49ad5ad33 ceph: Make error unique when OSD on PVC fails to initialize
To make debugging easier, make sure each error path has
a unique message.

Signed-off-by: Kristoffer Grönlund <kgronlund@suse.com>
2020-03-19 09:46:13 +01:00
Travis Nielsen 695dc4fbd4 Merge pull request #5008 from sp98/design-cluster-cleanup
Design for ceph cluster clean up
2020-03-18 12:07:29 -06:00
Travis Nielsen a988dd23ae ceph: document monitoring namespace for OpenShift
OpenShift requires the monitoring to be bound to the openshift-monitoring
namespace instead of the rook default

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-03-18 11:55:07 -06:00
Satoru Takeuchi a5ea2858c9 manifests: remove unnecessary namespace fields
There are many namespace fields in ClusterRole{,Binding}. However,
ClusterRole{,Binding} are not namespaced. So we can remove these.

Signed-off-by: Satoru Takeuchi <satoru.takeuchi@gmail.com>
2020-03-18 15:58:31 +00:00
Sébastien Han 26999b7fe4 Merge pull request #5042 from leseb/size-1-pacific
ceph: allow size option on pacific only
2020-03-18 16:37:07 +01:00
Sébastien Han 39a976cb15 Merge pull request #5040 from birkb/master
LVM infos for RancherOS added to Ceph docs
2020-03-18 15:28:45 +01:00
Travis Nielsen 5702d29a3c Merge pull request #5033 from leseb/clarify-block-pool
ceph: update pool.yaml with more options
2020-03-18 08:28:24 -06:00
Birk Bohne 340ba66959 ceph: LVM infos for RancherOS added to Ceph docs
- RancherOS does not activate logical volumes during boot by default
- This breaks the Ceph OSD recovery, because the LV will not be found
- This Ceph docs update describes the needed RancherOS change

Closes: https://github.com/rook/rook/issues/5027
Signed-off-by: Birk Bohne <birk@batchworks.de>
2020-03-18 15:26:15 +01:00
Sébastien Han 9f7745e8e7 ceph: update pool.yaml with more options
Expose:

* crushRoot
* deviceClass

To the example pool.yaml for awareness.

Signed-off-by: Sébastien Han <seb@redhat.com>
2020-03-18 15:22:27 +01:00
Sébastien Han 31fa13c824 Merge pull request #4530 from rajatsingh25aug/cephObjectStore
Ceph: ObjectStore replica size will not change
2020-03-18 15:18:59 +01:00
Sébastien Han 66b561e45b ceph: allow size option on pacific only
This flag only exists in Pacific, not Octopus.

Signed-off-by: Sébastien Han <seb@redhat.com>
2020-03-18 15:12:06 +01:00
Sébastien Han 08dad79832 Merge pull request #5038 from travisn/design-docs-cleanup
Design docs cleanup
2020-03-18 10:51:36 +01:00
Travis Nielsen 14a713107a Merge pull request #4997 from leseb/object-store-crd-controller-runtime
ceph: convert the Ceph ObjectStore controller to the controller-runtime
2020-03-17 20:12:06 -06:00
Travis Nielsen ce1fedf884 ci: only list the images in the needed pool during cleanup
The pool cleanup only needs to happen for an individual pool.
No need to query the block images in all pools. One of the rgw
pools is periodically causing a hang when it is queried,
but there is no need to query for it when we are cleaning
up the pool tests.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-03-17 15:28:17 -06:00
Sébastien Han a8159c62c1 ci: enable DEBUG logging
Activate DEBUG logging for the integration tests.

Signed-off-by: Sébastien Han <seb@redhat.com>
2020-03-17 15:12:41 -06:00
Sébastien Han e3b3aa7702 ci: bump upgrade to 1.2.6
Let's upgrade from 1.1.9 to 1.2.6

Signed-off-by: Sébastien Han <seb@redhat.com>
2020-03-17 15:12:41 -06:00
Sébastien Han 44a4c1826d ci: remove object store when done
Purge the object store properly, otherwise the cephobjectstore CRD won't
be deleted since a finalizer is in place for the CR.

Signed-off-by: Sébastien Han <seb@redhat.com>
2020-03-17 15:12:41 -06:00
Sébastien Han f268c897e9 ceph: Convert the Ceph ObjectStore controller to the controller-runtime
The CRD watcher has been replaced by the new controller-runtime
framework.
This brings robustness in our operator, meaning that any resources that
are modified will be reconciled into the desired state.

Closes: https://github.com/rook/rook/issues/4937
Signed-off-by: Sébastien Han <seb@redhat.com>
2020-03-17 15:12:41 -06:00
Sébastien Han 711ec6095b ceph: controllers just log status error
Let's return the original error instead and just log the status change
error.

Signed-off-by: Sébastien Han <seb@redhat.com>
2020-03-17 15:12:15 -06:00
Sébastien Han b3a61bf4b9 ceph: more precise watcher object user controller
Only watch and react on resources that are matching the Kind of
CephObjectStoreUser.

Signed-off-by: Sébastien Han <seb@redhat.com>
2020-03-17 15:12:15 -06:00
Travis Nielsen f79bc3d6a0 noobaa: remove design docs due to inactivity
The NooBaa operator was proposed for addition to Rook, but
the team went a different direction and created an independent
operator. Removing the stale docs.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-03-17 14:30:56 -06:00
Travis Nielsen 2708eb457e ozone: move design doc to a subfolder
For consistency with the design docs, move the Ozone
design docs to a subfolder.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-03-17 14:30:56 -06:00
Travis Nielsen 8c2c257b34 Merge pull request #4984 from moricho/gomodules
Move to Go Modules
2020-03-17 13:26:11 -06:00
moricho c11d3d1cc9 codegen: modify codegen.sh to work correctly for go modules
This modify codegen.sh to work correctly.
`make codegen` temporarily download code-generator into vendor directory and use it
to refer to the local version of rook.

Signed-off-by: moricho <ikeda.morito@gmail.com>
2020-03-18 00:37:23 +09:00
RAJAT SINGH 3d6d14ea73 cephObjectstore: Replica size will not change
The pool size for cephObjectStore (object.yaml), was not getting updated in the cluster upon changing.The reason being that there was an "else" case missing to update  the replica size if the pools already existed. That will fix this issue.

Signed-off-by: RAJAT SINGH <rajasing@redhat.com>
2020-03-17 19:23:28 +05:30
Sébastien Han 4ae313f024 Merge pull request #4992 from travisn/doc-clarifications
Restructure prerequisites and clarify ceph docs
2020-03-17 09:07:12 +01:00
moricho 7d0215d820 ci: switch to use go.mod.check target
This switches to use `go.mod.check` target instead of `go.vendor.check` target.

Signed-off-by: moricho <ikeda.morito@gmail.com>
2020-03-17 16:48:43 +09:00
moricho 437a0b1d9b go: versionup sig-storage-lib-external-provisioner/controller
version up sig-storage-lib-external-provisioner/controller to v4.1.0 and
modify related files

Signed-off-by: moricho <ikeda.morito@gmail.com>
2020-03-17 16:47:55 +09:00
moricho 8907e220ea apis: regenerate files & modify k8sutil tests
This regenerate files with code-generator/deepcopy-gen and modify the related tests.

Signed-off-by: moricho <ikeda.morito@gmail.com>
2020-03-17 16:47:53 +09:00
moricho 2beb731a7e go: move to gomodules
This switches Rook to use `go mod` instead of `dep` for
dependencies management.

Signed-off-by: moricho <ikeda.morito@gmail.com>
2020-03-17 16:47:53 +09:00
Travis Nielsen cd4c77fa7d docs: update ceph toolbox to match example yaml
The ceph toolbox no longer needs mounts to /dev and /udev. The
docs had not previously been updated with this change.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-03-16 15:15:44 -06:00
Travis Nielsen a251959061 docs: restructure prerequisites and clarify ceph docs
The docs were in need of some restructuring wrt prerequisites. They
were mingled with general k8s and Ceph requirements. For clarity,
we need to separate the ceph prereqs from general k8s requirements.

There is now only a single prereqs page. All other topics should be
found under other sections, such as specific to Ceph. Having subtopics
under the general prereqs caused users to frequently not even notice
the main prereqs topic.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-03-16 15:15:44 -06:00
Travis Nielsen 2c70e10bd6 docs: add cluster-on-pvc and remove cluster-minimal examples
The cluster-minimal.yaml example is more confusing than helpful. Most users
seem to think that minimal includes a fully working cluster with OSDs.

The cluster-on-pvc.yaml example is frequently used and was missing from the
examples doc.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-03-16 15:13:56 -06:00