RAID Management
You can manage RAID using storage subsystem schema and its properties. Storage APIs represent a set of controllers and its resources like volumes, drives, etc. For details about storage controller firmware update, see 4.6 Updating Broadcom Storage Controller Firmware or 4.7 Updating Marvel Storage Controller Firmware.
URI: /redfish/v1/Systems/1/Storage
Method: GET
Response: 200
Viewing Details of HA-RAID Controller, Drive, and Volume
URI: /redfish/v1/Systems/1/Storage/HA-RAID
Method: GET
Response: 200
{
"@odata.type": "#Storage.v1_9_0.Storage",
"@odata.id": "/redfish/v1/Systems/1/Storage/HA-RAID",
"Id": "HA-RAID",
"Name": "HA Storage System",
"StorageControllers": [
{
"@odata.id": "/redfish/v1/Systems/1/Storage/HA-RAID#/StorageControllers/0",
"MemberId": "0",
"Manufacturer": "Broadcom",
"Model": "SAS 3908",
"SerialNumber": "FW-00000000",
"FirmwareVersion": "5.240.02-3768",
"Status": {
"State": "Enabled",
"Health": "OK"
},
"Identifiers": [
{
"DurableName": null
}
],
"SupportedControllerProtocols": [
"I2C",
"PCIe"
],
"SupportedDeviceProtocols": [
"SATA",
"SAS"
],
"Oem": {
"Supermicro": {
"@odata.type": "#SmcStorageExtensions.v1_0_0.StorageController",
"BIOSBootMode": "PauseOnError",
"JBODMode": "Disable",
"BBU": {
"Status": {
"State": "Enabled",
"Health": "OK"
},
"BBUStatus": "Not Install"
}
}
}
}
],
"Controllers": {
"@odata.id": "/redfish/v1/Systems/1/Storage/HA-RAID/Controllers"
},
"Drives": [
{
"@odata.id": "/redfish/v1/Chassis/HA-RAID.0.StorageEnclosure.0/Drives/Disk.Bay.1"
},
{
"@odata.id": "/redfish/v1/Chassis/HA-RAID.0.StorageEnclosure.0/Drives/Disk.Bay.5"
}
],
"Volumes": {
"@odata.id": "/redfish/v1/Systems/1/Storage/HA-RAID/Volumes"
},
"Links": {
"Enclosures": [
{
"@odata.id": "/redfish/v1/Chassis/HA-RAID.0.StorageEnclosure.0"
}
],
"SimpleStorage": {
"@odata.id": "/redfish/v1/Systems/1/SimpleStorage/1"
}
},
"Actions": {
"Oem": {
"#SmcHARAIDController.Save": {
"target": "/redfish/v1/Systems/1/Storage/HA-RAID/Actions/Oem/SmcHARAIDController.Save",
"@Redfish.ActionInfo": "/redfish/v1/Systems/1/Storage/HA-RAID/Oem/Supermicro/SaveActionInfo"
},
"#SmcStorage.CreateVolume": {
"target": "/redfish/v1/Systems/1/Storage/HA-RAID/Actions/Oem/SmcStorage.CreateVolume",
"@Redfish.ActionInfo": "/redfish/v1/Systems/1/Storage/HA-RAID/Oem/Supermicro/CreateVolumeActionInfo"
},
"#SmcStorage.ClearVolumes": {
"target": "/redfish/v1/Systems/1/Storage/HA-RAID/Actions/Oem/SmcStorage.ClearVolumes",
"@Redfish.ActionInfo": "/redfish/v1/Systems/1/Storage/HA-RAID/Oem/Supermicro/ClearVolumesActionInfo"
}
}
},
"Oem": {
},
"Description": "External RAID",
"Status": {
"State": "Enabled",
"Health": "OK"
},
"@odata.etag": "\"55ae4cf460abfdb1c5fc50d7e434f83f\""
}
Viewing Details of HBA Controller, Drive and Volume
URI: /redfish/v1/Systems/1/Storage/HBA
Method: GET
Response: 200
{
"@odata.type": "#Storage.v1_9_0.Storage",
"@odata.id": "/redfish/v1/Systems/1/Storage/HBA",
"Id": "HBA",
"Name": "HBA Storage System",
"StorageControllers": [
{
"@odata.id": "/redfish/v1/Systems/1/Storage/HBA#/StorageControllers/0",
"MemberId": "0",
"Manufacturer": "Broadcom",
"Model": "SAS3808",
"SerialNumber": "UA20CS003047R101",
"FirmwareVersion": "23.00.00.00",
"Status": {
"State": "Enabled",
"Health": "OK"
},
"Identifiers": [
{
"DurableName": null
}
],
"SupportedControllerProtocols": [
"PCIe"
],
"SupportedDeviceProtocols": [
"SATA",
"SAS"
],
"Oem": {
}
}
],
"Controllers": {
"@odata.id": "/redfish/v1/Systems/1/Storage/HBA/Controllers"
},
"Drives": [
],
"Volumes": {
"@odata.id": "/redfish/v1/Systems/1/Storage/HBA/Volumes"
},
"Links": {
"Enclosures": [
],
"SimpleStorage": {
"@odata.id": "/redfish/v1/Systems/1/SimpleStorage/1"
}
},
"Oem": {
},
"Description": "External HBA",
"Status": {
"State": "Enabled",
"Health": "OK"
},
"@odata.etag": "\"a1ff5f1e00a725b15fb667521d51b022\""
}
Creating LSI31XX/38XXIR/39XX Logical Volume
URI: /redfish/v1/Systems/1/Storage/HA-RAID/Actions/Oem/SmcStorage.CreateVolume
Method: POST
Payload:
{
"ControllerId":0,
"Raid": "RAID0",
"Span": 1,
"PhysicalDrives":["HA-RAID.0.Disk.0", "HA-RAID.0.Disk.1"],
"UsePercentage":100,
"LogicalDriveCount":1,
"StripSizePerDDF":"256K",
"LdReadPolicy": "NoReadAhead",
"LdWritePolicy": "WriteBack",
"LdIOPolicy": "DirectIO",
"AccessPolicy": "ReadWrite",
"DiskCachePolicy": "Unchanged",
"InitState": "NoInit",
"VdName": "VD"
}
Response: 200
Locating Physical HDD
URI: /redfish/v1/Chassis/HA-RAID.[controller_num].StorageEnclosure.[enclosure_num]/Drives/Disk.Bay .[disk_num]/Actions/Oem/SmcDrive.Indicate
Method: POST
Payload:
{
"Active": true
}
Response: 200
Locating Logical Volume
URI: /redfish/v1/Systems/1/Storage/HA-RAID/Volumes/Controller.[controller_num].Volume.[volume_num]/Actions/Oem/SmcVolume.Indicate
Method: POST
Payload:
{
"Active": true
}
Response: 200
Deleting a Logical Volume
URI: /redfish/v1/Systems/1/Storage/HA-RAID/Volumes/Controller.[controller_num].Volume.[volume_num]/Actions/Oem/SmcVolume.Delete
Method: POST
Payload:
{
}
Response: 200
Clearing All Logical Volumes
URI: /redfish/v1/Systems/1/Storage/HA-RAID/Actions/Oem/SmcStorage.ClearVolumes
Method: POST
Payload:
{
"ControllerId":0
}
Response: 200
Saving HA-Raid Controller Configuration
URI: /v1/Systems/1/Storage/HA-RAID/Actions/Oem/SmcHARAIDController.Save
Method: PATCH
Payload:
{
"ControllerId":0,
"BIOSBootMode":"PauseOnError",
"JBODMode": "Enable"
}
Response: 200
Viewing Details of Marvell Controller, Drive, and Volume
URI: /redfish/v1/Systems/1/Storage/MRVL.HA-RAID
Method: GET
Response: 200
Creating a Virtual Drive for Marvell
URI: /redfish/v1/Systems/1/Storage/MRVL.HA-RAID/Actions/Oem/SmcStorage.CreateVD
Method: POST
Payload:
{
"PD":["MRVL.HA-RAID.0.StorageModule/Drives/Disk.Bay.0","MRVL.HA-RAID.0.StorageModule/Drives/Disk.Bay.1"],
"RaidLevel": "RAID1",
"StripeBlock": "64K",
"VDName": "SuperDrive"
}
Deleting a Virtual Drive for Marvell
URI: /redfish/v1/Systems/1/Storage/MRVL.HA-RAID/Volumes/Controller.[controller_num].Volume.[volume_num]/Actions/Oem/SmcVolume.DeleteVD/
Method: POST
Payload:
{
}
Rebuilding a Virtual Drive for Marvell
URI: /redfish/v1/Systems/1/Storage/MRVL.HA-RAID/Volumes/Controller.[controller_num].Volume.[volume_num]/Actions/Oem/SmcVo lume.RebuildVD
Method: POST
Payload:
{
}
Importing a Virtual Drive for Marvell
Insert or import a VD and register its UUID to Marvell FW. Wait for the next system power-on, and this UUID will be registered at Marvell FW.
URI: /redfish/v1/Systems/1/Storage/MRVL.HA-RAID/Volumes/Controller.[controller_num].Volume.[volume_num]/Actions/Oem/SmcVolume.ImportVD
Method: POST
Payload:
{
}
NVME SSD
View NVME storage details.
URI: /redfish/v1/Systems/1/Storage/NVMeSSD
Method: GET
Response: 200