Commit Graph
641 Commits
Author SHA1 Message Date
taeuk_kim 2bd4b83d50 ceph: fix cephfs kernel comment in operator
Fix an ambiguous comment which explains about
CSI_FORCE_CEPHFS_KERNEL_CLIENT flag in operator.yaml.

Signed-off-by: taeuk_kim <taeuk_kim@tmax.co.kr>
2020-07-07 07:15:17 +00:00
Travis Nielsen 3af205d958 ceph: remove legacy target_size_ratio example
The target_size_ratio moved under the parameters element of
the pool settings. While the target size ratio is still supported
under the previous location for backward compatibility, the
example is preferred under parameters.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-07-06 14:45:21 -06:00
Travis Nielsen dbae36b2bb ceph: update to the latest octopus release
Update the base operator image and cluster examples to use the latest
octopus release v15.2.4. Also cleanup some old examples and unit tests
that were still based on mimic.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-07-06 12:11:47 -06:00
Travis Nielsen a11018d707 Merge pull request #5756 from thotz/upgradecrdsobjectstore
ceph: adding missing ceph object crds in upgrade-from-v1.3-crds
2020-07-06 11:24:56 -06:00
Ahmad Nurus S d324f15ec4 nfs: add kubebuilder marker and fix some documentation
Signed-off-by: Ahmad Nurus S <prksu.sh@gmail.com>
2020-07-03 14:33:36 +07:00
Ahmad Nurus S 90da5ec7b9 nfs: add validation admission webhook using controller-runtime
Signed-off-by: Ahmad Nurus S <prksu.sh@gmail.com>
2020-07-03 14:33:36 +07:00
Ahmad Nurus S f7f8270f58 nfs: rewrite nfs operator controller to use controller-runtime
Signed-off-by: Ahmad Nurus S <prksu.sh@gmail.com>
2020-07-03 14:33:25 +07:00
Jiffin Tony Thottan 33af005be1 ceph: adding missing ceph object crds in upgrade-from-v1.3-crds
Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
2020-07-03 12:09:10 +05:30
Sébastien Han e4eaa91ede ceph: add rgw endpoint healthcheck
We have introduced a new goroutine to check the state of the rgw
endpoint. It will run every minute and perform operations on a bucket.
The success or failure will be reported as part of the status field of
the CephObjectStore CR.

A good status will look like:

status:
  endpointStatus:
    lastChanged: "2020-06-25T13:47:45Z"
    lastChecked: "2020-06-25T13:48:46Z"
  phase: Connected

A failed status:

status:
  endpointStatus:
    details: |-
      error creating bucket "rook-ceph-internal-s3-bucket-checker": RequestError: send request failed
      caused by: Put http://rook-ceph-rgw-my-store.rook-ceph:8080/rook-ceph-internal-s3-bucket-checker: dial tcp 10.108.189.148:8080: connect: connection refused
    health: ERROR

This check works for both converged and external modes. Note that the
CephObjectStore CRD has a new field called "externalRgwEndpoints" which
allows you to define a list of IP addresses pointing to rgws.

Closes: https://github.com/rook/rook/issues/5692
Signed-off-by: Sébastien Han <seb@redhat.com>
2020-07-02 16:34:10 +02:00
Travis Nielsen f834a2d2b1 Merge pull request #5686 from Madhu-1/snapshot-beta
ceph: update ceph-csi snapshot from Alpha to Beta
2020-06-30 23:42:47 -06:00
Madhu Rajanna cc97b94953 ceph: add upgrade documentation for csi
as we are moving from alpha to beta snapshot,
we need to cleanup alpha resources to have successful
upgrade

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2020-07-01 07:20:04 +05:30
Madhu Rajanna 3f46b437c6 ceph: remove CSI_ENABLE_SNAPSHOTTER from CSI config
removed CSI_ENABLE_SNAPSHOTTER from the configuration
to enable or disable csi-snapshotter as snapshot
is moved to beta and enabled by default in kubernetes
1.17+

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2020-07-01 07:20:04 +05:30
Madhu Rajanna 02c9bfe00f ceph: update RBAC required for external-snapshotter
Updated the required RBAC for external-snapshotter
beta to work.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2020-07-01 07:20:04 +05:30
Madhu Rajanna 6699dba25a ceph: update sidecar images version
updated snapshotter from v1.x to v2.x
as its supports snapshot beta, the required
provisioner version to support snapshot beta
is v1.5.x+.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2020-07-01 07:20:04 +05:30
Madhu Rajanna 37ddeda7af ceph: remove snapshotter sidecar from provisioner sts
ceph-csi will be deployed as statefulset if the kubernetes
version is less than 1.14, as snapshotter will work
with kube 1.17+, we dont need snapshotter sidecar
deployed as part of statefulset.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2020-07-01 07:20:04 +05:30
Madhu Rajanna 9f596e4c9f ceph: update snapshot yaml as per snapshot beta
in kubernetes 1.17+ the snapshot CRD is changes
we need to update snapshot yaml file as per new CRD

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2020-07-01 07:20:04 +05:30
Madhu Rajanna e01cb7f527 ceph: update snapshotclass as per snapshot beta
few Parameters are changed in snapshotclass in
beta version.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2020-07-01 07:20:04 +05:30
Jiffin Tony Thottan e4fae54e3c ceph: run bucket provisioner in multithreaded mode
The latest lib-bucket provisioner library supports multithreading via
env "LIB_BUCKET_PROVISIONER_THREADS"

