Commit Graph
607 Commits
Author SHA1 Message Date
Arun Kumar Mohan 2f195bbdfa Ceph: Added the missing double quotes in JSON output
Without the double quotes, operator is unable to parse the json output from the script

Signed-off-by: Arun Kumar Mohan <arun.iiird@gmail.com>
2020-05-29 02:01:55 +05:30
Sébastien Han c799e11032 ceph: enhancement cleanup with disks
Now, we can not only cleanup monitor data, logs and crashes but the
disks too. As part of the cleanupPolicy CR spec, we have a new setting
called sanitizeDisks which holds more details:

* confirmation: the confirmation message to sanitize disks,
use "yes-really-sanitize-disks" to confirm

This will **only** wipe the metadata, so it's a fast cleanup allowing
you to re-install later but won't remove all the data from the drive.

Signed-off-by: Sébastien Han <seb@redhat.com>
2020-05-27 18:14:02 +02:00
Travis Nielsen 0e328b5410 Merge pull request #5478 from leseb/rgw-cert-fix
ceph: change rgw certificate mode
2020-05-13 18:03:33 -06:00
Sébastien Han 5fffb76d24 op: add scc reminder
On Octopus cluster, we don't use the host PID anymore to run OSD so
adding a reminder to remove it later.

Signed-off-by: Sébastien Han <seb@redhat.com>
2020-05-13 18:14:14 +02:00
Sébastien Han 362086d16c script: add 2 new SC
* Clarify the helper for the run-as-user argument
* Add 2 new storage class and put the data so we stick with the same
pattern as the Secret and ConfigMap

Signed-off-by: Sébastien Han <seb@redhat.com>
2020-05-13 16:27:33 +02:00
Sébastien Han eeaac6d0da Merge pull request #5459 from leseb/ocp-op-settings
ceph: add missing op option for ocp
2020-05-12 11:24:17 +02:00
Sébastien Han 8a55006365 ceph: add missing op option for ocp
Resync with operator.yaml

Signed-off-by: Sébastien Han <seb@redhat.com>
2020-05-12 11:18:32 +02:00
Sébastien Han 1b44cf2f30 Merge pull request #5388 from aruniiird/externalClusterResourcesJSONOutputPython
Python script to generate needed external cluster resources in JSON format
2020-05-11 19:52:15 +02:00
Arun Kumar Mohan 23d2191147 ceph: Python script to generate needed external cluster resources in JSON format
This script will generate JSON format of all the needed resources.
Script can also generate the output in Shell script format.

Signed-off-by: Arun Kumar Mohan <arun.iiird@gmail.com>
2020-05-11 20:39:10 +05:30
Sébastien Han 36985defd9 ceph: fix import script csi details
The cephfs csi driver expects both adminID and adminKey instead of
userID and userKey which are only specific to rbd.

Closes: https://github.com/rook/rook/issues/5432
Signed-off-by: Sébastien Han <seb@redhat.com>
2020-05-11 10:57:04 +02:00
Sébastien Han 1a87d484de Merge pull request #5428 from travisn/test-pool-default-size
Set test default pool size to one
2020-05-11 09:47:25 +02:00
Madhu Rajanna e8a999daea CSI: fix typo in operator.yaml and operator-openshift.yaml
there was a typo in operator.yaml and operator.openshift.yaml
file for priorityclass , This PR fixes the typo.

Resolves #5442

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2020-05-09 08:46:21 +05:30
Travis Nielsen dc7802e369 ceph: set test default pool size to one
In test environments there may only be a single node, so we set
the default pool size in the test example to one.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-05-07 16:26:30 -06:00
Travis Nielsen f82a07d441 Merge pull request #5394 from Madhu-1/csi-prio
CSI: Set PriorityClassName for CSI pods
2020-05-06 07:08:54 -06:00
Madhu Rajanna ec3ab55d94 CSI: Set PriorityClassName for CSI provisioner pods
provide an option to set PriorityclassName on the
CSI provisioner pods to avoid pod eviction, as the CSI provisioner
pods a critical in system for storage. the default value
for the CSI provisioner pods is set to system-cluster-critical.

provisioner pods are less priority than plugin pods.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2020-05-06 15:45:06 +05:30
Madhu Rajanna cc6ec58891 CSI: Set PriorityClassName for CSI plugin pods
provide an option to set Priorityclassname on the
CSI plugin pods to avoid pod eviction, as the CSI plugin pods are
critical in system for storage. the default value
for the CSI plugin pods is set to system-node-critical.
more info can be found at
https://kubernetes.io/docs/tasks/administer-cluster/guaranteed-scheduling-critical-addon-pods/

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2020-05-06 15:45:01 +05:30
Sébastien Han cecbfcfba6 Merge pull request #5372 from leseb/obc-independent-mode
ceph: add support for OBC on external cluster
2020-05-06 10:30:15 +02:00
Sébastien Han 511f16ca70 Merge pull request #5401 from cybozu-go/cleanup-the-integration-test-and-remove-the-description-of-a-removed-feature
Cleanup the integration test and remove the description of a removed feature
2020-05-06 10:15:22 +02:00
Satoru Takeuchi 22c5743656 cleanup: remove the descriptions of directory-based OSD
Directory-based OSD is not supported in v1.3.0 anymore. Let's remove
the descriptions of this feature. As an exception, it should still
be in the manifests of v1.2.

