
Note
|
This request is not supported in C220M4, C240M4, C460M4 and S3X60 Servers.
|
Triggering HSU Deep Discovery
Request
curl -k -u admin:Password https://10.10.10.10/redfish/v1
/Managers/CIMC/Actions/Oem/CiscoUCSExtensions.HostOSBootManagement -XPOST -d '{"BootOption":"Immediate","ImageRepository":"10.10.10.10/nfsshare
/hsu1s53mad/","Mode":"Discovery","TransferProtocol":"VMEDIA-NFS"}'

Note
|
BootOption: Immediate or OnNextBoot
ImageRepository: <specify hsu tar file extracted path in remote share>
TransferProtocol: VMEDIA-NFS or VMEDIA-CIFS orVMEDIA-HTTPS or NFS or CIFS or HTTPS
To use NFS or CIFS or HTTPS, FlexUtil SD card has to be populated in the system.
Mode: Discovery
|
Response
{
"Messages": [],
"Id": "401",
"Name": "HSU-inventory",
"StartTime": "01/15/2020 12:01:07 IST",
"TaskState": "New",
"PercentComplete": 0,
"@odata.id": "/redfish/v1/TaskService/Tasks/401",
"@odata.type": "#Task.v1_4_0.Task"
}
Get Task to Find HSU Deep Discovery Status
Request
curl -k -u admin:Password https://10.10.10.10/redfish/v1/TaskService/Tasks/401
Response
{
"@odata.id": "/redfish/v1/TaskService/Tasks/401",
"@odata.context": "/redfish/v1/$metadata#TaskService/Tasks/Members/$entity",
"@odata.type": "#Task.v1_4_0.Task",
"Id": "401",
"Name": "HSU-inventory",
"StartTime": "01/15/2020 12:01:07 IST",
"EndTime": "01/15/2020 12:15:45 IST",
"PercentComplete": 100,
"TaskState": "Completed",
"Messages": [{
"MessageId": "Base.1.4.Success",
"Message": "Successfully Completed Request"
}],
"TaskMonitor": "/redfish/v1/TaskService/Oem/TaskMonitor/401"
}
Get Firmware Inventory to Find the List of Updatable Items Discovered
Request
curl -k -u admin:Password https://10.10.10.10/redfish/v1/UpdateService/FirmwareInventory
Response
{
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory",
"@odata.context": "/redfish/v1/$metadata#UpdateService/FirmwareInventory",
"@odata.type": "#SoftwareInventoryCollection.SoftwareInventoryCollection",
"Description": "Inventory of Firmware components",
"Name": "Firmware Inventory",
"Members": [{
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/Board_Controller"
}, {
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/BIOS"
}, {
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/CIMC"
}, {
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory
/HDD-model-MTFDDAV960TCB-serial-174619C268DF"
}, {
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory
/UCSC-NVMELW-I500-slot-FRONT-NVME-11"
}, {
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/X550-LOM-slot-L"
}, {
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory
/HDD-model-MTFDDAV960TCB-serial-174619C26BA5"
}, {
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/SasExpM5"
}, {
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory
/UCSC-NVMELW-I500-slot-FRONT-NVME-3"
}, {
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/UCSC-RAID-M5HD-slot-RAID"
}, {
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/P40-24GB-slot-10"
}, {
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/mswitch1"
}, {
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory
/UCSC-NVMELW-I500-slot-FRONT-NVME-12"
}, {
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory
/UCSC-NVMELW-I500-slot-FRONT-NVME-2"
}, {
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/FirePro-slot-2"
}, {
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory
/UCSC-NVMELW-I500-slot-FRONT-NVME-1"
}, {
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory
/UCSC-NVMELW-I500-slot-FRONT-NVME-6"
}, {
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/UCSC-SAS9460-8i-slot-12"
}, {
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory
/UCSC-NVMELW-I500-slot-FRONT-NVME-4"
}, {
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory
/UCSC-NVMELW-I500-slot-FRONT-NVME-5"
}, {
"@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/mswitch2"
}],
"Members@odata.count": 21
}
Triggering HSU Firmware Update on “All” Discovered Components
Request
curl -k -u admin:Password https://10.10.10.10/redfish/v1
/UpdateService/Actions/Oem/CiscoUCSExtensions.UCSUpdate -d '{ "Targets":[], "ApplyTime":"Immediate",
"ForceUpdate":true, "ImageRepository":"10.10.10.10/nfsshare/hsu1s53mad/", "TransferProtocol"
:"VMEDIA-NFS" , "Username”:”<share_username>”, "Password”:”<share_password>” }' –XPOST

