We must add the finalizer right after the object creation otherwise the
seerver will later return an error on update that the object has been
modified. Indeed, it has been by the task that updates the status when
the object is first created.
Signed-off-by: Sébastien Han <seb@redhat.com>
-creates a single PDB (max-unavailable=1) for all OSDs. This PDB allows one OSD to go down at a given time.
-When a drain is detected, blocking PDBs (max-unavailable=0) will be created for each failure domain that is not being drained and the main PDB (max-unavilable=1) will be deleted. This will allow all the OSDs in the currently drained failure domain to be removed while blocking the deletion of OSDs in other failure domains.
-Once the PGs are healthy again, the blocking PDBs will be deleted and the main PDB will be restored.
-Add PG healthcheck timeout
-Delete any legacy node drain pods and blocking OSD PDBs
Signed-off-by: Santosh Pillai <sapillai@redhat.com>
When we are done creating the partitions it's good to give the kernel
some time to reprobe the device and for udev to finish syncing up.
Signed-off-by: Sébastien Han <seb@redhat.com>
Permissions on the disk might changed due to the partitions being
created. So the CI user is not able to read the device correctly.
Closes: https://github.com/rook/rook/issues/6580
Signed-off-by: Sébastien Han <seb@redhat.com>
Now, we can schedule snapshots on pools from the CephBlockPool CR when
the pool is mirrored.
It can be enabled like this:
```
mirroring:
enabled: true
mode: pool
snapshotSchedules:
- interval: 24h # daily snapshots
startTime: 14:00:00-05:00
```
Multiple schedules are supported since snapshotSchedules is a list.
Signed-off-by: Sébastien Han <seb@redhat.com>
In a disaster recovery scenario, the mon service may have been
accidentally deleted, while the expected mon endpoint is still
found in the mon endpoints configmap. In this case, we create
the mon service with the same endpoint as previously.
Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
to run the integration test there needs
to be a few changes in manifests like using
`deviceFilter` and other related changes.
Signed-off-by: subhamkrai <srai@redhat.com>
as we are planning to move toward Github actions
for integration test. This commit runs ceph
suites using Github action.
Signed-off-by: subhamkrai <srai@redhat.com>
In the helm chart the CRDs are installed if crds.enabled is set to
true. If false, the helm chart will not install them. If changed
to false during an upgrade, the CRDs will be removed and the cluster
is destroyed. There is no way to prevent this while still being flexible
about CRD management, so we make the warnings as clear as possible.
Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
crds were factored out from the common.yaml file and helm chart. This PR updates the quick start guide to use crds.yaml file.
Signed-off-by: Santosh Pillai <sapillai@redhat.com>
Added the support of NAD from diffrent namespaces.
they can be referrenced as <namespace>/<name-of-nad> e.g.,
default/public-nw.
Updated the multus doc to explain the same.
Signed-off-by: rohan47 <rohgupta@redhat.com>
Cleanup Policy design doc is not up to date to with respect to latest implementation. This PR updates the design doc.
Signed-off-by: Santosh Pillai <sapillai@redhat.com>
On pull request with no code changes, the canary and integration tests
won't run. This means they won't appear in the status and mergify cannot
validate them.
Signed-off-by: Sébastien Han <seb@redhat.com>
Support ceph cluster and CSI on multus deployed in diffrent namespace.
Previously csi was looking for multus config from the cluster deployed
in the namespace in which rook-ceph-operator/csi was deployed.
Now it will look for multus configuration from ceph clusters from all
the namespaces.
Signed-off-by: rohan47 <rohgupta@redhat.com>
Allow filesystems with preservePoolsOnDelete to be used without errors.
A deprecation warning will still appear in the operator logs, but
existing cephfilesystem resources with preservePoolsOnDelete will still
be updated, and Rook will assume the new, preferred
preserveFilesystemOnDelete is set.
Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
We now allow mergify to auto-merge pull requests against the master
branch under the following conditions:
* all CI tests passed
* the PR has no label 'do-not-merge'
* the PR has the label 'ready-to-merge'
* has been approved by at least one maintainer
* has not requested changes
Signed-off-by: Sébastien Han <seb@redhat.com>
The CRs must be created in a separate kubectl create command
from the creation of the CRDs, otherwise the create command
will fail.
Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
Use common.yaml to apply changes to resources instead of keeping an
upgrade-*-apply.yaml file. Update the upgrade docs to reflect this also.
Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
The NFS reconciler was not updating NFS daemons that already existed.
The controller would fail to update daemons if the number of active
daemons did not increase or decrease.
Make sure existing NFS daemons are updated to new versions with all
scale up and scale down events.
Resolves#6611
Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>