Signed-off-by: Satoru Takeuchi <satoru.takeuchi@gmail.com>
2020-05-06 00:44:31 +09:00
Madhu Rajanna 73c74d8a42 CSI: Update CSI version to v2.1.1
cephcsi v2.1.1 is released with fix for xfs formatting
issue. This PR updates the cephcsi image version to
v2.1.1

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2020-05-05 13:08:23 +05:30
Sébastien Han b86bb9c528 ceph: add support for OBC on external cluster
We can now consume an external s3 endpoint which is not managed by Rook.

Signed-off-by: Sébastien Han <seb@redhat.com>
2020-05-04 18:14:26 +02:00
Sébastien Han 656240831c ceph: remove leftover rbd mirror in cluster.yaml
Since the rbd mirror has been extracted to its own CR, it does not exist
in cluster.yaml anymore.

Signed-off-by: Sébastien Han <seb@redhat.com>
2020-05-04 13:55:58 +02:00
Dmitry Yusupov 9b6c1ede66 Merge pull request #5360 from dyusupov/master
edgefs: provide a way to configure ADS
2020-04-29 09:27:56 -07:00
Travis Nielsen f8e884d2ce Merge pull request #5287 from Madhu-1/resource-limit-csi
CSI: Add resource request and limit for CSI pods
2020-04-29 08:09:19 -06:00
Madhu Rajanna 8bb7df8374 CSI: Update operator template for CSI resource
Updated operator and operator-openshift yaml files
for the CSI resouce requirements.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2020-04-29 10:26:56 +05:30
Madhu Rajanna a0270c57ea CSI: rename attacher sidecar name to follow other sidecar names
Renamed the csi attacher sidecar container name
to follow the nameing convention of other
sidecar containers of the CSI

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2020-04-29 10:26:56 +05:30
Dmitry Yusupov 2746b2edee edgefs: provide a way to configure ADS
Signed-off-by: Dmitry Yusupov <dmitry.yusupov@nexenta.com>
2020-04-28 14:58:40 -07:00
Sébastien Han bb3c6bdf47 Merge pull request #5343 from travisn/enable-pg-autoscaler
Enable pg_autoscaler module in default examples
2020-04-28 19:01:39 +02:00
Sébastien Han f27fd207ce ceph: convert the CephCluster controller to the controller-runtime
This is the final conversion to controller-runtime conversion. This time the
CephCluster CRD has been converted to use the controller-runtime
library.
The controller incorporates all the previous watchers too, so the Node
and hot-plug configmap are been watched too.
Only the operator setting configmap is not being watcher since it's not
related to the CephCluster CRD.
Not only the patch converts to controller-runtime but also tries to
re-organize the tree of the repo to actually make the code more
readable and have better functions/methods/tests separations.

Closes: https://github.com/rook/rook/issues/4939
Signed-off-by: Sébastien Han <seb@redhat.com>
2020-04-28 09:40:35 +02:00
Travis Nielsen d9ee447549 ceph: enable pg_autoscaler module in default examples
The pg_autoscaler is enabled by default in octopus. In nautilus
it was a new feature and was not enabled by default for that reason.
Now that the pg_autoscaler is more stable and is essentially
the same as the autoscaler in octopus, we can enable it by default.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-04-27 16:17:30 -06:00
Blaine Gardner 2bf340ff0b ceph: append 00 to rook-privileged PSP name
Adding seccomp annotations to the PSP has made Kubernetes start choosing
the recommended Kubernetes "default" PSP over the Rook privileged PSP,
causing operator start errors. Append 00 (double zero) to the beginning
of the PSP name to make sure it is one of the first PSPs checked by
Kubernetes and will be matched before the "default" one.

Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
2020-04-24 10:21:19 -06:00
Travis Nielsen af09c308df Merge pull request #5297 from binoue/update-helm-chart
ceph: update helm chart manifests
2020-04-23 13:40:50 -06:00
Travis Nielsen 946673f3e1 Merge pull request #5305 from travisn/cluster-test-example
Restore the cluster-test.yaml example
2020-04-23 10:16:35 -06:00
Travis Nielsen 5789c2b197 Merge pull request #5289 from Madhu-1/csi-v2.1.0
CSI: update cephcsi to v2.1.0
2020-04-23 07:49:23 -06:00
binoue 18cde4596c ceph: update helm chart manifests
Currently, helm chart is little outdated and has differences with
example/common.yaml.
This commit modifies both manifests to use same resources.

