In order to ensure proper clean up of all the rook-ceph data when the cluster is deleted, we need to clean up the dataDirHostPath (var/lib/rook)
Signed-off-by: Santosh Pillai <sapillai@redhat.com>
In order to perform full automation of cephcluster deletion safely
and protect against catastrophic data loss, the end user must be
able to signify that they intend to irrecoverably delete the data
in their cluster. The cleanupPolicy field of the cluster spec is
intended to communicate this. This patch does not implement
automated deletion, but only creates the spec field and the
safety feature of halting orchestration other than deletion on a
cluster with a set cleanup policy value.
Partially-fixes: #3222
Signed-off-by: Elise Gafford <egafford@redhat.com>
"comment" here should mean the comments of `pg_autoscaler`
in cluster/examples/kubernetes/ceph/cluster.yaml. However, it's
ambiguous. It's straightforward to use "add".
Signed-off-by: Satoru Takeuchi <satoru.takeuchi@gmail.com>
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>
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>
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>
- 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>
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>
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>
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>
The documentation for Ceph configuration needed some
clarification and cleanup from options that are no longer needed
or apply.
Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
This configuration is required when using the flex CSI driver (required for K8s 1.12
or earlier). Going forward for K8s 1.13 and newer it is recommended to use the CSI
RBD driver, making Flexvolume configuration redundant.
Co-authored-by: Ran Rubin <ranrubin@gmail.com>
Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
Setting up the topology for the CRUSH map was outdated in the EC doc.
Now a link to the node labels is provided for the configuration.
Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
Current YugabyteDB operator code creates Master and TServer pods without any resource requests/limits (specifically CPU and memory).
This causes the operator to run into soft/hard memory limit issue. The fix adds recommended resource requests and limits as defaults to the pods it creates.
Closes: https://github.com/yugabyte/yugabyte-db/issues/3884
Signed-off-by: Sameer Kulkarni <samkulkarni20@gmail.com>
The OSDs pick up on several topology labels for CRUSH hierarchy.
The GA label topology.kubernetes.io was partially implemented, but
not picked up by the OSDs. Now the OSDs will pick up both the topology
labels from pre-1.17 such as failure-domain.beta.kubernetes.io/zone
and topology.kubernetes.io/zone.
Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
OSD placement is not controlled with the Cluster CRD placement
key, but with a storage class specific placement key. The
cluster-wide placement rules are not merged into the OSD placement
rules.
This change reflects this fact in the documentation.
[skip ci]
Closes: https://github.com/rook/rook/issues/4882
Signed-off-by: Jonas Schäfer <jonas.schaefer@cloudandheat.com>
The .metadata.generation field is updated if and only if the value at the .spec subpath changes.
Additionally, if the spec does not change, .metadata.generation is not updated.
This is a must-have for the controller-runtime work, if we don't have
this, the generation field will always be incremented, resulting in a
endless reconcile loop.
Signed-off-by: Sébastien Han <seb@redhat.com>
Checks the version of the configured ceph-csi image while starting the operator. The operator will fail if the image is not supported.
Added an additional parameter to operator to disable the check e.g. to test not yet supported csi images.
Signed-off-by: Stefan Haas <shaas@suse.com>
As of Octopus, Ceph will prevent you from creating a pool with a
replica size of 1. Allowing such pool could lead to data loss, so enable
the new option: requireSafeReplicaSize: false if you are **ABSOLUTELY**
certain that is what you want.
Closes: https://github.com/rook/rook/issues/4889
Signed-off-by: Sébastien Han <seb@redhat.com>
The ceph/ceph:v14.2.7 image is released so we can pick these fixes
up as the recommended version of ceph.
Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
The `cephVersion` was missing in the PVC based Ceph Cluster example.
Otherwise the Ceph Cluster would fail to be created due to no Ceph
version being specified.
Signed-off-by: Alexander Trost <galexrt@googlemail.com>
We now support the addition of the PVC that acts as a metadata device
for a given OSD.
For this, you need to create a new `volumeClaimTemplates`, its name must
be "metadata" otherwise, Rook won't pick it up.
A template will look like this:
```
volumeClaimTemplates:
- metadata:
name: data
spec:
resources:
requests:
storage: 10Gi
# IMPORTANT: Change the storage class depending on your environment (e.g. local-storage, gp2)
storageClassName: gp2
volumeMode: Block
accessModes:
- ReadWriteOnce
- metadata:
name: metadata
spec:
resources:
requests:
storage: 6Gi
# IMPORTANT: Change the storage class depending on your environment (e.g. local-storage, gp2)
storageClassName: gp2
volumeMode: Block
accessModes:
- ReadWriteOnce
```
We now map block and block.db directly inside the container instead of
running ceph-volume activate. This is much cleaner.
Closes: https://github.com/rook/rook/issues/3852
Signed-off-by: Sébastien Han <seb@redhat.com>
This fixes the StorageClass name example and doc to be `rook-cephfs`
instead of just `csi-cephfs`.
Closes#4130.
Signed-off-by: Alexander Trost <galexrt@googlemail.com>
Currently there is no option to turn on and off the
log level verbosity in csi containers, This PR adds
the functionality to select logging levels for csi containers.
Fixes: #4690
Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
This commit clarifies the Kubespray section (which changed as of v2.11.0 and newer to use the kubelet default plugin directory)
This commit also rearranges the flow of the document to make more sense and be easier to jump straight to the relevant platform-specific section: adding anchor links for the platforms having special instructions on this page. Links to the platform's home page/docs page were moved to a "see also" as they may not be as relevant to someone already having deployed their cluster using it.
Signed-off-by: Dennis Field <fury@xibase.com>
In ceph-csi v2.0.0 added a support for specifing
the erasure coded pool in storageclass which will be
used to store data.
Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
external-attacher v2.x is not compatible with v1.x
This PR makes the require changes in csi templates
and upgrade documentation for easily upgrade
Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
Ceph recently changed its default PG count in
https://github.com/ceph/ceph/pull/32788, it also changed from 8 to 16
then 16 to 32. So let's remove the 8 PGs mention which is incorrect.
Signed-off-by: Sébastien Han <seb@redhat.com>