Closes: #4907
Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
2020-06-30 23:07:22 +05:30
Jiffin Tony Thottan da65670060 ceph: explain about port and target port in rgw-external.yaml
Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
2020-06-25 23:57:22 +05:30
Travis Nielsen 6c0d4057b3 Merge pull request #5045 from vbnrh/rook-admission-controller
ceph: Adding support for admission controllers
2020-06-25 09:56:39 -06:00
Anmol Sachan ff1a8ad31e ceph: updated PVC utilizaztion alerts
Updated warning and critical alerts for all the PVC's created by rook-ceph provisioners. Added the recommendation to expand the PVCs.

Closes: BZ1849717
Signed-off-by: Anmol Sachan <anmol13694@gmail.com>
2020-06-25 13:03:01 +05:30
Sébastien Han ebf74ceb68 Merge pull request #5685 from anmolsachan/pvc_alerts_1.2
ceph: added PVC utilization alerts
2020-06-25 09:05:29 +02:00
Vineet Badrinath ce1003aef8 ceph: adds scripts and components to support admission controllers
adds deploy.sh script to deploy validatingwebhookconfiguration and create secrets.
adds new command ceph admission-controller to start webhook servers.
adds validation for various rook custom resources

Signed-off-by: Vineet Badrinath <vbadrina@redhat.com>
2020-06-24 14:59:00 +05:30
Satoru Takeuchi c8c05ed7b9 ceph: fix the wrong document of tuneDeviceClass
The tuning parameter of slow device is defined as "tuneDeviceClass".
However, it's written in the document as "tuneSlowDeviceClass".

Signed-off-by: Satoru Takeuchi <satoru.takeuchi@gmail.com>
2020-06-24 00:31:14 +00:00
Anmol Sachan 624ca40817 ceph: added PVC utilization alerts
Added warning and critical alerts for all the PVC's created by rook-ceph provisioners. This is required to notify a admin timely to check on PVC utilization and take a required action to prevent workloads from failing.

Closes: BZ1849723
Signed-off-by: Anmol Sachan <anmol13694@gmail.com>
2020-06-23 21:06:59 +05:30
Anmol Sachan 7cebf15a7d ceph: added CephClusterReadOnly alert and updated utilization alerts
Added a new critical alert CephClusterReadOnly which notifies when the cluster becomes read-only
Updated the warning and critical alert to accomodate the new alert

Closes: BZ1809248
Signed-off-by: Anmol Sachan <anmol13694@gmail.com>
2020-06-19 14:07:51 +05:30
Sébastien Han 1e4a4b477a Merge pull request #5111 from leseb/lang-neutral-ceph
ceph: use octopus base image
2020-06-18 10:46:54 +02:00
Sébastien Han c7f255a0e8 ceph: add the ability to set any pool property
We can now explicitly set any property on a given pool by using the new
Property field in the CephBlockPool Spec.

Also, this fixes the case where both `CephBlockPool` and `CephCluster`
are created at the same time. When Rook creates the pool, the cluster is
still being bootstrapped and the global option
`osd_pool_default_pg_autoscale_mode` has not bee set yet. So the pool
gets created but its `pg_autoscale_mode` property is set to `warn`
instead of `on`.

Closes: https://github.com/rook/rook/issues/5608V
Signed-off-by: Sébastien Han <seb@redhat.com>
2020-06-17 10:08:00 +02:00
Sébastien Han 83acb5d91b Merge pull request #5657 from leseb/fix-ip-script
ceph: fix script IP parsing
2020-06-16 16:06:56 +02:00
Sébastien Han 82877f0c02 ceph: fix script IP parsing
The script wasn't allowing IPs like 192.168.0.2, 0 has part of the
subnet is valid.

Signed-off-by: Sébastien Han <seb@redhat.com>
2020-06-16 16:04:45 +02:00
Sébastien Han 6c5c726d14 ceph: use octopus base image
Since 1.3 will support both Nautilus and Octopus, let's use Octopus for
the base image. Newer images have retro-compatibility with older Ceph
versions.

Closes: https://github.com/rook/rook/issues/1765
Signed-off-by: Sébastien Han <seb@redhat.com>
2020-06-16 10:19:01 +02:00
UMEZAWA Takeshi 6085ff3223 ceph: add schedulerName property to storageClassDeviceSet
Support schdulerName to use another scheduler for OSD pod placement.

Closes: https://github.com/rook/rook/issues/5536
Signed-off-by: UMEZAWA Takeshi <takeshi-umezawa@cybozu.co.jp>
Signed-off-by: Masayuki Ishii <masa213f@gmail.com>
2020-06-12 11:53:28 +09:00
Ali Maredia fc579f4520 ceph: initial commit for ceph rgw multisite resources
This commit contains CR implementations for:
CephObjectRealm
CephObjectZoneGroup
CephObjectZone

Also there are changes made to the objectstore
to add rgws in the object-store to zones and
zone groups in a multisite configuration and
the removal of the --default parameter for any
realms/zonegroups/zones that are created.

Signed-off-by: Ali Maredia <amaredia@redhat.com>
2020-06-09 16:28:53 -04:00
Madhu Rajanna 09ccf55453 ceph: update cephcsi to v2.1.2
Cephcsi v2.1.2 is released with bug fixes,
refer https://github.com/ceph/ceph-csi/releases/tag/v2.1.2
for release details.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2020-06-05 14:43:05 +05:30
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