Note
|
TransferProtocol: VMEDIA-NFS or VMEDIA-CIFS or VMEDIA-HTTPS or NFS or CIFS or HTTPS
ApplyTime: Immediate or OnNextBoot
ImageRepository : <specify hsu tar file extracted path in remote share>
ForceUpdate: true or false
Targets: To trigger update on all the discovered components
["Array of Software/Firmware Inventory URIs indicating where the image is to be applied."]
To trigger update on specific component, Targets of individual one or more components can be specified. For find Targets of
individual components, refer this command
Special Character Support Matrix in the HSU-Redfish Update Flow
Beginning from the release 4.3.4.241063, see the following table before you set the share server password.
Table 1. Special Character Support Matrix - Share Server Password
Platforms
|
Share Server
|
Special characters Supported
|
Special characters Not Supported
|
M5
|
CIFS Share
|
`~!@#$%^&*()-_=+[{]}\|;:'<.>/?
|
,“
|
HTTPS Share
|
`~!@#$%^&*()-_=+[{]}\|;:'<.>/?
|
,“
|
M6
|
CIFS Share
|
`~!@#$%^&*()-_=+[{]}\|;:'<.>/?
|
,“
|
HTTPS Share
|
`~!@#$%^&*()-_=+[{]}\|;:'<.>/?
|
,“
|
M7
|
CIFS Share
|
`~!@#$%^&*()-_=+[{]}\|;:'”<.>/?
|
,
|
HTTPS Share
|
`~!@#$%^&*()-_=+[{]}\|;:'”,<.>/?
|
NIL
|
-
' and \ are exceptions as they need to be escaped while specifying in the HSU-Redfish UCSUpdate request.
-
' Single Quote needs to be escaped with '\' i.e '\'' must be specified in the request.
-
\ Backslash needs to be escaped with \\\ i.e \\\\ must be specified in the request.
|
Response
{
"Messages": [],
"Id": "402",
"Name": "HSU-update",
"StartTime": "01/15/2020 12:58:59 IST",
"TaskState": "New",
"PercentComplete": 0,
"@odata.id": "/redfish/v1/TaskService/Tasks/402",
"@odata.type": "#Task.v1_4_0.Task"
}
Get Task ID to Get Status of Firmware Update
curl -k -u admin:Password https://10.10.10.10/redfish/v1/TaskService/Tasks/402
Response
{
"@odata.id": "/redfish/v1/TaskService/Tasks/402",
"@odata.context": "/redfish/v1/$metadata#TaskService/Tasks/Members/$entity",
"@odata.type": "#Task.v1_4_0.Task",
"Id": "402",
"Name": "HSU-update",
"StartTime": "01/15/2020 12:58:59 IST",
"EndTime": "01/15/2020 13:48:20 IST",
"PercentComplete": 100,
"TaskState": "Completed",
"Messages": [{
"MessageId": "CiscoUcsHsu.1.0.0.UpdateSuccess",
"Message": "Successfully updated the software inventory at
'UCSC-NVMELW-I500-slot-FRONT-NVME-11'.",
"Resolution": "NULL"
}, {
"MessageId": "CiscoUcsHsu.1.0.0.UpdateSuccess",
"Message": "Successfully updated the software inventory at
'X550-LOM-slot-L'.",
"Resolution": "NULL"
}, {
"MessageId": "CiscoUcsHsu.1.0.0.UpdateSuccess",
"Message": "Successfully updated the software inventory at
'SasExpM5'.",
"Resolution": "NULL"
}, {
"MessageId": "CiscoUcsHsu.1.0.0.UpdateSuccess",
"Message": "Successfully updated the software inventory at
'UCSC-NVMELW-I500-slot-FRONT-NVME-3'.",
"Resolution": "NULL"
}, {
"MessageId": "CiscoUcsHsu.1.0.0.UpdateSuccess",
"Message": "Successfully updated the software inventory at
'CIMC'.",
"Resolution": "NULL"
}, {
"MessageId": "CiscoUcsHsu.1.0.0.UpdateSuccess",
"Message": "Successfully updated the software inventory at
'UCSC-RAID-M5HD-slot-RAID'.",
"Resolution": "NULL"
}, {
"MessageId": "CiscoUcsHsu.1.0.0.UpdateSuccess",
"Message": "Successfully updated the software inventory at
'P40-24GB-slot-10'.",
"Resolution": "NULL"
}, {
"MessageId": "CiscoUcsHsu.1.0.0.UpdateSuccess",
"Message": "Successfully updated the software inventory at
'mswitch1'.",
"Resolution": "NULL"
}, {
"MessageId": "CiscoUcsHsu.1.0.0.UpdateSuccess",
"Message": "Successfully updated the software inventory at
'UCSC-NVMELW-I500-slot-FRONT-NVME-12'.",
"Resolution": "NULL"
}, {
"MessageId": "CiscoUcsHsu.1.0.0.UpdateSuccess",
"Message": "Successfully updated the software inventory at
'UCSC-NVMELW-I500-slot-FRONT-NVME-2'.",
"Resolution": "NULL"
}, {
"MessageId": "CiscoUcsHsu.1.0.0.UpdateSuccess",
"Message": "Successfully updated the software inventory at
'FirePro-slot-2'.",
"Resolution": "NULL"
}, {
"MessageId": "CiscoUcsHsu.1.0.0.UpdateSuccess",
"Message": "Successfully updated the software inventory at
'UCSC-NVMELW-I500-slot-FRONT-NVME-1'.",
"Resolution": "NULL"
}, {
"MessageId": "CiscoUcsHsu.1.0.0.UpdateSuccess",
"Message": "Successfully updated the software inventory at
'UCSC-NVMELW-I500-slot-FRONT-NVME-6'.",
"Resolution": "NULL"
}, {
"MessageId": "CiscoUcsHsu.1.0.0.UpdateSuccess",
"Message": "Successfully updated the software inventory at
'UCSC-SAS9460-8i-slot-12'.",
"Resolution": "NULL"
}, {
"MessageId": "CiscoUcsHsu.1.0.0.UpdateSuccess",
"Message": "Successfully updated the software inventory at
'UCSC-NVMELW-I500-slot-FRONT-NVME-4'.",
"Resolution": "NULL"
}, {
"MessageId": "CiscoUcsHsu.1.0.0.UpdateSuccess",
"Message": "Successfully updated the software inventory at
'UCSC-NVMELW-I500-slot-FRONT-NVME-5'.",
"Resolution": "NULL"
}, {
"MessageId": "CiscoUcsHsu.1.0.0.UpdateSuccess",
"Message": "Successfully updated the software inventory at
'mswitch2'.",
"Resolution": "NULL"
}, {
"MessageId": "CiscoUcsHsu.1.0.0.UpdateSuccess",
"Message": "Successfully updated the software inventory at
'Board_Controller'.",
"Resolution": "NULL"
}, {
"MessageId": "CiscoUcsHsu.1.0.0.UpdateSuccess",
"Message": "Successfully updated the software inventory at
'BIOS'.",
"Resolution": "NULL"
}, {
"MessageId": "Base.1.4.Success",
"Message": "Successfully Completed Request"
}],
"TaskMonitor": "/redfish/v1/TaskService/Oem/TaskMonitor/402"
}
Terminate HSU Update Task trigger with ApplyTime as OnNextBoot before Power Cycle/Power On
curl -k -u admin:Password https://10.10.10.10/redfish/v1
/UpdateService/Actions/Oem/CiscoUCSExtensions.UCSUpdate
-d '{ "Targets":[], "ApplyTime":"OnNextBoot", "ForceUpdate":true, "ImageRepository":
"10.10.10.10/nfsshare/hsu1s53mad/", "TransferProtocol":"VMEDIA-NFS" }' –XPOST
Response
{
"Messages": [],
"Id": "405",
"Name": "HSU-update",
"StartTime": "01/15/2020 17:10:26 IST",
"TaskState": "New",
"PercentComplete": 0,
"@odata.id": "/redfish/v1/TaskService/Tasks/405",
"@odata.type": "#Task.v1_4_0.Task"
}
Get the Task Status
curl -k -u admin:Password https://10.10.10.10/redfish/v1/TaskService/Tasks/405
Response
{
"@odata.id": "/redfish/v1/TaskService/Tasks/405",
"@odata.context": "/redfish/v1/$metadata#TaskService/Tasks/Members/$entity",
"@odata.type": "#Task.v1_4_0.Task",
"Id": "405",
"Name": "HSU-update",
"StartTime": "01/15/2020 17:10:26 IST",
"PercentComplete": 0,
"TaskState": "Running",
"Messages": [],
"TaskMonitor": "/redfish/v1/TaskService/Oem/TaskMonitor/405"
}
Use the taskMonitor URI in the above command to terminate the Update Task
curl -k -u admin:Password https://10.10.10.10/redfish/v1/TaskService/Oem
/TaskMonitor/405 -XDELETE