# maintenance

Cluster maintenance and recovery APIs.
Set management node URL:

# POST /maintenance/osd/{osdId}/deep-scrub

Instruct an OSD to deep-scrub all its PGs.

# Parameters

  • osdIdintegerpath-

# Endpoint

curl -X POST http://mgmt-node:8080/api/maintenance/osd/{osdId}/deep-scrub

# GET /maintenance/flags

Ceph cluster flag overview.

# Parameters

  • No parameters...

# Endpoint

curl -X GET http://mgmt-node:8080/api/maintenance/flags

# Response 200

  • namestringoptional-
  • descriptionstringoptional-
  • recommendedStatebooleanoptional-
  • currentStatebooleanoptional-

# Example response

[
  {
    "name": "string",
    "description": "string",
    "recommendedState": true,
    "currentState": true
  }
]

# PUT /maintenance/flags/{flag}/set

Set a Ceph cluster flag.

# Parameters

  • flagstringpath[noscrub, nodeep-scrub, noout, noup, nodown, noin, nobackfill, norebalance, norecover]

# Endpoint

curl -X PUT http://mgmt-node:8080/api/maintenance/flags/{flag}/set

# PUT /maintenance/flags/{flag}/unset

Unset a Ceph cluster flag.

# Parameters

  • flagstringpath[noscrub, nodeep-scrub, noout, noup, nodown, noin, nobackfill, norebalance, norecover]

# Endpoint

curl -X PUT http://mgmt-node:8080/api/maintenance/flags/{flag}/unset

# GET /maintenance/recovery-speed

Get the recovery speed.

# Parameters

  • No parameters...

# Endpoint

curl -X GET http://mgmt-node:8080/api/maintenance/recovery-speed

# Response 200

  • speedintegeroptionalRecovery speed setting from 1 (slowest) to 10 (fastest). Set to <= 0 to restore the default configured in ceph.conf.

# Example response

{
  "speed": 0
}

# PUT /maintenance/recovery-speed

Set the recovery speed.

# Parameters

  • bodyobjectoptional-
    • speedintegeroptionalRecovery speed setting from 1 (slowest) to 10 (fastest). Set to <= 0 to restore the default configured in ceph.conf.

# Endpoint

curl -X PUT http://mgmt-node:8080/api/maintenance/recovery-speed

# Example body

{
  "speed": 0
}

# POST /maintenance/reboot-all-servers

Reboot all servers not running their configured image.

# Parameters

  • No parameters...

# Endpoint

curl -X POST http://mgmt-node:8080/api/maintenance/reboot-all-servers

# Response 200

  • statusCodeintegeroptional-
  • idintegeroptional-
  • startedBystringoptional-
  • startedAtintegeroptional-
  • donebooleanoptional-
  • namestringoptional-
  • statestringoptional[WAITING, RUNNING, FINISHED, FAILED, CANCELED]
  • objectstringoptional-
  • outputstringoptional-

# Example response

{
  "statusCode": 0,
  "id": 0,
  "startedBy": "string",
  "startedAt": 0,
  "done": true,
  "name": "string",
  "state": "WAITING",
  "object": "string",
  "output": "string"
}

# POST /maintenance/migrations/mimic

Perform a cluster upgrade to Ceph Mimic.

# Parameters

  • No parameters...

# Endpoint

curl -X POST http://mgmt-node:8080/api/maintenance/migrations/mimic

# Response 200

  • statusCodeintegeroptional-
  • idintegeroptional-
  • startedBystringoptional-
  • startedAtintegeroptional-
  • donebooleanoptional-
  • namestringoptional-
  • statestringoptional[WAITING, RUNNING, FINISHED, FAILED, CANCELED]
  • objectstringoptional-
  • outputstringoptional-

# Example response

{
  "statusCode": 0,
  "id": 0,
  "startedBy": "string",
  "startedAt": 0,
  "done": true,
  "name": "string",
  "state": "WAITING",
  "object": "string",
  "output": "string"
}

# GET /maintenance/migrations

Check which Ceph upgrades can be performed.

# Parameters

  • No parameters...

# Endpoint

curl -X GET http://mgmt-node:8080/api/maintenance/migrations

# Response 200

  • mimicbooleanoptional-

# Example response

{
  "mimic": true
}

# GET /maintenance/config-backups

Check if cloud configuration backups are enabled and working.

# Parameters

  • No parameters...

# Endpoint

curl -X GET http://mgmt-node:8080/api/maintenance/config-backups

# Response 200

  • enabledbooleanoptional-
  • lastBackupTimestampintegeroptionalTimestamp of the last backup, null if never backed up.
  • lastBackupSizeintegeroptionalSize of the last backup in byte, null if never backed up.
  • lastBackupChecksumstringoptionalSHA256 checksum of the encrypted data of the last backup, null if never backed up.
  • clusterIdstringoptional-
  • backupEncryptionKeystringoptional-
  • cephFsidstringoptional-

# Example response

{
  "enabled": true,
  "lastBackupTimestamp": 0,
  "lastBackupSize": 0,
  "lastBackupChecksum": "string",
  "clusterId": "string",
  "backupEncryptionKey": "string",
  "cephFsid": "string"
}

# PATCH /maintenance/config-backups

Configure cloud configuration backups.

# Parameters

  • bodyobjectoptional-
    • enabledbooleanoptional-

# Endpoint

curl -X PATCH http://mgmt-node:8080/api/maintenance/config-backups

# Example body

{
  "enabled": true
}

# POST /maintenance/osd/{osdId}/scrub

Instruct an OSD to scrub all its PGs.

# Parameters

  • osdIdintegerpath-

# Endpoint

curl -X POST http://mgmt-node:8080/api/maintenance/osd/{osdId}/scrub

# POST /maintenance/config-backups/create

Perform a cloud backup now.

# Parameters

  • No parameters...

# Endpoint

curl -X POST http://mgmt-node:8080/api/maintenance/config-backups/create

# Response 200

  • statusCodeintegeroptional-
  • idintegeroptional-
  • startedBystringoptional-
  • startedAtintegeroptional-
  • donebooleanoptional-
  • namestringoptional-
  • statestringoptional[WAITING, RUNNING, FINISHED, FAILED, CANCELED]
  • objectstringoptional-
  • outputstringoptional-

# Example response

{
  "statusCode": 0,
  "id": 0,
  "startedBy": "string",
  "startedAt": 0,
  "done": true,
  "name": "string",
  "state": "WAITING",
  "object": "string",
  "output": "string"
}