Page 3 - Contents
Lifecycle Controller Integration ― Best Practices Specification 3 Contents 1 Contents ............................................................................................................ 12 1.1 How to Use this Document ............................................................................
Page 11 - Tables
Lifecycle Controller Integration ― Best Practices Specification 11 33.5 iSCSI boot information ................................................................................ 155 Tables Table 1. Generational Nomenclature ........................................................................... 15...
Page 12 - Improving winRM Enumeration Performance
Lifecycle Controller Integration ― Best Practices Specification 12 1 Contents 1.1 How to Use this Document This document contains the detailed steps of common workflows to perform various tasks utilizing winRM or WSMAN. The PYTHON scripting language was used to provide a software development kit (SD...
Page 13 - Feature Discovery Procedure
Lifecycle Controller Integration ― Best Practices Specification 13 Additionally, increasing the allotted maximum envelope size and timeout can also increase performance. winrm set winrm/config @{MaxEnvelopeSizekb="150"} winrm set winrm/config @{MaxTimeoutms ="60000"} Other optional W...
Page 14 - Profile Revision Number Explanation
Lifecycle Controller Integration ― Best Practices Specification 14 a. Enumerate the DCIM_RAIDString, DCIM_RAIDEnumeration, and DCIM_RAIDInteger classes (DCIM_RAIDString shown below) winrm enumerate "cimv2/root/dcim/DCIM_RAIDString" -r:https://IPADDRESS/wsman=-u:username -p:password -SkipCNch...
Page 15 - System status and Configuration Job Behavior
Lifecycle Controller Integration ― Best Practices Specification 15 [major change] . [minor change] . [errata] Increments in the major change field indicate that the profile is not backward compatible. Increments in the minor change field indicate that one or more new methods have been added. I...
Page 16 - RS Status and job status
Lifecycle Controller Integration ― Best Practices Specification 16 1.7.1 RS Status and job status The details below describe how the remote service (RS) status relates to the job status. RS status is a feature that indicates whether the system is ready to invoke WSMAN commands. It must be in a ready...
Page 17 - GetRemoteServicesAPIStatus and job status
Lifecycle Controller Integration ― Best Practices Specification 17 After the job is complete in Automated Task Application (previously SSM), the job status is immediately updated in the job store. The job is moved immediately to the Completed state once it is complete in the Automated Task Applicati...
Page 18 - 1G and 12G compatibility
Lifecycle Controller Integration ― Best Practices Specification 18 1.7.3 11G and 12G compatibility Figure 3. Compatibility with 11G Workflows NOTE: Dotted lines denote the old behavior. Bold red line denotes the new behavior in 12G. The existing 11G workflows expect the RS status to be in RELOADING ...
Page 19 - GetRemoteServicesAPIStatus output descriptions
Lifecycle Controller Integration ― Best Practices Specification 19 1.7.4 GetRemoteServicesAPIStatus output descriptions Output parameter Name Possible values Description 0 (Rea dy) Lifecycle Controller Remote Services is ready to accept any web services request. 1 (No...
Page 20 - Reference Links
Lifecycle Controller Integration ― Best Practices Specification 20 1.8 Reference Links Web Services Interface Guide for Windows & linux http://www.delltechcenter.com/page/Lifecycle+Controller Profiles http://en.community.dell.com/techcenter/systems-management/w/wiki/1906.aspx PCI ID referenc...
Page 21 - Terms and Definitions
Lifecycle Controller Integration ― Best Practices Specification 21 2 Terms and Definitions 2.1 LC Lifecycle Controller 2.2 ENUMERATE Refers to WS-MAN ENUMERATE operation as described in Section 8.2 of DSP0226_V1.1 and Section 9.1 of DSP0227_V1.0 2.3 GET Refers to WS-MAN GET operation ...
Page 22 - Anomalous Algorithms and Descriptions
Lifecycle Controller Integration ― Best Practices Specification 22 3 Anomalous Algorithms and Descriptions 3.1 Setting CNA Bandwidth The recommended algorithm is to schedule jobs such that MinBandwidths are first reduced, and then increased. Essentially, delta values need to be sorted, and jobs sche...
Page 23 - Setting NIC String Attributes to Blank; Determine NIC Card
Lifecycle Controller Integration ― Best Practices Specification 23 winrm i ApplyAttributes http://schemas.dmtf.org/wbem/wscim/1/cim- schema/2/root/dcim/DCIM_iDRACCardService?SystemCreationClassName=DCIM_C omputerSystem+CreationClassName=DCIM_iDRACCardService+SystemName=DCIM:C omputerSystem+Name=DCIM...
Page 24 - List of Partitionable NIC Cards for LC2; iDRAC Telnet Attribute Enables SerialRedirection
Lifecycle Controller Integration ― Best Practices Specification 24 1) ENUMERATE the DCIM_NICView class and note the PCID, then look up in PCID table http://pciids.sourceforge.net/pci.ids 2) ENUMERATE the DCIM_NICString class and search for attribute ChipMdl . The CurrentValue parameter will contain ...
Page 25 - Never Unplug Hardware During Updates
Lifecycle Controller Integration ― Best Practices Specification 25 Recommendation: Change the Telnet attributes prior to setting the SerialRedirection.Enable attribute. Or, if using input XML, have the Telnet attributes before the SerialRedirection.Enable attribute. 3.7 Never Unplug Hardware During ...
Page 26 - CQL filter benefits
Lifecycle Controller Integration ― Best Practices Specification 26 FirmwareVersion = 1.00.00 GUID = 3132334f-c0b7-3480-3510-00364c4c454 IPMIVersion = 2.0 InstanceID = iDRAC.Embedded.1-1#IDRACinfo LANEnabledState = 1 LastSystemInventoryTime = 20120121022852.000000+000 LastUpdateTime = 20120124015120....
Page 28 - Using Special Characters in Usernames
Lifecycle Controller Integration ― Best Practices Specification 28 1. Username 2. Password 3. <other attributes> This ordering is applicable to both ApplyAttributes() and SetAttributes() iDRAC methods. Use the reverse order when clearing/disabling the account. 3.11 How to Determine if Server i...
Page 30 - How to Determine if the System is Blade, Tower, or Rack
Lifecycle Controller Integration ― Best Practices Specification 30 3.14 How to Determine if the System is Blade, Tower, or Rack Dell has been officially using “M”, “T” and “R” letters in the Model name to distinguish between “Modular”, “Tower” and “Rack” server respectively for the past couple of ge...
Page 32 - Workflows
Lifecycle Controller Integration ― Best Practices Specification 32 tftp://[IP ADDRESS]/[PATH TO FILE.exe] ftp://[IP ADDRESS]/[PATH TO FILE.exe] 4 Workflows The Best Practice Guide provides the detailed step-by-step Lifecycle Controller WSMAN API interactions and algorithmic descriptions needed to im...
Page 33 - GET; RAID Stacking with BIOS Attributes Using Setupjobqueue
Lifecycle Controller Integration ― Best Practices Specification 33 F) AssignSpare(): Create dedicated hotspare using Create VD instanceID [ReturnValue=0]. G) AssignSpare(): Create global hotspare [ReturnValue=0]. H) CreateRAIDConfigJob(): Apply steps D) – F) [ReturnValue=4096]. I) Poll jobstatus for...
Page 35 - Boot to Network ISO
Lifecycle Controller Integration ― Best Practices Specification 35 a. HotSpareStatus parameter of 2, indicates global hotspare b. HotSpareStatus parameter of 1, indicates dedicated hotspare NOTE: H200 controller is unique in that it always returns 2 for both dedicated and global hotspares P) ENUMERA...
Page 36 - Boot to ISO from vFlash
Lifecycle Controller Integration ― Best Practices Specification 36 K) RequestMonoSystemStateChange(): [ReturnValue=0]. NOTE : Modular systems (i.e. M610, M710, etc.) use RequestModSystemStateChange(). 4.4 Boot to ISO from vFlash This workflow boots the host system from an ISO image located on the vF...
Page 37 - Set Hard Disk Drive to ‘first’ in Boot Order
Lifecycle Controller Integration ― Best Practices Specification 37 N) DetachISOFromVFlash(): [ReturnValue=0]. O) DeleteISOFromVFlash(): [ReturnValue=0]. P) RequestMonoSystemStateChange(): Reboot to finish removal of OS [ReturnValue=0]. NOTE : Modular systems (i.e. M610, M710, etc.) use RequestModSys...
Page 38 - Export (backup) iImage to CIFS or NFS Share
Lifecycle Controller Integration ― Best Practices Specification 38 H) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN commands. The GetRSStatus() method or the GetRemoteServicesAPIStatus() method may be used depending on the version of the LC Manag...
Page 39 - Generation and Later Version of
Lifecycle Controller Integration ― Best Practices Specification 39 Prerequisites for script: Valid and enabled vFlash card for licensing Set script variables by editing script Script: Backup_CIFS_NFS.win A) The Lifecycle Controller remote service must be in a “ready” state before executing any o...
Page 40 - Import (Restore) Image from CIFS or NFS Share
Lifecycle Controller Integration ― Best Practices Specification 40 Note: The Automatic Backup schedule can be cleared by using the ClearBackupSchedule() function. The Automatic Backup feature can be disabled by setting the “Automatic Backup Feature” attribute to “Disabled” using the SetLCAttribute()...
Page 41 - iDRAC Firmware DUP uUpdate from CIFS or TFTP Share
Lifecycle Controller Integration ― Best Practices Specification 41 B) RestoreImage(): Performs restore operation [ReturnValue=4096]. C) Poll jobstatus for Completed: GET the InstanceID of from B). See section 2.3 for a definition of GET. 4.11 iDRAC Firmware DUP uUpdate from CIFS or TFTP Share This w...
Page 42 - BIOS Firmware DUP Update from CIFS or TFTP Share
Lifecycle Controller Integration ― Best Practices Specification 42 I) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN commands. The GetRSStatus() method or the GetRemoteServicesAPIStatus() method may be used depending on the version of the LC Manag...
Page 43 - USC Firmware DUP Update from CIFS or TFTP Share; Automatic Firmware Update (12
Lifecycle Controller Integration ― Best Practices Specification 43 4.13 USC Firmware DUP Update from CIFS or TFTP Share This workflow performs an update of the USC (LC) firmware from a DUP by first downloading the DUP to the system, then applying the update. By design, the update of the USC firmware...
Page 44 - Update from Repository (12
Lifecycle Controller Integration ― Best Practices Specification 44 Applies to: LC2 1.3.0+ and iDRAC 1.50.50 + Prerequisites for script: A network share (CIFS/NFS) to access the repository of firmware updates A software license for 12 th Generation Dell PowerEdge servers Set script variab...
Page 45 - SHENOY TODO: the rest of the content; Firmware Rollback (12; Remote Diagnostics (12
Lifecycle Controller Integration ― Best Practices Specification 45 B) InstallFromRepository(): Point to a network share where a catalog file is available and initiate firmware updates from this repository. C) SHENOY TODO: the rest of the content D) The Lifecycle Controller remote service must be in ...
Page 54 - iSCSI boot using Intel (12
Lifecycle Controller Integration ― Best Practices Specification 54 G) ChangeBootSourceState(): Use InstanceID=IPL EnabledState=1 source=(instanceID from F) H) GetBootSourceSettings(): ENUMERATE the DCIM_BootSourceSetting class to collect information about the boot sources. See section 2.2 for a defi...
Page 56 - IO Identity
Lifecycle Controller Integration ― Best Practices Specification 56 I) GetBootSourceSettings(): ENUMERATE the DCIM_BootSourceSetting class to collect information about the NIC FQDDs. See section 2.2 for a definition of ENUMERATE . Loop through boot sources to confirm the NIC FQDD and “BCV” are in a...
Page 57 - Export LC log
Lifecycle Controller Integration ― Best Practices Specification 57 A) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN commands. The GetRSStatus() method or the GetRemoteServicesAPIStatus() method may be used depending on the version of the LC Manag...
Page 60 - FCoE boot using Intel (12
Lifecycle Controller Integration ― Best Practices Specification 60 G) GetBootSourceSettings(): ENUMERATE the DCIM_BootSourceSetting class to collect information about the boot sources. See section 2.2 for a definition of ENUMERATE. H) Enable the HD boot source I) ChangeBootSourceState(): Use Instanc...
Page 70 - Configurable Boot to Network ISO
Lifecycle Controller Integration ― Best Practices Specification 70 Script: ImportSystemConfiguration.win A) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN commands. The GetRemoteServicesAPIStatus() method may be used depending on the version of th...
Page 71 - Base Metrics Profile Use Cases
Lifecycle Controller Integration ― Best Practices Specification 71 Place applicable ISO image in applicable network share Set script variables by editing script Script: BootToNetworkISO.win A) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN com...
Page 72 - BIOS and Boot Management Profile Use Cases
Lifecycle Controller Integration ― Best Practices Specification 72 C) Search for “RegisteredName= Role Based Authorization” and note its instanceID to use in step D) D) GET the applicable instance using the InstanceID from C). See Section 2.3 for a definition of GET. [LC1.5.0/LC1.5.1] GetCIMRegister...
Page 73 - List all BIOS Attributes; Delete Pending BIOS Configuration
Lifecycle Controller Integration ― Best Practices Specification 73 Results for the InstanceID of DCIM:BIOSandBootManagement:1.0.0 shown below. If no instance is returned, the profile is not supported. DCIM_LCRegisteredProfile AdvertiseTypeDescriptions = WS-Identify AdvertiseTypeDescriptions = Intero...
Page 74 - Inventory of boot Configurations in System; Get the First boot Configuration’s Information
Lifecycle Controller Integration ― Best Practices Specification 74 Script: DeletePendingBIOSConfiguration.win A) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN commands. The GetRSStatus() method or the GetRemoteServicesAPIStatus() method may be us...
Page 75 - Inventory of boot Sources in System; Changing boot Order by Instance
Lifecycle Controller Integration ― Best Practices Specification 75 B) GetBootConfigSetting(): GET the DCIM_BootConfigSetting instance using the InstanceID=IPL . See Section 2.3 for a definition of GET. The instance of DCIM_BootConfigSetting that contains the information on the first boot configurati...
Page 76 - One Time boot
Lifecycle Controller Integration ― Best Practices Specification 76 b. CreateConfigJob(): Creates jobID and applies configuration [ReturnValue=4096] C) GetBootConfigSettings(): ENUMERATE the DCIM_BootConfigSetting class to identify the ElementName field containing BootSeq and corresponding InstanceID...
Page 77 - CPU Profile Use Cases
Lifecycle Controller Integration ― Best Practices Specification 77 C) GetBootSourceSettings(): ENUMERATE the DCIM_BootSourceSetting class and identify the desired one time boot source: vFlash, IPL, or UEFI D) ChangeBootOrderByInstanceID(): using instanceID = OneTime and Source=instanceID from C) E) ...
Page 78 - Inventory of CPUs in System; Get the First CPU’s Information; Event Filter Profile Use Cases
Lifecycle Controller Integration ― Best Practices Specification 78 ProfileRequireLicenseStatus = LICENSED RegisteredName = CPU RegisteredOrganization = 1 RegisteredVersion = 1.0.0 7.2 Inventory of CPUs in System Use the following procedure below to list the inventory of all CPUs in the system. Appli...
Page 79 - Get Event Filter Configuration Service Views
Lifecycle Controller Integration ― Best Practices Specification 79 Applies to: LC2+ Prerequisites for script: none Script: GetEventFilterProfile.win A) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN commands. GetRemoteServicesAPIStatus(): B) GetLC...
Page 80 - Get Event Filter Views; Get Single Event Filter’s Information; Set Event Filters by Category
Lifecycle Controller Integration ― Best Practices Specification 80 8.3 Get Event Filter Views Enumerate the DCIM_EventFilter class to view all available instances of the class. Applies to: LC2+ Prerequisites for script: none Script: GetEventFilterViews.win A) The Lifecycle Controller remote service ...
Page 81 - Set Event Filters by InstanceID; iDRAC Card Profile Use Cases
Lifecycle Controller Integration ― Best Practices Specification 81 A) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN commands. GetRemoteServicesAPIStatus(): B) SetEventFilterByCategory(): Sets the action and notifications for the event filters 8.6...
Page 82 - Get all iDRAC Card Attributes; Inventory of iDRAC Cards in System
Lifecycle Controller Integration ― Best Practices Specification 82 Results for the InstanceID of DCIM:iDRACCard:1.0.0 shown below. If no instance is returned, the profile is not supported. DCIM_LCRegisteredProfile AdvertiseTypeDescriptions = WS-Identify AdvertiseTypeDescriptions = Interop Namespace ...
Page 83 - Get the First iDRAC Card’s Information; Set Apply iDRAC Card Attribute(s) Immediately
Lifecycle Controller Integration ― Best Practices Specification 83 Applies to: LC1.5.0+ Prerequisites for script: none Script: GetiDRACCardViews.win A) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN commands. The GetRSStatus() method or the GetRem...
Page 84 - Schedule a set iDRAC Card Attribute(s) Operation; Fan Profile Use Cases
Lifecycle Controller Integration ― Best Practices Specification 84 C) Confirm the IsReadOnly field is set to false D) ApplyAttributes(): Invoke method to apply attribute(s) E) GetiDRACCardAttributes(): ENUMERATE the DCIM_iDRACCardAttribute class to view all available attributes and confirm the chang...
Page 85 - Inventory of Fans in System; Get the First Fan’s Information
Lifecycle Controller Integration ― Best Practices Specification 85 B) GetLCRegisteredProfiles(): ENUMERATE the DCIM_LCRegisteredProfile class to view all registered profiles. See section 2.2 for a definition of ENUMERATE . C) Search for “RegisteredName=Fan” and note its instanceID to use in step D) ...
Page 86 - Persistent Storage Profile Use Cases; Inventory of Virtual Flash (vFlash) Media
Lifecycle Controller Integration ― Best Practices Specification 86 A) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN commands. The GetRSStatus() method or the GetRemoteServicesAPIStatus() method may be used depending on the version of the LC Manag...
Page 87 - Get the First vFlash’s Attribute Information; Inventory of Partitions on the Virtual Flash Media
Lifecycle Controller Integration ― Best Practices Specification 87 Applies to: LC1.5.0+ Prerequisites for script: none Script: GetvFlashViews.win A) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN commands. The GetRSStatus() method or the GetRemote...
Page 88 - Initialize Virtual Flash Media
Lifecycle Controller Integration ― Best Practices Specification 88 11.5 Initialize Virtual Flash Media This method is used to initialize or format the virtual flash media device. Applies to: LC1.5.0+ Prerequisites for script: none Script: InitVFlash.win A) The Lifecycle Controller remote service mus...
Page 89 - Create new Partition on Virtual Flash (vFlash) Media; Create new Partition Using Image
Lifecycle Controller Integration ― Best Practices Specification 89 Script: DisableVFlash.win A) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN commands. The GetRSStatus() method or the GetRemoteServicesAPIStatus() method may be used depending on t...
Page 90 - Delete Existing Partition; Format Existing Partition
Lifecycle Controller Integration ― Best Practices Specification 90 B) GetVFlashPartitionViews(): ENUMERATE the DCIM_OpaqueManagementData class to view the current partitions. See section 2.2 for a definition of ENUMERATE . C) CreatePartitionUsingImage(): Invokes the CreatePartitionUsingImage method ...
Page 91 - Modify Existing Partition; Attach Partition
Lifecycle Controller Integration ― Best Practices Specification 91 D) Poll jobstatus for Completed: GET the InstanceID of from C). See section 2.3 for a definition of GET. E) GetVFlashPartitionViews(): ENUMERATE the DCIM_OpaqueManagementData class to view the current partitions and confirm successfu...
Page 92 - Detach Partition; Export Data from Existing Partition
Lifecycle Controller Integration ― Best Practices Specification 92 D) GetVFlashPartitionViews(): ENUMERATE the DCIM_OpaqueManagementData class to view the current partitions and confirm successful operation. See section 2.2 for a definition of ENUMERATE . 11.14 Detach Partition This method is used t...
Page 93 - Power State Management Profile Use Cases
Lifecycle Controller Integration ― Best Practices Specification 93 12 Power State Management Profile Use Cases 12.1 Discovery of Power State Management Profile Support Use the following procedure below to confirm the existence of Power State Management profile support. NOTE: Prior to LC2.0.0, this p...
Page 94 - Profile Registration Profile Use Cases; Simple RAID Profile Use Cases
Lifecycle Controller Integration ― Best Practices Specification 94 13 Profile Registration Profile Use Cases 13.1 Discovery of Profile Registration Profile Support Use the following procedure below to confirm the existence of profile registration profile support. Applies to: LC2+ Prerequisites for s...
Page 95 - Inventory of RAID Controllers in System
Lifecycle Controller Integration ― Best Practices Specification 95 Prerequisites for script: none Script: GetRAIDProfile.win A) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN commands. The GetRSStatus() method or the GetRemoteServicesAPIStatus() m...
Page 96 - Get the first RAID Controller’s Information; Inventory of Virtual and Physical Disk Drives in System; Apply Pending Values for a RAID Configuration
Lifecycle Controller Integration ― Best Practices Specification 96 14.3 Get the first RAID Controller’s Information Use the following procedure to get a single RAID controller instance. The URI for getting particular instance information is deterministic (i.e the InstanceID will be unique for each i...
Page 97 - Clear old Configuration from Newly Added HDD; Determine Available RAID Configurations
Lifecycle Controller Integration ― Best Practices Specification 97 Prerequisites for script: Set desired RAID FQDD by editing script Script: DeletePendingRAIDConfiguration.win A) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN commands. The GetRS...
Page 99 - Create a Virtual Disk; Assign a Physical Disk Drive as a Hot-spare
Lifecycle Controller Integration ― Best Practices Specification 99 Set desired RAID controller FQDD, physical disk FQDDs, and RAID level parameters by editing script Script: CheckVDValues.win A) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN com...
Page 100 - Delete all Virtual Disks and Unassign all Hot-spares
Lifecycle Controller Integration ― Best Practices Specification 100 The following script can be used to delete an existing virtual disk from a system. Applies to: LC1.5.0+ Prerequisites for script: Set desired RAID virtual disk FQDD by editing script Script: DeleteVirtualDisk.win A) The Lifecycle ...
Page 101 - Convert Physical Disk Drives to non-RAID State
Lifecycle Controller Integration ― Best Practices Specification 101 DCIM_PhysicalDiskView.RAIDStatus property of that physical disk should reflect the new state. One can expect this operation to take up to 15 minutes depending on system configuration. Applies to: LC2+ Prerequisites for script: Set...
Page 102 - Record Log Profile Use Cases
Lifecycle Controller Integration ― Best Practices Specification 102 Set desired RAID physical disk FQDD by editing script Script: ConvertToNonRAID.win A) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN commands. GetRemoteServicesAPIStatus() B) Ge...
Page 103 - List Lifecycle Record Logs; List Lifecycle Record Log Capabilities
Lifecycle Controller Integration ― Best Practices Specification 103 B) GetLCRegisteredProfiles(): ENUMERATE the DCIM_LCRegisteredProfile class to view all registered profiles. See section 2.2 for a definition of ENUMERATE . C) Search for “RegisteredName=Record log” and note its instanceID to use in ...
Page 104 - List Lifecycle Log Entries; Set and get Comment in Lifecycle Log Entries
Lifecycle Controller Integration ― Best Practices Specification 104 Script: GetLCRecordLogCapabilities.win A) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN commands. The GetRSStatus() method or the GetRemoteServicesAPIStatus() method may be used ...
Page 105 - List System Event Record Logs; List System Event Record Log Capabilities
Lifecycle Controller Integration ― Best Practices Specification 105 A) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN commands. The GetRSStatus() method or the GetRemoteServicesAPIStatus() method may be used depending on the version of the LC Mana...
Page 106 - List System Event Log Entries; Discovery of RBAP Profile Support
Lifecycle Controller Integration ― Best Practices Specification 106 The instance information of all available SELRecordLogCapabilities will be returned 15.8 List System Event Log Entries Use the following procedure below to list the inventory of all SELLogEntry instances in the system. Applies to: L...
Page 107 - Discovery of Users with Assigned LAN Privileges; Discovery of Users with Assigned Serial over LAN Privileges
Lifecycle Controller Integration ― Best Practices Specification 107 [LC2.0.0] GetLCRegisteredProfile(): GET the applicable instance using the InstanceID from C). See Section 2.3 for a definition of GET. Results for the InstanceID of DCIM:RoleBasedAuthorization:1.0.0 shown below. If no instance is re...
Page 108 - Discovery of users with Assigned CLP Privileges; Service Processor Profile Use Cases
Lifecycle Controller Integration ― Best Practices Specification 108 A) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN commands. The GetRSStatus() method or the GetRemoteServicesAPIStatus() method may be used depending on the version of the LC Mana...
Page 109 - Simple NIC Profile Use Cases
Lifecycle Controller Integration ― Best Practices Specification 109 D) GetLCRegisteredProfile(): GET the DCIM_LCRegisteredProfile instance using the InstanceID from C). See Section 2.3 for a definition of GET. Results for the InstanceID of DCIM: SystemInfo:1.0.0 shown below. If no instance is return...
Page 110 - Inventory of NICs in System; Get the First NIC’s Information; List all NIC Attributes
Lifecycle Controller Integration ― Best Practices Specification 110 ProfileRequireLicense = Remote Inventory ProfileRequireLicense = Device Monitoring ProfileRequireLicenseStatus = LICENSED ProfileRequireLicenseStatus = LICENSED ProfileRequireLicenseStatus = LICENSED RegisteredName = Simple NIC Regi...
Page 111 - Delete Pending NIC Values; Discovery of NIC Capabilities
Lifecycle Controller Integration ― Best Practices Specification 111 Prerequisites for script: none Script: GetAllNICAttributes.win A) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN commands. The GetRSStatus() method or the GetRemoteServicesAPIStat...
Page 112 - Software Update Profile Use Cases
Lifecycle Controller Integration ― Best Practices Specification 112 A) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN commands. The GetRSStatus() method or the GetRemoteServicesAPIStatus() method may be used depending on the version of the LC Mana...
Page 113 - Job Control Profile Use Cases
Lifecycle Controller Integration ― Best Practices Specification 113 D) GetLCRegisteredProfile(): GET the DCIM_LCRegisteredProfile instance using the InstanceID from C). See Section 2.3 for a definition of GET. Results for the InstanceID of DCIM: SoftwareUpdate:1.0.0 shown below. If no instance is re...
Page 114 - List all Jobs in Job Store; Get a Job’s Information
Lifecycle Controller Integration ― Best Practices Specification 114 ProfileRequireLicense = Remote Firmware Configuration ProfileRequireLicenseStatus = LICENSED RegisteredName = Job Control RegisteredOrganization = 1 RegisteredVersion = 1.2.0 20.2 List all Jobs in Job Store Getting all the jobs in t...
Page 115 - Delete one Job from job store
Lifecycle Controller Integration ― Best Practices Specification 115 [LC1.5.x and prior] Running this command also restarts remote services. Applies to: LC1.3.0 Prerequisites for script: none Script: DeleteAllJobs.win A) The Lifecycle Controller remote service must be in a “ready” state before execut...
Page 116 - Inventory of Memory in System
Lifecycle Controller Integration ― Best Practices Specification 116 Prerequisites for script: none Script: GetMemoryProfile.win A) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN commands. The GetRSStatus() method or the GetRemoteServicesAPIStatus(...
Page 117 - Get the first Memory’s Information; PCI Device Profile Use Cases
Lifecycle Controller Integration ― Best Practices Specification 117 21.3 Get the first Memory’s Information Use the following procedure to get a single memory instance. The URI for getting particular instance information is deterministic (i.e the InstanceID will be unique for each instance). Applies...
Page 118 - Sensors Profile Use Cases
Lifecycle Controller Integration ― Best Practices Specification 118 NOTE: 12G example output shown below DCIM_LCRegisteredProfile AdvertiseTypeDescriptions = WS-Identify AdvertiseTypeDescriptions = Interop Namespace AdvertiseTypes = 1 AdvertiseTypes = 1 InstanceID = DCIM:PCIDevice:1.0.0 OtherRegiste...
Page 119 - Inventory of Sensor in System; Sensor Thresholds
Lifecycle Controller Integration ― Best Practices Specification 119 AdvertiseTypes = 1 AdvertiseTypes = 1 InstanceID = DCIM:Sensors:1.0.0 OtherRegisteredOrganization = DCIM ProfileRequireLicense = Device Monitoring ProfileRequireLicenseStatus = LICENSED RegisteredName = Sensors RegisteredOrganizatio...
Page 120 - Base Server and Physical Asset Profile Use Cases
Lifecycle Controller Integration ― Best Practices Specification 120 B) GetSensorViews(): ENUMERATE the CIM_Sensor class to view all instances. Check the instance of either DCIM_PSNumericSensor and DCIM_NumericSensor to see if there are any settable thresholds C) SetSensorThreshold() : SET the DCIM_P...
Page 121 - Discovery of Base Server and Physical Asset Profile Support
Lifecycle Controller Integration ― Best Practices Specification 121 24.2 Discovery of Base Server and Physical Asset Profile Support [LC1.5.1] There is not an LC registered Base Server and Physical Asset Profile prior to LC2.0. There are however, separate Base Server and Physical Asset profiles. Use...
Page 122 - List all CIM Profiles; Video Profile Use Cases
Lifecycle Controller Integration ― Best Practices Specification 122 InstanceID = DCIM:PhysicalAssetRegisteredProfile:1 OtherRegisteredOrganization RegisteredName = Physical Asset RegisteredOrganization = 2 RegisteredVersion = 1.0.0 24.3 List all CIM Profiles Use the following procedure below to list...
Page 123 - Inventory of Video in System; Get the first Video Instance’s Information
Lifecycle Controller Integration ― Best Practices Specification 123 Results for the InstanceID of DCIM:Video:1.0.0 shown below. If no instance is returned, the profile is not supported. DCIM_LCRegisteredProfile AdvertiseTypeDescriptions = WS-Identify AdvertiseTypeDescriptions = Interop Namespace Adv...
Page 124 - License Management Profile Use Cases
Lifecycle Controller Integration ― Best Practices Specification 124 Script: GetVideoView.win A) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN commands. The GetRSStatus() method or the GetRemoteServicesAPIStatus() method may be used depending on t...
Page 125 - Power Supply Profile Use Cases
Lifecycle Controller Integration ― Best Practices Specification 125 ProfileRequireLicenseStatus = LICENSED RegisteredName = License Management RegisteredOrganization = 1 RegisteredVersion = 1.0.0 27 Power Supply Profile Use Cases 27.1 Discovery of Power Supply Profile Support Use the following proce...
Page 126 - Inventory of Power Supply Units (PSUs) in System; Get the first PSU’s Information; Get MAC Information
Lifecycle Controller Integration ― Best Practices Specification 126 27.2 Inventory of Power Supply Units (PSUs) in System Use the following procedure below to list the inventory of all power supplies in the system. Applies to: LC1.5.0+ Prerequisites for script: none Script: GetPowerSupplyViews.win A...
Page 127 - Get Blade Power; System Info Profile Use Cases
Lifecycle Controller Integration ― Best Practices Specification 127 Applies to: LC1.5.0 Prerequisites for script: none Script: CollectBlades.win A) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN commands. The GetRSStatus() method or the GetRemoteS...
Page 128 - Inventory of System Info View
Lifecycle Controller Integration ― Best Practices Specification 128 A) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN commands. The GetRSStatus() method or the GetRemoteServicesAPIStatus() method may be used depending on the version of the LC Mana...
Page 129 - Get the first System info View’s Information; Inventory of all System Attributes in System
Lifecycle Controller Integration ― Best Practices Specification 129 28.3 Get the first System info View’s Information Use the following procedure to get a single system info instance. The URI for getting particular instance information is deterministic (i.e the InstanceID will be unique for each ins...
Page 130 - Get a Single System String Attribute; Setting and Applying System Attributes
Lifecycle Controller Integration ― Best Practices Specification 130 28.5 Get a Single System String Attribute Use the following procedure below to get a single system attribute in the system. Applies to: LC2+ Prerequisites for script: Set desired instanceID by editing script Script: GetSystemString....
Page 131 - Apply Pending System Attribute Values
Lifecycle Controller Integration ― Best Practices Specification 131 E) CreateSystemConfigJob(): Apply the pending values, pass ScheduledStartTime of TIME_NOW, to invoke the reboot to apply the new attribute values immediately. NOTE: This method also allows the user to schedule when to apply the attr...
Page 132 - Software Inventory Profile Use Cases; Discovery of Software Inventory Profile Support
Lifecycle Controller Integration ― Best Practices Specification 132 29 Software Inventory Profile Use Cases 29.1 Instance Diagram Figure 4. Software Inventory: Instance Diagram 29.2 Discovery of Software Inventory Profile Support Use the following procedure below to confirm the existence of Software...
Page 133 - Inventory of Software in System; Get the Installed BIOS Firmware Inventory
Lifecycle Controller Integration ― Best Practices Specification 133 D) GetLCRegisteredProfile(): GET the DCIM_LCRegisteredProfile instance using the InstanceID from C). See Section 2.3 for a definition of GET. Results for the InstanceID of DCIM:SoftwareInventory:1.0.0 shown below. If no instance is ...
Page 134 - Get the Available iDRAC Firmware Inventory
Lifecycle Controller Integration ― Best Practices Specification 134 Prerequisites for script: none Script: GetInstalledBIOSView.win A) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN commands. The GetRSStatus() method or the GetRemoteServicesAPISta...
Page 135 - Simple Identity Management Profile Use Cases
Lifecycle Controller Integration ― Best Practices Specification 135 30 Simple Identity Management Profile Use Cases 30.1 Discovery of Simple Identity Management Profile Support There is currently not a registered Simple Identity Management Profile prior to LC2. Use the following procedure below to c...
Page 136 - LC Management Profile Use Cases
Lifecycle Controller Integration ― Best Practices Specification 136 31 LC Management Profile Use Cases 31.1 Discovery of LC Management Profile Support Use the following procedure below to confirm the existence of LC Management profile support. Applies to: LC1.5.0+ Prerequisites for script: none Scri...
Page 137 - Inventory of LC Management Attributes in system
Lifecycle Controller Integration ― Best Practices Specification 137 31.2 Inventory of LC Management Attributes in system Use the following procedure below to view all available LC attributes and possible values in the system. Applies to: LC1.5.0+ Prerequisites for script: none Script: GetAllLCAttrib...
Page 138 - Check Version of Lifecycle Controller (LC); Get “Part Firmware Update” Attribute
Lifecycle Controller Integration ― Best Practices Specification 138 F) Poll jobstatus for Completed: GET the InstanceID of from E). See section 2.3 for a definition of GET. NOTE: LC1.x polls for ‘COMPLETED’, while LC2 polls for ‘Completed’ G) GetLCEnumerations(): ENUMERATE the DCIM_LCEnumeration cla...
Page 139 - Check vFlash License Enablement; Set Configuration to “Auto Discovery Factory Defaults”
Lifecycle Controller Integration ― Best Practices Specification 139 The instance containing the attribute will be returned. 31.6 Check vFlash License Enablement Use the following procedure to get the Part Firmware Update attribute. The URI for getting particular instance information is deterministic...
Page 140 - Clear Provisioning Server; Replace Auto Discovery Public Key
Lifecycle Controller Integration ― Best Practices Specification 140 Script: SetAutoDiscoveryFactoryDefaults.win A) The Lifecycle Controller remote service must be in a “ready” state before executing any other WSMAN commands. The GetRSStatus() method or the GetRemoteServicesAPIStatus() method may be ...
Page 141 - Delete auto Discovery Public Key
Lifecycle Controller Integration ― Best Practices Specification 141 31.10 Replace auto Discovery Client Certificate, Private key and Password Refer to Web Service Interface Guide section 12.7. 31.11 Delete auto Discovery Public Key Refer to Web Service Interface Guide section 12.11. 31.12 Delete aut...
Page 142 - Export and View the Content of the Lifecycle Log
Lifecycle Controller Integration ― Best Practices Specification 142 31.16 Export and View the Content of the Lifecycle Log See section 3.16 of this document. 31.17 Export and View the Current Hardware Inventory This workflow exports the hardware inventory to either an NFS or CIFS share. Approximate ...
Page 143 - OS Deployment Profile Use Cases
Lifecycle Controller Integration ― Best Practices Specification 143 B) ExportFactoryConfiguration(): Invokes the export operation [ReturnValue=4096] NOTE : The user must set applicable IP address, username, password, filename, and workgroup of the network share. C) Poll jobstatus for Completed: GET ...
Page 144 - Unpack and Attach Drivers; One-time ISO boot Skip
Lifecycle Controller Integration ― Best Practices Specification 144 32.2 Unpack and Attach Drivers See section 4.3 Boot to networkISO and 4.4 Boot to ISO from vFlash for a comprehensive example. 32.3 Connect and Attach Network ISO Image See section 4.3 Boot to networkISO and 4.4 Boot to ISO from vFl...
Page 145 - Connect and Attach Network ISO Image; as a USB CD-ROM device via RFS; Get RF ISO Image connection Status
Lifecycle Controller Integration ― Best Practices Specification 145 32.7 Remote File Share (RFS) Use Cases 32.7.1 Connect and Attach Network ISO Image as a USB CD-ROM device via RFS USB end point. Following sequence of CIM Operations shall be used to connect and attach network ISO Image from the spe...
Page 147 - Appendix; Purpose; Command line
Lifecycle Controller Integration ― Best Practices Specification 147 33 Appendix 33.1 PYTHON scripts README 33.1.1 Purpose The goal of recite.py is to provide a simple and fast interface for the Dell Lifecycle Controller API. It has an interactive mode that is useful to run one off commands against a...
Page 148 - Commands
Lifecycle Controller Integration ― Best Practices Specification 148 python recite.py IP=username:[email protected] Set $IP, $LOGIN and $PASS with a single assignment python recite.py IP=username:[email protected],username:[email protected] Spawn two instances with specified $IP, $LOGIN and $PASS pyt...
Page 150 - Settable variables
Lifecycle Controller Integration ― Best Practices Specification 150 In order to ignore such errors and resume execution, prepend command with a -. For example: -Find InstanceID $id -GetPhysicalDiskViews 33.1.5 Settable variables The following variables are loaded from environment variables if availa...
Page 151 - Internal variables
Lifecycle Controller Integration ― Best Practices Specification 151 Set $USLEEP 20 $UTIMEOUT Default total delay in seconds used by until commands before giving up. Set $UTIMEOUT 900 $VERBOSE Control level of output from recite.py Set $VERBOSE x where x is: 0: Quiet 1: WS-MAN 2: Full 33.1.6 Internal...
Page 152 - System check information; Inventory information
Lifecycle Controller Integration ― Best Practices Specification 152 33.2 System check information 33.2.1 Check System Power State - System power status is available from CMC (racadm/WS-MAN), iDRAC (racadm) and LC. o Enumerate the CIM_ComputerSystem class to get power status from LC as described in s...
Page 153 - Poll LC jobs information
Lifecycle Controller Integration ― Best Practices Specification 153 33.3.2 Software inventory - Enumerate DCIM_SoftwareIdentity class for all firmware version levels 33.3.3 BIOS inventory - Enumerate DCIM_BIOSEnumeration class for BIOS attributes of interest 33.3.4 Boot order inventory - Enumerate D...
Page 154 - POST; SSM
Lifecycle Controller Integration ― Best Practices Specification 154 described in section 5.2.1 - The total time taken for reboot depends on the RebootJobType specified. o For a machine powered down, it shouldn’t take more than 30 seconds to power up. o For a running machine, timeout depends on the R...
Page 155 - Check refreshed data; iSCSI boot information
Lifecycle Controller Integration ― Best Practices Specification 155 33.4.4.3 Inventory - After all jobs are executed, SSM will re-inventory the system and signal the iDRAC to re-sync its database. - The total timeout for SSM should include 1 minute to inventory each NIC FQDD on the target system aft...