Skip to content

CephDeploymentMaintenance custom resource#

Cluster maintenance is an important part of a cluster lifecycle. The CephDeploymentMaintenance (cephdeploymentmaintenances.lcm.mirantis.com) custom resource (CR) allows you to properly handle cluster maintenance and control the states of a Ceph cluster and Pelagia controllers.

To obtain the current maintenance status, run the following command:

kubectl -n pelagia get cephdeploymentmaintenance -o yaml
Example CephDeploymentMaintenance resource
apiVersion: v1
items:
- apiVersion: lcm.mirantis.com/v1alpha1
  kind: CephDeploymentMaintenance
  metadata:
    creationTimestamp: "2026-06-16T12:36:57Z"
    generation: 1
    labels:
      app.kubernetes.io/created-by: pelagia-deployment-controller
      app.kubernetes.io/managed-by: pelagia-deployment-controller
      app.kubernetes.io/part-of: ceph.pelagia.lcm
    name: rook-ceph
    namespace: ceph-lcm-mirantis
    ownerReferences:
    - apiVersion: lcm.mirantis.com/v1alpha1
      kind: CephDeployment
      name: rook-ceph
      uid: df1e26ab-e324-418f-b623-8df318ea79df
    resourceVersion: "1210614"
    uid: d96a4e52-f6d4-457c-a12b-ab5ab909d6a5
  status:
    lastStateCheck: "2026-07-21T10:08:54Z"
    state: Idle
kind: List
metadata:
  resourceVersion: ""
  selfLink: ""

Out-of-the-box, Pelagia has no maintenance controller that controls the CephDeploymentMaintenance object. Therefore, to control maintenance using Pelagia, you must implement and use an environment-specific maintenance controller.

High-level status fields#

  • state - Current cluster maintenance state. Possible values are:

    • Idle - No maintenance in progress
    • Acting - Maintenance is in progress
    • Failing - Critical issues occur during maintenance
  • lastStateCheck - DateTime when the previous cluster state check occurred.

  • message - Additional information about the current maintenance state, if any.

Maintenance flow overview#

Pelagia controllers monitor the CephDeploymentMaintenance object state. When the CephDeploymentMaintenance object enters the Acting or Failing state, Pelagia controllers treat this as the cluster maintenance state and perform the following actions:

  • pelagia-lcm-controller - scales down the Rook Operator deployment to 0. Once the maintenance is completed, the controller scales the Rook Operator deployment back to 1.
  • pelagia-deployment-controller - stops CephDeployment reconciliation. Once the maintenance is completed, the controller continues CephDeployment reconciliation.