An Overview of New Features in the Dell EMC iDRAC9 3.30.30.30 RESTful API Abstract This Dell EMC Technical White Paper provides an overview of enhancements to the iDRAC9 RESTful API included in firmware version 3.30.30.30. The new APIs are illustrated with Python scripts.
Revisions Date Description March 2019 Initial release Acknowledgements This technical white paper was produced by the following members of the Dell EMC product group team: Authors: Paul Rubin—Senior Product Manager, Dell EMC Server Solutions Texas Roemer—Senior Test Engineer, Dell EMC Server Solutions Hari Venkatachalam—Software Principal Engineer, Dell EMC Server Solutions Srinivasulu E—Senior Software Engineer, Dell EMC Server Solutions Chinmay Hegde—Firmware Engineer, Dell EMC Server Solutions Supp
Contents Revisions.............................................................................................................................................................................2 Acknowledgements .............................................................................................................................................................2 Executive summary..............................................................................................................................
3.3.5 ImportLicense ...................................................................................................................................................44 3.3.6 ImportLicenseFromNetworkShare ....................................................................................................................45 3.3.7 ShowLicenseBits ..............................................................................................................................................46 3.
3.6.13 RemoveControllerKey ..................................................................................................................................65 3.6.14 ResetConfig ..................................................................................................................................................66 3.6.15 SetControllerKey ..........................................................................................................................................66 3.6.
Executive summary iDRAC with Lifecycle Controller provides a range of standards-based Applications Programming Interfaces (APIs) that enable scalable and automated management of Dell EMC PowerEdge servers. Standard Systems Management APIs have been developed by organizations such as the Institute of Electrical and Electronics Engineers (IEEE) and Distributed Management Task Force (DMTF).
1 Integrated Dell Remote Access Controller RESTful API The integrated Dell remote access controller (iDRAC) delivers advanced, agent-free, local and remote server administration. Embedded in every Dell EMC PowerEdge 14th Generation (14G) server, iDRAC9 provides a secure way to automate a multitude of common management tasks. Because iDRAC is embedded, there is no additional software to install—just plug in power and network cables, and iDRAC9 is ready to go.
• Phase I—a Dell EMC OEM extension to Redfish which enables Redfish-like access to PowerEdge WS-Man attributes and operations. • Phase II—Available in a future release, will add support for additional WS-Man features. An Overview of New Features in the Dell EMC iDRAC9 3.30.30.
2 iDRAC RESTful API Redfish enhancements The iDRAC RESTful API continues to expand the range of standards-based server management for PowerEdge servers with the release of iDRAC9 3.30.30.30 version. The following sections of the whitepaper describe the new APIs and illustrate their use with Python scripting examples—These examples are available from the iDRAC RESTful API GitHub repository https://github.com/dell/iDRACRedfish-Scripting. 2.
-d D -i I Pass in the device you want to insert or eject. Pass in "1" for CD or "2" for RemovableDisk Insert (attach) virtual media, pass in the HTTP or HTTPS URI path of the remote image. Note: If attaching removable disk, only supported file type is .img 2. Check the current attach status for virtual media: C:\>InsertEjectVirtualMediaREDFISH.py -ip 192.168.0.120 -u root -p calvin -c y - Virtual Media URIs detected /redfish/v1/Managers/iDRAC.Embedded.
4. If required, check status to verify if the virtual CD has attached: C:\>InsertEjectVirtualMediaREDFISH.py -ip 192.168.0.120 -u root -p calvin -c y - Virtual Media URIs detected /redfish/v1/Managers/iDRAC.Embedded.1/VirtualMedia/RemovableDisk /redfish/v1/Managers/iDRAC.Embedded.1/VirtualMedia/CD - Detailed information for URI "/redfish/v1/Managers/iDRAC.Embedded.
2.2 Enhanced PowerEdge hardware inventory Performing hardware inventory is a key server management function used by IT automation to discover the capabilities of a given server. iDRA9 3.30.30.30 adds new APIs that expand the existing hardware inventory APIs, enabling IT automation to determine which controllers are installed in which PCIe slots and to obtain hardware details for Non-Volatile Dual-Inline Memory Modules (NVDIMMs) installed in 14G servers.
Model: None Manufacturer: Marvell Technology Group Ltd. Id: 59-0 FirmwareVersion: 2.5.13.3016 @odata.etag: 1550851147 - Detailed information for URI "/redfish/v1/Systems/System.Embedded.1/PCIeDevice/0-0" @odata.type: #PCIeDevice.v1_2_0.PCIeDevice SKU: None Assembly: {u'@odata.id': u'/redfish/v1/Chassis/System.Embedded.1/Assembly'} Description: Sky Lake-E DMI3 Registers Links: {u'PCIeFunctions': [{u'@odata.id': u'/redfish/v1/Systems/System.Embedded.1/PCIeFunction/0-0-0'}], u'Chassis': [{u'@odata.
DeviceType: MultiFunction Name: C620 Series Chipset Family PCI Express Root Port #5 Model: None Manufacturer: Intel Corporation Id: 0-28 FirmwareVersion: @odata.etag: 1550851148 - Detailed information for URI "/redfish/v1/Systems/System.Embedded.1/PCIeDevice/0-23" @odata.type: #PCIeDevice.v1_2_0.PCIeDevice SKU: None Assembly: {u'@odata.id': u'/redfish/v1/Chassis/System.Embedded.1/Assembly'} Description: C620 Series Chipset Family SATA Controller [AHCI mode] Links: {u'PCIeFunctions': [{u'@odata.
DeviceType: SingleFunction Name: Express Flash NVMe PM1725 6.4TB AIC Model: None Manufacturer: Samsung Electronics Co Ltd Id: 94-0 FirmwareVersion: KPYABD3Q @odata.etag: 1550851148 - Detailed information for URI "/redfish/v1/Systems/System.Embedded.1/PCIeDevice/0-17" @odata.type: #PCIeDevice.v1_2_0.PCIeDevice SKU: None Assembly: {u'@odata.id': u'/redfish/v1/Chassis/System.Embedded.1/Assembly'} Description: C620 Series Chipset Family SSATA Controller [AHCI mode] Links: {u'PCIeFunctions': [{u'@odata.
Name: Integrated Matrox G200eW3 Graphics Controller Model: None Manufacturer: Matrox Electronics Systems Ltd. Id: 3-0 FirmwareVersion: @odata.etag: 1550851148 - Detailed information for URI "/redfish/v1/Systems/System.Embedded.1/PCIeDevice/0-31" @odata.type: #PCIeDevice.v1_2_0.PCIeDevice SKU: None Assembly: {u'@odata.id': u'/redfish/v1/Chassis/System.Embedded.1/Assembly'} Description: C621 Series Chipset LPC/eSPI Controller Links: {u'PCIeFunctions': [{u'@odata.id': u'/redfish/v1/Systems/System.Embedded.
SerialNumber: CN779216C300OT @odata.id: /redfish/v1/Systems/System.Embedded.1/PCIeDevice/25-0 @odata.context: /redfish/v1/$metadata#PCIeDevice.PCIeDevice Status: {u'HealthRollup': u'OK', u'State': u'Enabled', u'Health': u'OK'} PartNumber: 0G8RPD DeviceType: MultiFunction Name: BCM57800 1-Gigabit Ethernet Model: None Manufacturer: Broadcom Inc. and subsidiaries Id: 25-0 FirmwareVersion: 08.07.00 @odata.etag: 1550851148 - Detailed information for URI "/redfish/v1/Systems/System.Embedded.
SerialNumber: CN7792174K03GE @odata.id: /redfish/v1/Systems/System.Embedded.1/PCIeDevice/24-0 @odata.context: /redfish/v1/$metadata#PCIeDevice.PCIeDevice Status: {u'HealthRollup': u'OK', u'State': u'Enabled', u'Health': u'OK'} PartNumber: 0GDJ3J DeviceType: SingleFunction Name: PERC H330 Mini Model: None Manufacturer: LSI Logic / Symbios Logic Id: 24-0 FirmwareVersion: 25.5.4.0006 @odata.etag: 1550851148 - WARNING, detailed information also captured in "pcie_devices.
AllowedSpeedsMHz@odata.count: 1 BusWidthBits: 72 MemoryType: NVDIMM_N FirmwareRevision: 9324 BaseModuleType: None DataWidthBits: 64 MemoryMedia: [] RankCount: 1 MaxTDPMilliWatts@odata.count: 0 MemorySubsystemControllerManufacturerID: 0x3480 ModuleManufacturerID: 0x2c80 ErrorCorrection: MultiBitECC MemorySubsystemControllerProductID: 0x4131 MemoryDeviceType: DDR4 Id: iDRAC.Embedded.1#DIMMSLOTA7 CapacityMiB: 16384 - WARNING, output also captured in "NVDIMM_inventory.txt" file 2.
- Detailed information for URI /redfish/v1/Systems/System.Embedded.1/BootOptions/Boot0001 DisplayName: PXE Device 1: Integrated NIC 1 Port 1 Partition 1 Description: Current settings of the UEFI Boot option BootOptionEnabled: True UefiDevicePath: VenHw(3A191845-5F86-4E78-8FCE-C4CFF59F9DAA) BootOptionReference: Boot0001 Id: Boot0001 Name: Uefi Boot Option 2. Select the Windows Boot Manager entry boot order device for disablement.
C:\Python27>EnableDisableBootOrderDevicesDMTF_REDFISH.py -ip 192.168.0.120 u root -p calvin -s /redfish/v1/Systems/System.Embedded.1/BootOptions/Boot0000 - Detailed information for URI /redfish/v1/Systems/System.Embedded.1/BootOptions/Boot0000 DisplayName: PCIe SSD in Slot 2: Windows Boot Manager Description: Current settings of the UEFI Boot option BootOptionEnabled: False UefiDevicePath: HD(2,GPT,C39111CF-3093-43CF-AFC86FBA426ED5EB,0xE1800,0x32000)/\EFI\Microsoft\Boot\bootmgfw.
- WARNING, JobStatus not completed, current status is: "Job in progress." . . . - WARNING, JobStatus not completed, current status is: "Job in progress." - Final detailed job results JobID = JID_512983746602 Name = ConfigBIOS:BIOS.Setup.1-1 Message = Job completed successfully.
Value: [{u'ValueDisplayName': u'AHCI Mode', u'ValueName': u'AhciMode'}, {u'ValueDisplayName': u'RAID Mode', u'ValueName': u'RaidMode'}, {u'ValueDisplayName': u'Off', u'ValueName': u'Off'}] ReadOnly: False WriteOnly: False HelpText: Allows the Embedded SATA to be set to Off, AHCI, or RAID Mode. Hidden: False Type: Enumeration Immutable: False DisplayOrder: 5900 3. Set “EmbSata” to RaidMode, which is listed as one of the possible values. New for iDRAC9 3.30.30.
2.5 Privilege registry Service Processors, such as iDRAC9, typically provide a means to define the privileges afforded to an authenticated user. These privileges define which operations a given user can perform or restricts the set of objects such as storage controllers or NICs on which operations can be performed.
GET: [{u'Privilege': [], u'Privilege@odata.count': 0}] - Privileges for Entity(Schema) "DellPowerSupplyView" HEAD: [{u'Privilege': [u'Login'], u'Privilege@odata.count': 1}] GET@odata.count: 1 HEAD@odata.count: 1 GET: [{u'Privilege': [u'Login'], u'Privilege@odata.count': 1}] - Privileges for Entity(Schema) "DellEnclosureTemperatureSensor" HEAD: [{u'Privilege': [u'Login'], u'Privilege@odata.count': 1}] GET@odata.count: 1 HEAD@odata.count: 1 GET: [{u'Privilege': [u'Login'], u'Privilege@odata.
1 will return host interface information for the iDRAC. This GET returns the settings for the OS-toiDRAC pass-through interface. Example of output returned for GET: @odata.context "/redfish/v1/$metadata#HostInterface.HostInterface" @odata.id "/redfish/v1/Managers/iDRAC.Embedded.1/HostInterfaces/iDRAC.Embedded.1%23 Host.1" @odata.type "#HostInterface.v1_1_1.HostInterface" Description "Management for Host Interface" ExternallyAccessible false HostInterfaceType "NetworkHostInterface" Id "iDRAC.Embedded.1#Host.
Device Name: PCIe SSD in Slot 2 in Bay 1, Firmware Version: 1.0.0, Updatable: True Device Name: BOSS-S1, Firmware Version: 2.5.13.3016, Updatable: True Device Name: PERC H330 Mini, Firmware Version: 25.5.5.0005, Updatable: True Device Name: OS Collector, Firmware Version: 0, Updatable: True Device Name: PCIe SSD in Slot 2, Firmware Version: KPYABD3Q, Updatable: True Device Name: BP14G+EXP 0:1, Firmware Version: 2.
- WARNING, Current server power state is: On - PASS, Command passed to gracefully power OFF server, code return is 204 - PASS, GET command passed to verify server is in OFF state - PASS, Command passed to power ON server, code return is 204 - WARNING, JobStatus not completed, current status is: "Task successfully scheduled.", job execution time is "0:00:12" . . . - WARNING, JobStatus not completed, current status is: "Task successfully scheduled.", job execution time is "0:00:37" . . .
Device Name: iDRAC Service Module Installer, Firmware Version: 0, Updatable: True Device Name: Power Supply.Slot.1, Firmware Version: 00.23.32, Updatable: True Device Name: Disk 0 on AHCI Controller in slot 1, Firmware Version: DL43, Updatable: True Device Name: BIOS, Firmware Version: 1.7.24, Updatable: True Device Name: Dell OS Driver Pack, 18.12.00, A00, Firmware Version: 18.12.
/Disk.Bay.1:Enclosure.Internal.0-1:RAID.Integrated.1-1?$select=MediaType' % (idrac_ip), auth=(idrac_username, idrac_password), verify=False) In the following, $filter is used to select a subset of entries in a resource collection which satisfies the filter criteria—it does not add any new data: req = requests.get(‘https://%s/redfish/v1/Systems/System.Embedded.1/Storage?$filte r=@odata.id eq ‘/redfish/v1/Systems/System.Embedded.1/Storage/AHCI.Embedded.
3 Map iDRAC RESTful API to WS-Man The Web Services Management (WS-Man) standard was established in 2010 by the DMTF to provide a structured method for describing server management data and operations. Based on the SOAP methodology, WS-Man was implemented by Dell EMC and other server vendors in their service processors starting from 2011. iDRAC supports a very robust set of WS-Man APIs that provide full lifecycle server management functions.
3.1.2 SetupJobQueue This method is used for creating a job queue that shall contain one or more DellJobs with a specified order of execution within the queue. SetupJobQueue Method Parameters Qualifiers IN, Required Name JobArray Type Edm.String IN, Required StartTimeInterval Edm.String IN UntilTime Edm.String OUT Message Edm.String OUT MessageArguments Edm.String OUT MessageID Edm.
IN Passphrase Edm.String IN IN IN IN IN IN Password ProxyPasswd ProxyPort ProxyServer ProxySupport ProxyType Edm.String Edm.String Edm.String Edm.String Edm.String Edm.String IN IN ProxyUname ScheduledStartTime Edm.String Edm.String IN ShareName Edm.String IN ShareType Edm.String IN UntilTime Edm.String IN IN OUT UserName Workgroup Job Edm.String Edm.String Edm.String OUT Message Edm.String OUT MessageArguments Edm.String OUT MessageID Edm.
3.2.2 ClearProvisioningServer The ClearProvisioningServer method is used for clearing the provisioning server values. ClearProvisioningServer Method Parameters Qualifiers Name Type Description Error or information message corresponding to the message ID is returned, in English. Substitution variables for dynamic error or information messages. OUT Message Edm.String OUT MessageArguments Edm.String OUT MessageID Edm.String The message ID for the output message. 3.2.
3.2.4 ExportHWInventory The ExportHWInventory method is used for exporting the hardware inventory from the Lifecycle Controller to a remote shared folder. ExportHWInventory Method Parameters Qualifiers IN Name FileName Type Edm.String IN IPAddress Edm.String IN IgnoreCertWarning Edm.String IN IN IN IN IN IN IN IN Password ProxyPasswd ProxyPort ProxyServer ProxySupport ProxyType ProxyUname ShareName Edm.String Edm.String Edm.String Edm.String Edm.String Edm.String Edm.String Edm.
3.2.5 ExportLCLog The ExportLCLog method is used for exporting the log from the Lifecycle Controller to a remote shared folder. ExportLCLog Method Parameters Qualifiers IN Name FileName Type Edm.String IN IPAddress Edm.String IN IgnoreCertWarning Edm.String IN IN IN IN IN IN IN IN Password ProxyPasswd ProxyPort ProxyServer ProxySupport ProxyType ProxyUname ShareName Edm.String Edm.String Edm.String Edm.String Edm.String Edm.String Edm.String Edm.String IN, Required IN IN OUT ShareType Edm.
3.2.6 ExportTechSupportReport This method is used to collect the TSR that includes hardware, OS, and application data. The data is compressed into a compressed file and saved on the remote share (CIFS, NFS, HTTP, or HTTPS). ExportTechSupportReport Method Parameters Qualifiers IN Name DataSelectorArrayIn Type Array of Edm.string IN FileName Uint16[] IN, Required IN IPAddress Edm.String Password Edm.String IN, Required ShareName Edm.String IN, Required IN ShareType Edm.String UserName Edm.
An Overview of New Features in the Dell EMC iDRAC9 3.30.30.
3.2.8 GetRemoteServicesAPIStatus The GetRemoteServicesAPIStatus method is used for obtaining the overall remote services API status that includes host system status, the remote services status, and real-time status. The overall rolled-up status is reflected in the Status output parameter. Note: The LCStatus output parameter value includes the status reported by the DMStatus output parameter in the GetRSStatus method and the Lifecycle Controller status. Thus, GetRSStatus method invocation is redundant.
-PASS: POST command passed for GetRemoteServicesAPIStatus method, status code 200 returned RTStatus: Ready Status: Ready LCStatus: Ready ServerStatus: OutOfPOST 3.2.9 LCWipe The LCWipe method is used for deleting all configurations from Lifecycle Controller before the system is retired. Host must be manually rebooted for the changes to take effect. LCWipe Method Parameters Qualifiers OUT Name Message Type Edm.String OUT OUT MessageArguments MessageID Edm.String Edm.
3.2.11 RestoreImage This RestoreImage method is used to restore firmware and configurations. RestoreImage Method Parameters Qualifiers IN Name IPAddress Type Edm.String IN IgnoreCertWarning Edm.String IN IN IN IN IN IN IN IN IN IN IN ImageName Passphrase Password PreserveVDConfig ProxyPasswd ProxyPort ProxyServer ProxySupport ProxyType ProxyUname ScheduledStartTime Edm.String Edm.String Edm.String Edm.String Edm.String Edm.String Edm.String Edm.String Edm.String Edm.String Edm.
3.3 DellLicenseManagementService The DellLicenseManagementService resource provides actions to support License Management functionality. URI : /redfish/v1/Dell/Managers/iDRAC.Embedded.1/DellLicenseManagementService 3.3.1 DeleteLicense A method used to delete assigned licenses.
3.3.3 ExportLicenseByDeviceToNetworkShare ExportLicenseByDeviceToNetworkShare is a method used to export License files from the IDRAC. The ExportLicenseByDeviceToNetworkShare method exports all licenses from a device, specified by FQDD, to a user-defined location. The following tables specify ExportLicenseByDeviceToNetworkShare return values and parameters. ExportLicenseByDeviceToNetworkShare Method Parameters Qualifiers IN, Required IN, Required IN, Required IN IN, Required Name FQDD Type Edm.
IN IN IN IN IN IN ProxyPort ProxyServer ProxySupport ProxyType ProxyUname ShareName Edm.String Edm.String Edm.String Edm.String Edm.String Edm.String Port for the proxy server. Default is set to 80. The IP Address of the proxy server. Specifies if proxy is to be used or not. Default is 1 (Off). The proxy type of the proxy server. Default is 0 (HTTP). The user name for proxy server. Name of the CIFS share or full path to the NFS share.
3.3.6 ImportLicenseFromNetworkShare The ImportLicenseFromNetworkShare method imports the License given in the network share location. ImportLicenseFromNetworkShare Method Parameters Qualifiers IN, Required IN, Required IN FQDD Type Edm.String Description FQDD of the device to apply the license to. IPAddress Edm.String IP address of the server hosting the network share. IgnoreCertWarning Edm.String IN, Required IN, Required IN IN IN IN ImportOptions Edm.
3.3.7 ShowLicenseBits The ShowLicenseBits method is used to retrieve the iDRAC feature license bit string for the Licenses in iDRAC in a hexadecimal representation of a 256 bit-string. To read the output, you will need to see which bit position is set to TRUE from right-to-left. Refer to the Appendix section that will show which bit represents which feature. ShowLicenseBits Method Parameters Qualifiers OUT OUT Name LicenseBits Message MessageArgs MessageID OUT OUT Type Edm.String Edm.String Edm.
OUT Message Edm.String OUT MessageArguments Edm.String OUT MessageID Edm.String Error or information message, in English, corresponding to Message ID is returned. Substitution variables for dynamic error or information messages. The message ID for the output message. 3.4.3 BootToNetworkISO The BootToNetworkISO method is used to boot from an image file mounted on iDRAC virtual media.
3.4.4 ConfigurableBootToNetworkISO The ConfigurableBootToNetworkISO method exposes an ISO Image present on a network share as a CD-ROM device to the host server for a specified exposure duration interval or by default for 18 hrs. Upon the successful execution, based on the ResetType parameter, the host system shall either immediately cold boot or warm boot. After this reset, the system shall boot to the ISO image file.
server, Lifecycle Controller will be locked and no other jobs like configuration or update can be performed until the ISO is detached using the DisconnectNetworkISOImage method. The successful execution of the DisconnectNetworkISOImage will revert the host system to the regular boot list. NOTE—The recommended methodology for connecting to an ISO image is by using the ConnectRFSISOImage method that utilizes the Remote File System (RFS).
3.4.7 DetachDrivers This OSDeploymentService.DetachDrivers method is used to detach the USB device containing the Lifecycle Controller driver pack from the host server. The following table lists the return values for DetachDrivers method, where the method-execution behavior matches the return-code description. DetachDrivers Method Parameters Qualifiers OUT Name Message Type Edm.String OUT OUT MessageArguments MessageID Edm.String Edm.
3.4.10 DisconnectNetworkISOImage The DisconnectNetworkISOImage method is used to disconnect and detach the ISO Image from the host system. The following table lists the return values for the DisconnectNetworkISOImage method, where the method-execution behavior matches the return-code description. DisconnectNetworkISOImage Method Parameters Qualifiers OUT Name Message Type Edm.String Description Error or information message, in English, corresponding to message ID is returned.
3.4.12 GetAttachStatus The GetAttachStatus method will give the status of the Lifecycle Controller Driver Pack and ISO Image that may be attached to the host. GetAttachStatus Method Parameters Qualifiers OUT OUT OUT Name DriversAttachStatus ISOAttachStatus Message Type Edm.String Edm.String Edm.String OUT MessageArguments Edm.String OUT MessageID Edm.String Description Indicates if the driver is attached. Indicates if the ISO image file is attached.
3.4.14 GetNetworkISOImageConnectionInfo The GetNetworkISOImageConnectionInfo method is used to give the status of the ISO Image file that has been exposed to the host system. The following table lists the return values for GetNetworkISOImageConnectionInfo, where the method-execution behavior matches the return-code description. GetNetworkISOImageConnectionInfo Method Parameters Qualifiers OUT Name HostAttachedStatus Type Edm.String OUT HostBootedFromISO Edm.String OUT IPAddr Edm.
OUT Message Edm.String OUT MessageArguments Edm.String OUT MessageID Edm.String Error or information message, in English, corresponding to message ID is returned. Substitution variables for dynamic error or information messages. The message ID for the output message. 3.4.16 UnpackAndShare The UnpackAndShare method is used to extract the Lifecycle Controller Driver Pack for the selected operating system and copy them to the specified network share.
Microsoft Windows Server Microsoft Windows Server Red Hat Enterprise Linux Red Hat Enterprise Linux SuSE Enterprise Linux 15 2012 R2 2019 6.10 x64 7.5 x64 x64 2. Unpack and attach the driver pack for the OS to be installed; this workflow will install Microsoft Windows Server 2012: C:\Python27>UnpackAndAttachOsdREDFISH.py -ip 192.168.0.
C:\Python27>BootToNetworkIsoOsdREDFISH.py -ip 192.168.0.120 -u root -p calvin -b y --ipaddress 192.168.0.130 --sharetype NFS --sharename nfs_share_vm --imagename WS2012R2.ISO - WARNING, arguments and values used to BootToNetworkISO on network share ShareType: ShareName: ImageName: IPAddress: NFS nfs_share_vm WS2012R2.ISO 192.168.0.
C:\Python27>UnpackAndAttachOsdREDFISH.py -ip 192.168.0.120 -u root -p calvin -d y - PASS: POST command passed to detach driver pack, status code 200 returned - PASS, driver pack attach status successfully identified as "NotAttached" C:\Python27>BootToNetworkIsoOsdREDFISH.py -ip 192.168.0.120 -u root -p calvin -d y - PASS: POST command passed to detach ISO image, status code 200 returned - PASS, ISO attach status successfully identified as "NotAttached" 3.
3.6.1 AssignSpare The AssignSpare method is used to assign a physical disk as a dedicated hot spare for a virtual disk, or as a global hot spare. AssignSpare Method Parameters Qualifiers IN, Required IN Name Target Type Edm.String Description This pParameter is the FQDD of the target device (physical drive). VirtualDiskArray Edm.String OUT Message Edm.String OUT MessageArguments Edm.String OUT OUT MessageID RebootRequired Edm.String Edm.
3.6.3 CheckVDValues The CheckVDValues method is used to determine the possible sizes of VDs and the default settings, based upon a RAID level and set of physical disks. The VDPropArray property is filled with Size and other values, so that the method is successfully executed. If the SpanDepth is not provided, a default value of 2 shall be used for RAID levels 10, 50, and 60. NOTE: For certain numbers of disks such as nine or fifteen, it may be necessary for the user to provide another SpanDepth.
3.6.4 ClearForeignConfig The ClearForeignConfig method is used to prepare any foreign physical drives for inclusion in the local RAID configuration. ClearForeignConfig Method Parameters Qualifiers IN, Required OUT OUT OUT OUT Name Target Type Edm.String Description FQDD of the target device (Controller). Message Edm.String MessageArguments MessageID RebootRequired Edm.String Edm.String Edm.String Error or information message, in English, corresponding to message ID is returned.
3.6.5 ConvertToNonRAID The ConvertToNonRAID method is used to convert physical disks in RAID state of "Ready" to a NonRAID state. After the method is successfully executed, the Dell_PhysicalDiskView.RAIDStatus property of that physical disk should reflect the new state. ConvertToNonRAID Method Parameters Qualifiers IN, Required OUT Name PDArray Type Edm.String Description An array of FQDDs where each identifies a physical drive. Message Edm.String OUT MessageArguments Edm.
3.6.7 EnableControllerEncryption The EnableControllerEncryption method sets Local Key Management (LKM) on controllers that support encryption of the drives. EnableControllerEncryption Method Parameters Qualifiers IN Name Key Type Edm.String IN Keyid Edm.String IN, Required IN, Required OUT Mode Edm.String Description Key is the passcode. This parameter is required if the mode is set to Local Key Management.
IN IN RaidLevel T10PIStatus Edm.String Edm.String IN, Required OUT Target Edm.String Message Edm.String OUT MessageArguments Edm.String OUT OUT MessageID PDArray Edm.String Edm.String • 1—Include only BOSS M.2 The parameter represents the type of RAID configuration. The parameter specifies the T10-Protection Information (PI) capability status. This parameter is the FQDD of the target device (Controller). Error or information message, in English, corresponding to message ID is returned.
IN IN PDArray T10PIStatus Edm.String Edm.String IN, Required OUT Target Edm.String Message Edm.String OUT MessageArguments Edm.String OUT OUT MessageID VDRAIDEnumArray Edm.String Edm.String Array of FQDDs where each identifies a physical drive. The parameter specifies the T10-Protection Information (PI) capability status. FQDD of target device (Controller). Error or information message, in English, corresponding to MessageID is returned.
IN, Required IN, Required OUT OldKey Edm.String The old controller key. Target Edm.String FQDD of target device (Controller). Message Edm.String Error or information message, in English, corresponding to message ID is returned. OUT MessageArguments Edm.String OUT OUT MessageID RebootRequired Edm.String Edm.String Substitution variables for dynamic error or information messages. The message ID for the output message. Indicates whether a reboot is required to complete the operation performed.
3.6.14 ResetConfig The ResetConfig method is used to delete all the VDs and unassign all hot-spare physical drives. Caution—All data on the existing VDs will be lost. ResetConfig Method Parameters Qualifiers IN, Required OUT Name Target Type Edm.String Description FQDD of target device (Controller). Message Edm.String OUT MessageArguments Edm.String OUT OUT MessageID RebootRequired Edm.String Edm.String Error or information message, in English, corresponding to the message ID is returned.
• Optional—The operation can be performed with or without reboot based on the type of job created 3.6.16 UnBlinkTarget The UnblinkTarget method is used to stop blinking the light present on the physical drive represented by the Target FQDD. The method is real time; unblink cannot be scheduled as part of a job. UnBlinkTarget Method Parameters Qualifiers IN, Required OUT Name Target Type Edm.String Description This parameter is the FQDD of the physical drive, SSD, and VD. Message Edm.
An Overview of New Features in the Dell EMC iDRAC9 3.30.30.
3.7.2 InstallFromRepository This method creates the list of the updates contained in the repository that are supported by the Lifecycle Controller and are applicable to the system and installed hardware. The successful execution of this method creates a job. The list is copied to a persistent location so that you can query for the updatable list by using GetRepoBasedUpdateList command.
OUT Message Edm.String OUT MessageArguments Edm.String OUT MessageID Edm.String Error or information message corresponding to the MessageID is returned, in English. Substitution variables for dynamic error or information messages. The message ID for the output message. 3.7.
Device Name: Lifecycle Controller, Firmware Version: 3.30.30.30, Updatable: False For this example, a custom repository has been created and placed on an NFS share. Notice that the NFS share contains a Catalog.xml file and the firmware DUPs for the devices to be updated. In this workflow example, the goal is to update the BIOS, PERC controller firmware and the server DIAGs.
@odata.context: /redfish/v1/$metadata#DellJob.DellJob MessageArgs: [u'NA'] CompletionTime: 2019-02-28T11:47:30 PercentComplete: 100 StartTime: TIME_NOW MessageId: RED001 Message: Job completed successfully. EndTime: None Id: JID_513760436205 JobType: RepositoryUpdate Name: Repository Update - WARNING, "ApplyUpdate = False" selected, execute script with -r argument to view the repo update list which will report devices detected for firmware updates C:\Python27>InstallFromRepositoryREDFISH.py -ip 192.168.0.
TYPE="string">DCIM:INSTALLED#802__Diagnostics.Embedded.1 :LC.Embedded.14301A18
NAME="PackageName" TYPE="string">BIOS_YJXXX_WN64_1.6.13.EXE1.6.13HOST DCIM:INSTALLED#741__BIOS.Setup.
- PASS: POST command passed for method "InstallFromRepository", status code 202 returned - PASS, job ID JID_513763153006 successfully created - WARNING, Job ID JID_513763153006 not marked completed, current status: "Downloading the Catalog.xml update package.", job polling time: "0:00:00" - WARNING, Job ID JID_513763153006 not marked completed, current status: "Package successfully downloaded.
JobState: Completed Description: Job Instance TargetSettingsURI: None @odata.id: /redfish/v1/Managers/iDRAC.Embedded.1/Jobs/JID_513763218603 @odata.context: /redfish/v1/$metadata#DellJob.DellJob MessageArgs: [] CompletionTime: 2019-02-28T12:02:39 PercentComplete: 100 StartTime: TIME_NOW MessageId: PR19 Message: The specified job has completed successfully. EndTime: TIME_NA Id: JID_513763218603 JobType: FirmwareUpdate Name: update:DCIM:INSTALLED#741__BIOS.Setup.
StartTime: TIME_NOW MessageId: RED001 Message: Job completed successfully. EndTime: None Id: JID_513763590675 JobType: FirmwareUpdate Name: update:DCIM:INSTALLED#802__Diagnostics.Embedded.1:LC.Embedded.1 4. Check the firmware versions of the devices that have been updated. In the output below, you will notice DIAGs, BIOS, and PERC are updated to new versions. C:\Python27>InstallFromRepositoryREDFISH.py -ip 192.168.0.
3.7.4 Update the repository firmware by using Dell EMC Repository Using the InstallFromRepository Dell EMC OEM method, you can also point to the Dell EMC repository which simplfies the process of updating your servers to the latest firmware versions without the need of creating a custom repository. The example below points to the Dell EMC repository http://downloads.dell.com or IP 143.166.147.76.
3.7.5 InstallFromURI The InstallFromURI method is used for creating a job for the update service. The successful execution of this method creates a job. InstallFromURI Method Parameters Qualifiers IN Name IgnoreCertWarning Type Edm.String IN IN IN IN IN IN IN, Required ProxyPasswd ProxyPort ProxyServer ProxySupport ProxyType ProxyUname Target Edm.String Edm.String Edm.String Edm.String Edm.String Edm.String Edm.String IN, Required URI Edm.String OUT Job Edm.String OUT Message Edm.
3.8.2 ImportSSLCertificate This method is used to import the SSL certificate to iDRAC, based on the input parameter Ttype. After importing the certificate, the iDRAC will automatically restart. ImportSSLCertificate Method Parameters Qualifiers IN, Required IN Name CertificateType Type Edm.String Description Type of the certificate to be imported. Passphrase Edm.String IN, Required SSLCertificateFile Edm.String OUT Message Edm.String OUT OUT MessageArgs MessageID Edm.String Edm.
• OUT Message Edm.String OUT OUT MessageArgs MessageID Edm.String Edm.String 81 Preserve = 2 (ResetAllWithRootDefaults) —Reset all configuration to default including network preserve default user as root/calvin. Error information message in English corresponding to the message ID is returned. Substitution variables for dynamic error messages. The message ID for the output message. An Overview of New Features in the Dell EMC iDRAC9 3.30.30.
4 Summary The DMTF Redfish standard is emerging as a key new tool for efficient, scalable, and secure server management. Utilizing an industry-standard interface and data format, Redfish supports rapid development of automation for one-to-many server management. System administrators and IT developers will appreciate Redfish’s features that can increase efficiency, lower costs and boost productivity across their organizations.
A Map DRAC RESTful API to WS-Man—Phase I The following table details the mapping of iDRAC-supported WS-Man classes to iDRAC RESTful API resources and URIs delivered in iDRAC9 firmware 3.30.30.30.
WS-Man Class iDRAC RESTful Resource URI DCIM_JobService DellJobService DCIM_LCService DellLCService DCIM_License DellLicense DCIM_License DellLicenseCollection DCIM_LicenseManagementService DellLicenseManagementService DCIM_MemoryView DellMemory DCIM_MemoryView DellMemoryCollection DCIM_NICCapabilities DellNICCapabilities DCIM_NICCapabilities DellNICCapabilitiesCollection DCIM_NICStatistics DellNICStatistics DCIM_NICStatistics DellNICStatisticsCollection DCIM_NICView DellNIC DCIM_
WS-Man Class iDRAC RESTful Resource URI DCIM_PCIeSSDView DellPCIeSSDCollection DCIM_PersistentStorageService DellPersistentStorageService DCIM_PhysicalDiskView DellPhysicalDisk DCIM_PhysicalDiskView DellPhysicalDiskCollection DCIM_PowerSupply DellPowerSupply DCIM_PowerSupply DellPowerSupplyCollection DCIM_PowerSupplyView DellPowerSupplyView DCIM_PowerSupplyView DellPowerSupplyViewCollection DCIM_PresenceAndStatusSensor DellPresenceAndStatusSensor DCIM_PresenceAndStatusSensor DellPresen
WS-Man Class iDRAC RESTful Resource URI DCIM_VFlashView DellvFlashCollection DCIM_VirtualDiskView DellVirtualDisk DCIM_VirtualDiskView DellVirtualDiskCollection "/redfish/v1/Dell/Managers/iDRA C.Embedded.1/DellvFlashCollecti on" "/redfish/v1/Dell/Systems/Syste m.Embedded.1/Storage/Volumes/De llVirtualDisk(SelecorSet)" "/redfish/v1/Dell/Systems/Syste m.Embedded.1/Storage/Volumes/De llVirtualDiskCollection" 86 An Overview of New Features in the Dell EMC iDRAC9 3.30.30.
B Additional Resources Below are links to Dell EMC iDRAC RESTful API white papers, DMTF white papers, specifications, and other useful documents • • • • • • • • • • • • 87 Introducing the Dell EMC PowerEdge Redfish API white paper http://en.community.dell.com/techcenter/extras/m/white_papers/20442330 RESTful Server Configuration with iDRAC RESTful API white paper http://en.community.dell.