crush
CRUSH map and rule management.
get /crush
Responses
200 successful operation
CrushTree object
{
"nodes": [
{
"id": 0,
"pgs": 0,
"name": "string",
"size": 0,
"type": "OSD",
"used": 0,
"diskId": 0,
"status": "UP",
"children": [
0
],
"reweight": 0,
"serverId": 0,
"deviceClass": "string",
"journalGuid": "string"
}
],
"stray": [
{
"id": 0,
"pgs": 0,
"name": "string",
"size": 0,
"type": "OSD",
"used": 0,
"diskId": 0,
"status": "UP",
"children": [
0
],
"reweight": 0,
"serverId": 0,
"deviceClass": "string",
"journalGuid": "string"
}
]
}
post /crush
Parameters body object
{
"nodes": [
{
"id": 0,
"pgs": 0,
"name": "string",
"size": 0,
"type": "OSD",
"used": 0,
"diskId": 0,
"status": "UP",
"children": [
0
],
"reweight": 0,
"serverId": 0,
"deviceClass": "string",
"journalGuid": "string"
}
],
"stray": [
{
"id": 0,
"pgs": 0,
"name": "string",
"size": 0,
"type": "OSD",
"used": 0,
"diskId": 0,
"status": "UP",
"children": [
0
],
"reweight": 0,
"serverId": 0,
"deviceClass": "string",
"journalGuid": "string"
}
]
}
Responses
200 successful operation
ChangeRequest object
{
"id": 0,
"state": "PENDING",
"changes": [
{
"type": "string"
}
],
"createdBy": {
"id": 0,
"name": "string"
},
"description": "string",
"affectedObject": "string"
}
get /crush/rules
List crush rules.
Parameterspagination string query
Responses
200 successful operation
CrushRuleResponse array
CrushRuleResponse object
[
{
"id": 0,
"name": "string",
"type": "REPLICATED",
"steps": [
{
"op": "TAKE",
"crushMapTextFormat": "string"
}
],
"maxSize": 0,
"minSize": 0,
"typeLabel": "string"
}
]
get /crush/ec-profiles
Responses
200 successful operation
object
{
"additionalProp1": {
"k": 0,
"m": 0,
"plugin": "string",
"crushRoot": "string",
"technique": "string",
"crushDeviceClass": "string",
"crushFailureDomain": "string"
},
"additionalProp2": {
"k": 0,
"m": 0,
"plugin": "string",
"crushRoot": "string",
"technique": "string",
"crushDeviceClass": "string",
"crushFailureDomain": "string"
},
"additionalProp3": {
"k": 0,
"m": 0,
"plugin": "string",
"crushRoot": "string",
"technique": "string",
"crushDeviceClass": "string",
"crushFailureDomain": "string"
}
}
post /crush/rules/simple
Parameters body object
{
"name": "string",
"deviceClass": "string",
"independent": "string",
"startBucket": "string",
"erasureCoding": true
}
Responses
default successful operation
delete /crush/rules/{name}
Parameters name string path Required
Responses
default successful operation
get /crush/rules/classes
Responses
200 successful operation
array
string
[
"string"
]
post /crush/rules/ssdPrimary
Parameters body object
{
"name": "string",
"ssdCopies": 0,
"hddDeviceClass": "string",
"hddIndependent": "string",
"hddStartBucket": "string",
"ssdDeviceClass": "string",
"ssdIndependent": "string",
"ssdStartBucket": "string"
}
Responses
default successful operation
get /crush/destroyed-osd-ids
Responses
200 successful operation
DestroyedOsdIds object
{
"destroyedOsds": [
{
"id": 0,
"host": "string"
}
]
}
get /crush/osd/{osdId}/metadata
Retrieve OSD metadata, resulting JSON contains runtime information about the OSD and varies by Ceph version.
ParametersosdId integer path Required
Responses
200 successful operation
object
Arbitrary JSON data.
{}