Signed-off-by: binoue <banji-inoue@cybozu.co.jp>
2020-04-23 14:21:32 +09:00
Travis Nielsen 9d01f92d2c ceph: restore the cluster-test.yaml example
The cluster-test.yaml example is useful for small test clusters
where only one mon is required and certain settings can be disabled
when not running in production.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-04-21 15:41:39 -06:00
Travis Nielsen f8ffd2c2eb ceph: toolbox job for running a ceph script
As another option to run Ceph commands, a script can be executed
with Ceph commands as if running in the toolbox, but will instead
run in a job where the logs can be collected and analyzed
separately. This would be useful where automation is in place to collect
information about the cluster periodically or upon some failure
that is detected, without requiring an interactive shell.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-04-20 15:48:59 -06:00
Madhu Rajanna 5684c4cc37 CSI: update cephcsi to v2.1.0
cephcsi v2.1.0 is released and doesnot need any deployment
template changes. This PR updates the cephcsi image
version to v2.1.0

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2020-04-20 14:58:25 +05:30
Sébastien Han 7c994441c3 ceph: make admin key optional for external cluster
Currently, we need to configure the Ceph external Admin keyi
in the Rook deployment to be able to connect to an external Ceph cluster.
If we wanted to run in a multi-tenant fashion
were several K8s/Rook clusters wanted to connect to the same external ceph cluster,
each K8s deployment would have the access to the External Ceph Admin key
and could potentially access or delete the Data
from pools that belong to other k8s/Rook Clusters.

Now the admin key is optional but the helper script create-external-cluster-resources.sh
will help create the necessary keys/users to connect to that cluster.

Closes: https://github.com/rook/rook/issues/4917 and https://github.com/rook/rook/pull/5227
Signed-off-by: Sébastien Han <seb@redhat.com>
2020-04-20 09:59:04 +02:00
Travis Nielsen 348690ea64 ceph: update defaults to the ceph v14.2.9 release
With the release of ceph v14.2.9 we set the default examples to this version.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-04-17 12:54:06 -06:00
Travis Nielsen 1c1591c847 Merge pull request #5261 from cybozu-go/missing-requiresafereplicasize
Ceph: Add requireSafeReplicaSize in CephObjectStore CRD
2020-04-16 10:44:46 -06:00
zoetrope babb55cc15 ceph: add requireSafeReplicaSize to CRD
add requireSafeReplicaSize field to CRD in upgrade-from-v1.2-crds.yaml and ceph_manifets.go

Signed-off-by: zoetrope <a.ikezoe@gmail.com>
2020-04-16 15:18:00 +09:00
Suraj Deshmukh 2f6205b2f6 PSP: Add seccomp annotations
This commit adds seccomp annotations to the PSP shipped with Rook
Operator. In this way the operator when deployed will be more secure and
will only be allowed the syscalls defined the runtime's seccomp profile.

Signed-off-by: Suraj Deshmukh <surajd.service@gmail.com>
2020-04-15 20:10:30 +05:30
zoetrope f00092de73 ceph: Add requireSafeReplicaSize in CephObjectStore CRD
Add requireSafeReplicaSize field in CephObjectStore CRD.

Closes: https://github.com/rook/rook/issues/5260
Signed-off-by: zoetrope <a.ikezoe@gmail.com>
2020-04-15 17:01:16 +09:00
Sébastien Han c1b8a7aa9e ceph: extract rbd-mirror to its own crd
Previously, the rbd-mirror daemon was integrated into the `CephCluster`
CRD. This wasn't really practical since we would have to wait for the
whole orchestration to be done to actually set it up. The same goes for
any CR update. Let's say you want to change the number of daemons, Rook
would go through mons, mgrs and osds until it get to rbd-mirror.
This triggers an undesired full orchestration.

With its own CRD this component just gains a lot more flexibility.

Closes: https://github.com/rook/rook/issues/5084
Signed-off-by: Sébastien Han <seb@redhat.com>
2020-04-15 09:12:56 +02:00
Dmitry Yusupov afd8398a6b Merge pull request #5165 from dyusupov/master
edgefs: support for SMB CRD
2020-04-03 14:18:14 -07:00
Dmitry Yusupov 4920202c10 edgefs: support for SMB CRD
Signed-off-by: Dmitry Yusupov <dmitry.yusupov@nexenta.com>
2020-04-03 13:15:14 -07:00
Travis Nielsen 948c0328bd Merge pull request #5162 from travisn/csi-v2.0.1
Enable the Ceph CSI v2.0.1 driver by default in Rook
2020-04-03 13:31:59 -06:00
Travis Nielsen b8e0d8902c Merge pull request #4077 from leseb/rook-multus
ceph: add multus support
2020-04-03 11:14:08 -06:00
Travis Nielsen b1825db09d ceph: install CSI driver v2.0.1 by default
With the release of the CSI v2.0.1 driver, this should now be the
default driver deployed by Rook. The minimum driver version
supported is still v2.0.0

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-04-03 11:08:19 -06:00