ZERO-TOUCH, BARE-METAL SERVER PROVISIONING USING THE DELL EMC IDRAC WITH LIFECYCLE CONTROLLER AUTO CONFIG This technical white paper provides an overview of the Auto Config feature available in the iDRAC with Lifecycle Controller. Examples about configuring Auto Config by using graphical user interface (GUI), RACADM, Redfish, and WS-Man commands are discussed. A list of tentative issues and resolutions is also provided.
Revisions Date Description June 2017 Initial release November 2017 Corrected typos in note on page 38 June 2018 Updated to include information about the firmware repository updates as part of the Server Configuration Profile (SCP) file and the addition of support for JSON format SCP files by iDRAC7 and iDRAC8 2.60.60.60 versions. The information in this publication is provided “as is.” Dell Inc.
Zero-touch, bare-metal server provisioning using the Dell EMC iDRAC with Lifecycle Controller Auto Config
Contents Revisions.............................................................................................................................................................................2 Executive summary.............................................................................................................................................................5 1.1 Components of the Auto Config feature in iDRAC with Lifecycle Controller ......................................................6 1.1.
Executive summary While the ever-growing requirement for reducing redundant processes and increasing availability of business-critical services is evident, it is always challenging for the system administrators and datacenter managers to scale out their IT environment. By using DHCP provisioning, the iDRAC with Lifecycle Controller provides the Auto Config feature to seamlessly and effectively onboard servers that are configured in extremely less time.
1.1 Components of the Auto Config feature in iDRAC with Lifecycle Controller The Auto Config feature in iDRAC with Lifecycle Controller 1.1.1 Audience This technical white paper is intended for server administrators, architects, and other stake holders in decision making capacities. The reader is expected to have basic knowledge about server management applications and troubleshooting techniques.
2 Introduction Importance of Auto Config in PowerEdge servers 7 Zero-touch, bare-metal server provisioning using the Dell EMC iDRAC with Lifecycle Controller Auto Config
2.1.1 Interactions between components in Auto Config architecture The sequence of events performed on a single Dell server iDRAC interacting with the DHCP server for that pool is shown in the figure. This sequence is repeated for all Dell servers in the pool that are enabled for Auto Config.
2.1.2 DHCP provisioning options The AutoConfig DHCP Provisioning attribute for an iDRAC can be set to one of four values. This attribute depends on DHCP configuration and can be set only if it is enabled. The values set for the attribute can be viewed by using any user privilege level. However, the admin or config iDRAC privileges are required to enable or disable the attribute. Default state. In this state, the iDRAC does not request for option 43 from the DHCP server, and the feature is turned off.
2.1.3 DHCP—current and new configuration options Current settings Disable Enable once Enable once after reset Enable always 2.1.
2.1.5 iDRAC interfaces to enable Auto Config By default, the Auto Config feature is disabled in all servers. However, while ordering, you can request for enabling this feature by default at the factory settings. If not enabled, you can enable it by using the iDRAC GUI, RACADM, iDRAC RESTful API, and WS-Man interfaces as discussed in the following sections. You can also refer to the iDRAC User’s Guide available on the support site and TechCenter. 2.1.
1. Enumerate the Auto Config settings racadm>>get idrac.nic.autoconfig racadm get idrac.nic.autoconfig [Key=idrac.Embedded.1#NIC.1] AutoConfig=Disabled 2. Set the Auto Config settings racadm>>set idrac.nic.autoconfig "enable once after reset" racadm set idrac.nic.autoconfig "enable once after reset" [Key=idrac.Embedded.1#NIC.1] Object value modified successfully 3. Validate the Auto Config settings racadm>>get idrac.nic.autoconfig racadm get idrac.nic.autoconfig [Key=idrac.Embedded.1#NIC.
Enable once after reset (2): Performs configuration after iDRAC is reset. Enable always (3): Always performs configuration Values = {“0”,”1”,”2”,”3”} To set NIC.1#AutoConfig by using WS-Man, use the ApplyAttribute method which will set the pending value, create a target configuration job, and then apply the change immediately. Here is an example WS-Man workflow by using the winrm command to set NIC.1#AutoConfig. In this workflow, the current value of NIC.
Job EndpointReference Address = http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous ReferenceParameters ResourceURI = http://schemas.dell.com/wbem/wscim/1/cimschema/2/DCIM_LifecycleJob SelectorSet Selector: InstanceID = JID_307869268181,cimnamespace = root/dcim ReturnValue = 4096 3. Verify the job status: C:\winrm get http://schemas.dmtf.org/wbem/wscim/1/cimschema/2/root/dcim/DCIM_LifecycleJob?InstanceID=JID_307869268181 r:https://192.168.0.
PossibleValues = Disabled, Enable Once, Enable Once After Reset, Enable Always Note: After the Auto Config process is started, a system configuration import job ID is created. For more information about how to query for the import job ID and check the configuration results, see WS-Man (winrm) workflow example using Auto Config server provisioning in a Windows Server environment.
3 Enabling Auto Config using iDRAC graphical user interface (GUI) The Network page on the iDRAC web GUI displays the Auto Config feature, enabling the selection of DHCP provisioning options. The Enable DHCP Provisioning option is available only if DHCP is enabled for IPv4. Select the values from the drop-down menu and restart the network to acquire the configuration file.
4. For iDRAC9: On the iDRAC home page, click iDRAC Settings Connectivity Network Auto Config.
5. Click Apply. The Network page is automatically refreshed. The selected value is listed under Auto Config. An example screen shot is given here.
Auto Config property selected on iDRAC9 GUI 19 Zero-touch, bare-metal server provisioning using the Dell EMC iDRAC with Lifecycle Controller Auto Config
After the Auto Config process is started, an import system configuration job ID is created. To query the job ID status, on the iDRAC7 or iDRAC8 GUI, click Overview Server Job Queue. The Job Queue page is automatically refreshed until the job ID is marked as completed. The following screen shots show the progress of the Auto Config import system configuration job.
iDRAC8 Auto Config import system configuration job completed iDRAC9 Auto Config import system configuration job completed 21 Zero-touch, bare-metal server provisioning using the Dell EMC iDRAC with Lifecycle Controller Auto Config
To view information about an import job: 1. Log in to the iDRAC GUI. 2. For iDRAC7 or iDRAC8: On the iDRAC home page, click Server LogsLifecycle Log Export. This will export the complete Lifecycle Log information. Using a text editor, open the log file and search for the import job ID, and then view the configuration results for the import job. The following screen shots show exporting the Lifecycle Log to a local file and using the WordPad editor to view the configuration results of the import job.
Viewing Lifecycle Log in text editor 23 Zero-touch, bare-metal server provisioning using the Dell EMC iDRAC with Lifecycle Controller Auto Config
3.1 Getting Server Configuration Profiles Getting server configuration profiles by using RACADM commands Getting server configuration profiles by using WS-Man commands The Auto Config feature provides server configuration settings by using a Server Configuration Profile—a file that is typically created by exporting the settings from a “gold” configuration server. A common practice is to create configuration profiles for each specific server model or class of server to be deployed.
racadm get -f system_config.xml -t xml -l 192.168.0.130:/nfs_share RAC976: Export configuration XML file operation initiated. Use the "racadm jobqueue view -i JID_307853717675" command to view the status of the operation. Note: JSON is supported in iDRAC9 firmware version 3.00.00.00 and later and iDRAC7/8 firmware version 2.60.60.60 and later by specifying “-t json” 2. View the job queue.
4 Getting server configuration profiles by using WS-Man commands Here is an example workflow using the winrm command to export a system configuration profile to an NFS share. The export job is queried until the job is completed. 1. Export the Server Configuration Profile. C:\winrm i ExportSystemConfiguration http://schemas.dmtf.
For more information about the Server Configuration Profiles, see the following technical white papers: 27 Server Configuration Profile Workflows Server Configuration XML File Lifecycle Controller (LC) XML Schema Guide RESTful Server Configuration with iDRAC RESTful API Server Cloning user Server Configuration Profiles Zero-touch, bare-metal server provisioning using the Dell EMC iDRAC with Lifecycle Controller Auto Config
5 Performing firmware update during Auto Config Beginning with iDRAC9 firmware 3.18.18.18 and iDRAC7 and iDRAC8 firmware 2.60.60.60 versions, Server Configuration Profile (SCP) import files support a new attribute RepositoryUpdate which points to a PowerEdge firmware repository created by Dell Repository Manager. The repository (catalog) file and Firmware Update Packages must be stored in the same directory or a sub-directory of the directory holding the Server Configuration Profile import file..
0 Automatic None 0 PAGE 306 Configuring Windows and Linux DHCP servers to support Auto Config Configuring Windows DHCP server option 43 Configuring Windows DHCP server option 60 Configuring Linux DHCP server The following server “roles” are required: 6.1 DHCP server File server (must support CIFS or NFS file sharing) Configuring Windows DHCP server option 43 1. On the DHCP server, click Start Administration Tools DHCP. The DHCP server administration tool is started. 2.
6.2 Configuring Windows DHCP server option 60 The Option 60 (Vendor Class) identifies and associates a DHCP client with a particular vendor. Any DHCP server configured to take action based on a client’s vendor ID must have option 43 and option 60 configured. iDRAC identifies itself with the vendor ID called “iDRAC”. Therefore, a new vendor class must be added, a scope option for “code 60” created under the new vendor class, and then the new scope option enabled for the DHCP server.
9. In the Name box, enter iDRAC, select String as the data type and type 60 as the code. 10. Click OK to return to the DHCP console. 11. Expand all items under the server name on the DHCP console. 12. Right-click Scope Options and select Configure Options. 13. Click Advanced. 14. From the Vendor class drop-down menu, select iDRAC. 15. Select the 060 iDRAC check box under Available Options. Setting iDRAC as the Vendor class 16.
Windows DHCP Scope Options String Value Here is the list of required and optional parameters to be entered as the string value: -f (Filename): name of exported Server Configuration Profile file (mandatory for iDRAC 2.20.20.20 and earlier versions) Note: If the -f parameter is not used, refer to the "File Naming Behavior with iDRAC firmware 2.20.20.20 or later” section.
Note: HTTPS Certificates are not supported with Auto Config. Auto Config will ignore certificate warnings. The following additional option flags are supported in iDRAC9 3.00.00.00 and later versions to enable the configuration of HTTP proxy parameters and set the retry timeout for accessing the profile file: -pd (ProxyDefault): use default proxy setting.
Note: Test the network share first and make sure that it can be accessed without any issues. The figure shows the screen shot of Windows DHCP console scope options after all editing is complete. Both the 043 and 060 options must be listed. DHCP console with scope options Note: After configuring the DHCP server, DHCP services must be restarted. 6.3 Configuring the Linux DHCP server 1. Open the Linux DHCP configuration file (For example, dhcpd.conf) by using a text editor and add these lines: 1.
Required and optional parameters to be entered: -f (Filename): name of exported Server Configuration Profile file (REQUIRED for iDRAC firmware versions prior to 2.20.20.20)Required and optional parameters to be entered: Note: If the -f parameter is not used, refer to File Naming Behavior with iDRAC firmware 2.20.20.20 or later section.
Parameter string examples for Linux NFS and CIFS network shares: NFS: -f system_config.xml -i 192.168.0.130 -n /nfs -s 0 -d 0 -t 500 CIFS: -f system_config.xml -i 192.168.0.130 -n sambashare/config_files -s 2 -u user -p password -d 1 -t 400 Parameter string examples using JSON and HTTP/HTTPS for iDRAC9 3.00.00.00 and later versions: HTTP: HTTP: HTTP: HTTPS: -f -f -f -f system_config.json -i 192.168.1.101 -s 5 http_share/system_config.xml -i 192.168.1.101 -s http system_config.xml -i 192.168.1.
Example of a static DHCP reservation from a dhcpd.conf file: # Applying a config to a particular system specified by MAC address host my_host { hardware ethernet b8:2a:72:fb:e6:56; fixed-address 192.168.0.211; option host-name "my_host"; option myname " -f r630_raid.xml -i 192.168.0.1 -n /nfs -s 0 -d 0 -t 300"; } Note: After editing the dhcpd.conf file, make sure to restart the dhcpd service for the changes to take effect.
6.4 File naming behavior with iDRAC firmware 2.20.20.20 or later The Filename parameter is most useful when only a single configuration file is required for the servers by using Auto Config. If multiple server configurations are to be supported, the Filename parameter must be updated and the DHCP server restarted for each change in the configuration filename. To simplify the Auto Config process, iDRAC firmware version 2.20.20.
configured as required. When these servers, each with iDRAC firmware 2.20.20.20 and later are enabled for Auto Config, the iDRAC server configuration agent will search the network share by using the -config.xml name. Configure by system model number: Export the server configuration file and rename as -config.xml. For each server model to be configured, create a unique configuration file by using the server model.
6.4.1 RACADM workflow example using Auto Config server provisioning in a Linux environment In this example, a Red Hat Enterprise Linux (RHEL) version 6.6 DHCP server and NFS share is used. A PowerEdge R730 server is already deployed in this environment with its BIOS, iDRAC, PERC, and NIC settings configured. A new R730 is arriving from the Dell factory and the goal is to apply the configuration settings from the “gold” R730 to the new R730 by using Auto Config.
-rw-rw-rw1 root root 119340 May [root@sandXD nfs]# 5 12:25 system_config.xml Here is an example of the edited Profile file that will be used for this workflow. Observe that unwanted attributes have been removed and storage-related attributes added to create a virtual drive and to place HardDisk.List.1-1 as first device in the BIOS boot order. PAGE 438. When the new R730 server arrives from the factory, connect the A/C power (do not turn on the server but leave in the OFF state) and connect a network cable to the dedicated iDRAC port. 9. Assuming that the network subnet is on the same subnet as the default iDRAC IP address (192.168.0.120), start an SSH session to the iDRAC and initiate a racadm command session. 10. Set the iDRAC.NIC.AutoConfig attribute to “Enable Once” and enable the iDRAC DHCP.
starts 2 2015/05/05 20:09:48; ends 6 2015/05/30 20:09:48; cltt 2 2015/05/05 20:09:48; binding state active; next binding state free; hardware ethernet b0:83:fe:e8:f3:c4; uid "\001\260\203\376\350\363\304"; set vendor-string = "iDRAC"; client-hostname "idrac-69T0C42"; } 13. When the Auto Config process starts, a job ID will get created. Using the iDRAC DHCP IP address, start an SSH session to run the RACADM session to query the status of this job ID.
racadm>>jobqueue view –i JID_308867078109 racadm jobqueue view –i JID_308867078109 --------------------------- JOB -------------------------[Job ID=JID_308867078109] Job Name=Configure: Import system configuration XML file Status=Running Start Time=[Not Applicable] Expiration Time=[Not Applicable] Message=[SYS031: Updating component configuration.
SeqNumber FQDD DisplayValue Name OldValue Status SeqNumber FQDD DisplayValue Name Status SeqNumber FQDD Job Name DisplayValue Name OldValue Status ErrCode DisplayValue Name OldValue Status ErrCode SeqNumber Job Name FQDD SeqNumber Job Name FQDD racadm>> 6.5 = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = 11556 BIOS.Setup.1-1 MemTest MemTest Disabled Success 11555 RAID.Integrated.1-1 RAID ZERO RAID ZERO Success 11546 iDRAC.Embedded.1 Import Configuration Enable Telnet.
By using the Target parameter, a selective export will be performed and a Server Configuration Profile file holding only the BIOS attributes is created. C:\winrm i ExportSystemConfiguration http://schemas.dmtf.org/wbem/wscim/1/cimschema/2/root/dcim/DCIM_LCService?SystemCreationClassName=DCIM_ComputerSys tem+CreationClassName=DCIM_LCService+SystemName=DCIM:ComputerSystem+Name=D CIM:LCService -u:root -p:calvin -r:https://192.168.1.201/wsman SkipCNCheck -SkipCACheck -encoding:utf-8-a:basic @{IPAddress="192.
5. Use a text editor to view the XML file and verify that it contains all of the BIOS attribute settings to be applied. Here are the screen shots of the Profile file on a CIFS share named “cifs_share” along with the Profile file contents. Configuration Profile file on CIFS Viewing Configuration Profile file in text editor 6. 48 Configure the Windows DHCP server to use the just-created Server Configuration Profile file.
7. Because the Windows DHCP server is already configured for Auto Config, Option 60 must be updated with the correct network share parameters to use the designated CIFS share and the Server Configuration Profile file that was just exported. Updating Option 60 8. After editing Option 60, restart the DHCP services. Note: If the DHCP server is not already set up to support Auto Config, refer to the Configuring Windows and Linux DHCP servers to support Auto Config section in this white paper.
Selector: InstanceID = JID_313783436360, __cimnamespace = root/dcim ReturnValue = 4096 An example XML file provided for the ApplyAttributes method: C:\type apply_attributes.xml iDRAC.Embedded.1 NIC.1#AutoConfig Enable Once After Reset IPv4.
Before determining the status of this import job ID, the DHCP IP address assigned to the R730’s iDRAC must be discovered. The IP address can be determined either from the Windows DHCP server Address Leases directory, from the R730’s front LCD panel, or can note the iDRAC IP reported on the server console during POST. For this example, note the iDRAC IP address 192.168.1.201 reported during POST. Discovering IP address assigned to iDRAC by DHCP server 13. The new iDRAC IP address is obtained.
Message = NA MessageArguments = NA MessageID = NA Name = CLEARALL PercentComplete = 0 DCIM_LifecycleJob ElapsedTimeSinceCompletion = 35 InstanceID = JID_313783436360 JobStartTime = NA JobStatus = Completed JobUntilTime = NA Message = Job successfully Completed MessageArguments = NA MessageID = JCP007 Name = iDRACConfig:iDRAC.Embedded.
atus>Success0ProcAdjCacheLineProcAdjCacheLin eDisabledEnabledSuccess0ProcHwPrefetcherProcHwPrefetcherDisabledEnabled Success0
7 Troubleshooting Auto Config issues Issue Resolution The server fails to restart or turn on after enabling Auto Config. 1) The import job ID failed because of inability to access the network share. Check the job queue and determine the status of the Server Configuration Profile import job. If the job failed, check the job status message for indications about why the job failed.
Issue: When using iDRAC 2.20.20.20 and later versions, new log entries for the Lifecycle Controller (LC) log have been added to help track the Auto Config process. Viewing the LC log data can help when monitoring or troubleshooting Auto Config issues.
Unsuccessful Auto Config 56 Zero-touch, bare-metal server provisioning using the Dell EMC iDRAC with Lifecycle Controller Auto Config
8 Conclusion Auto Config is a powerful feature that allows an IT administrator to configure and provision all components in PowerEdge servers. It allows rapid, automated provisioning of multiple servers. Using Auto Config, configuration changes and firmware updates can be made to multiple servers by editing the Server Configuration Profile, storing the file in a CIFS or NFS share, and enabling this feature.
9 Glossary DHCP scope option iDRAC A Dynamic Host Configuration Protocol (DHCP) server provides the ability to distribute information to clients in a pool of IP addresses that are assigned by the server. This pool of IP addresses is commonly referred to as a DHCP scope. For example, 192.168.0.100 to 192.168.0.200 is a pool, and scope options can be distributed to clients in this pool.