Dell EMC OpenManage Ansible Modules Version 1.
Notes, cautions, and warnings NOTE: A NOTE indicates important information that helps you make better use of your product. CAUTION: A CAUTION indicates either potential damage to hardware or loss of data and tells you how to avoid the problem. WARNING: A WARNING indicates a potential for property damage, personal injury, or death. Dell EMC OpenManage Ansible Modules Version 1.0 © Copyright2018 Dell Inc. GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.
Contents 1 Overview........................................................................................................................................................5 Key Features....................................................................................................................................................................... 5 2 Getting Started............................................................................................................................................
9 Accessing documents from the Dell EMC support site.................................................................................
1 Overview Dell EMC OpenManage Ansible Modules allows Data Center and IT administrators to use RedHat Ansible to automate and orchestrate the configuration, deployment, and update of Dell EMC PowerEdge Servers (12th generation of PowerEdge servers and later) by leveraging the management automation capabilities in-built into the integrated Dell Remote Access Controller (iDRAC). This user guide provides information about using Dell EMC OpenManage Ansible Modules version 1.0 and its different use cases.
2 Getting Started How OpenManage Ansible Modules works OpenManage Ansible modules uses the Server Configuration Profile (SCP) for most of the configuration management, deployment, and update of PowerEdge Servers. An SCP contains all BIOS, iDRAC, LC, Network and Storage settings of a PowerEdge server. You can apply them to multiple servers, enabling rapid, reliable, and reproducible configuration.
3 Updating Firmware You can maintain up-to-date firmware versions of Dell EMC server components to get better efficiency, security protection and enhanced features. Create update sources to do the firmware update. Following are the tasks for the firmware update activities: Topics: • Viewing Firmware Inventory • Installing Firmware Viewing Firmware Inventory Command: dellemc_get_firmware_inventory Synopsis You can view the firmware inventory of a server using this module.
idrac_ip: "xx.xx.xx.xx" idrac_user: "xxxx" idrac_pwd: "xxxxxxxx" Installing Firmware Command: dellemc_install_firmware Synopsis You can install the firmware from a repository on a network share (CIFS, NFS) to keep the system updated. To install the firmware: • Make sure the network share contains a valid repository of Dell Update Packages (DUPs) and a catalog file that consists the latest DUPs. • All applicable updates contained in the repository is applied to the system.
share_pwd Yes share_mnt Yes NA NA NA Network share user password NA Local mount path of the network share with readwrite permission for ansible user Table 4. Return Values Name Description Returned Type Sample Firmware Updates firmware from a repository on a network share (CIFS, NFS) Success String https://github.com/dell/Dell-EMC-AnsibleModules-for-iDRAC Example -name: Update firmware from a repository on a Network Share dellemc_install_firmware: idrac_ip: "xx.xx.xx.
4 Configuring PowerEdge Servers Integrated Dell Remote Access Controller (iDRAC) with LC provide the ability to generate a human-readable representation of server configuration using Server Configuration Profile (SCP) feature. This file contains BIOS, iDRAC, LC, network, and RAID configuration settings. You can modify this file as per your need and apply to other servers. The SCP feature is used in the Ansible module to automate the configuration activity of PowerEdge servers and their components.
Table 6. Return Values Name Description Returned LC status Displays the LC status on Success a PowerEdge server Type Sample String https://github.com/dell/Dell-EMCAnsible-Modules-for-iDRAC Example -name: Get LC Status dellemc_get_lcstatus: idrac_ip: "xx.xx.xx.
share_pwd No NA NA Network share user password Specify the hardware component(s) configuration to be exported • scp_components No • • • • • ALL ALL IDRAC BIOS NIC RAID • • • • If ALL, the module exports all components configurations in SCP file If IDRAC, the module exports iDRAC configuration in SCP file If BIOS, the module exports BIOS configuration in SCP file If NIC, the module exports NIC configuration in SCP file If RAID, the module exports RAID configuration in SCP file Table 8.
• Off • If Off, End host power is off idrac_ip Yes NA NA iDRAC IP Address idrac_user Yes NA NA iDRAC username idrac_pwd Yes NA NA iDRAC user password idrac_port No 443 NA iDRAC port • job_wait Yes • • NA True False • • scp_components No • • • • • ALL ALL IDRAC BIOS NIC RAID • • • • If the value is True, it waits for the SCP import job to finish and returns the job completion status If the value is False, it returns immediately with a JOB ID after queuing the SCP import j
share_user: share_pwd: scp_file: scp_components: job_wait: "xxxx" "xxxxxxxx" "scp_file.xml" "ALL" "True" Configuring iDRAC Following are the modules responsible for configuring specific iDRAC attributes. Configuring iDRAC Users Module: dellemc_configure_idrac_users Synopsis This module configures the iDRAC user management activities. Options Table 11.
ipmilanprivilege_users No NA • • • • No_Access Administrator Operator User No_Access Administrator Operator User IPMI Lan Privilege user access is configurable IPMI Serial Privilege user access is configurable ipmiserialprivilege_users No NA • • • • enable_users No NA • • Enabled Disabled Enabling or Disabling the new iDRAC user solenable_users No NA • • Enabled Disabled Enabling or Disabling SOL for iDRAC user protocolenable_users No NA • • Enabled Disabled Enabling or Disabling
protocolenable_users: "Enabled" authenticationprotocol_users: "SHA" privacyprotocol_users: "AES" Configuring iDRAC Timezone Module: dellemc_configure_idrac_timezone Synopsis This module configures the iDRAC timezone related attributes. Options Table 13.
share_name: share_pwd: share_user: share_mnt: setup_idrac_timezone: enable_ntp: ntp_server_1: ntp_server_2: ntp_server_3: "\\\\xx.xx.xx.xx\\share" "xxxxxxxx" "xxxx" "/mnt/share" "UTC" "Enabled" "x.x.x.x" "x.x.x.x" "x.x.x.x" Configuring iDRAC Eventing Module: dellemc_configure_idrac_eventing Synopsis This module configures iDRAC eventing related attributes. Options Table 15.
address No NA NA Email address for SNMP Trap custom_message No NA NA Custom message for SNMP Trap reference enable_alerts No NA • • Enabled Disabled Whether to Enable or Disable iDRAC alerts authentication No NA • • Enabled Disabled Simple Mail Transfer Protocol Authentication smtp_ip_address No NA NA SMTP IP address for communication smtp_port No None NA SMTP Port number for access username No None NA Username for SMTP authentication password No None NA Password for
This module configures the iDRAC services related attributes. Options Table 17.
trap_format No None NA SNMP trap format for iDRAC Table 18. Return Values Name Description Returned Type Sample iDRAC services Configures the iDRAC services attributes Success String https://github.com/dell/Dell-EMC-AnsibleModules-for-iDRAC Example -name: Configure the iDRAC services attributes dellemc_configure_idrac_services: idrac_ip: "xx.xx.xx.xx" idrac_user: "xxxx" idrac_pwd: "xxxxxxxx" share_name: "\\\\xx.xx.xx.xx\\share" share_pwd: "xxxxxxxx" share_user: "xxxx" share_mnt: "/mnt/share"
share_pwd Yes NA NA Network share user password share_mnt Yes NA NA Local mount path of the network share with read-write permission for ansible user setup_idrac_nic_vlan No NA NA Configuring the VLAN-related setting for iDRAC register_idrac_on_dns No NA • • dns_idrac_name No NA NA auto_config No NA • • static_dns No NA NA Static configuration for DNS vlan_id No None NA Configuring the VLAN id for iDRAC vlan_priority No None NA Configuring the VLAN priority for iDRAC
ip_address No NA NA IP Address needs to be defined enable_dhcp No NA NA Whether to Enable or Disable DHCP Protocol for iDRAC dns_1 No NA NA Needs to specify Domain Name Server Configuration dns_2 No NA NA Needs to specify Domain Name Server configuration dns_from_dhcp No NA • • Enabled Disabled Specifying Domain Name Server from Dynamic Host Configuration Protocol enable_ipv4 No NA • • Enabled Disabled Whether to Enable or Disable IPv4 configuration gateway No None NA iDR
auto_negotiation: network_speed: duplex_mode: nic_mtu: ip_address: enable_dhcp: dns_1: dns_2: dns_from_dhcp: enable_ipv4: gateway: net_mask: static_dns_1: static_dns_2: static_dns_from_dhcp: static_gateway: static_net_mask: "Enabled" "T_1000" "Full" "1500" "x.x.x.x" "Enabled" "x.x.x.x" "x.x.x.x" "Enabled" "Enabled" "None" "None" "x.x.x.x" "x.x.x.x" "Enabled" "None" "None" Configuring BIOS Module: dellemc_configure_bios Synopsis This module hosts the BIOS configuration related tasks.
boot_mode No NA • • Bios Uefi Configures the boot mode to Bios or Uefi Boot devices' FQDDs in the sequential order for BIOS or UEFI Boot Sequence boot_sequence No NA NOTE: Ensure that 'boot_mode' option is provided to determine the boot sequence to be applied. NA Configures the NVME mode nvme_mode No secure_boot_mode onetime_boot_mode No No NA • • NOTE: This attribute is specific to the 14th Generation of PowerEdge servers.
idrac_ip: idrac_user: idrac_pwd: share_name: share_pwd: share_user: share_mnt: boot_mode : nvme_mode: secure_boot_mode: onetime_boot_mode: "xx.xx.xx.xx" "xxxx" "xxxxxxxx" "\\\\xx.xx.xx.xx\\share" "xxxxxxxx" "xxxxx" "xxxxxx" "xxxxx" "xxxxx" "xxxxxx" "xxxxxx" Configuring RAID Module: dellemc_configure_raid Synopsis This module hosts the RAID configuration related attributes. Options Table 23.
• • • • • RAID 5 RAID 6 RAID 10 RAID 50 RAID 60 disk_cache_policy No Default • • • Default Enabled Disabled Disk Cache Policy write_cache_policy No WriteThrough • • • WriteThrough WriteBack WriteBackForce Write cache policy read_cache_policy No NoReadAhead • • • NoReadAhead ReadAhead Adaptive Read cache policy stripe_size No 65536 NA Provide stripe size value in multiples of 64 * 1024 controller_fqdd Yes NA NA Fully Qualified Device Descriptor (FQDD) of the storage controller, f
share_mnt: "xxxxxx" controller_fqdd: "xxxxxxxx" vd_name: "xxxxxx" Configuring Collect System Inventory on Restart Module: dellemc_idrac_lc_attributes Synopsis This module is responsible for enabling or disabling of Collect System Inventory on Restart (CSIOR) property for all iDRAC or LC jobs. When you enable the CSIOR property, hardware inventory and part configuration information are discovered and compared with previous system inventory information on every system restart. Options Table 25.
share_mnt: csior: "/mnt/share" "xxxxxxx" Configuring Syslog Module: dellemc_setup_idrac_syslog Synopsis This module enables or disables syslog parameters for iDRAC. Options Table 27.
share_pwd: share_mnt: syslog: "xxxxxxxx" "/mnt/share" "xxxxxxx" Configuring PowerEdge Servers 29
5 Deploying Operating System To provision a bare metal server, it is essential to deploy the required operating system in the device before you start using it. This section describes the process of deploying the operating system on the PowerEdge servers using Ansible. To automate the process of operating system deployment in an unattended manner using Ansible, the iDRAC's capability is utilized to transfer the customized ISO to iDRAC for boot.
Table 30. Return Values Name Description Returned Type Sample Boot to Network ISO Boots to a network ISO Image Success String https://github.com/dell/Dell-EMCAnsible-Modules-for-iDRAC Example -name: Boot to Network ISO dellemc_boot_to_network_iso: idrac_ip: "xx.xx.xx.xx" idrac_user: "xxxx" idrac_pwd: "xxxxxxxx" share_name: "\\\\xx.xx.xx.xx\\share" share_user: "xxxx" share_pwd: "xxxxxxxx" iso_image: "uninterrupted_os_installation_image.
6 Server Inventory This section describes the process of retrieving the server inventory of the PowerEdge Servers using Ansible Modules. Viewing the System Inventory Module: dellemc_get_system_inventory Synopsis System inventory provides basic as well as component level detailed inventory information. You can run this module when you want to verify the asset, configured state, inventory, and health-related information for the system and its component. Options Table 31.
7 Server Administration Tasks This section describes the tasks that you can run using OpenManage Ansible Modules version 1.0. NOTE: OpenManage Ansible Modules version 1.0 supports iDRAC firmware version 2.50.50.50 and later.
• • PushPowerButton Nmi Table 34. Return Values Name Description Returned Type Sample Power state of a server Configures the power control options on a PowerEdge server Success String https://github.com/dell/Dell-EMC-AnsibleModules-for-iDRAC Example -name: Change Power State dellemc_change_power_state: idrac_ip: "xx.xx.xx.
Viewing LC Job Status Module: dellemc_get_lc_job_status Synopsis You can view the iDRAC or LC job status using this module. To view information about a job status, a job id is required. Once a job is initiated, the system stages the job request information and sends a job id back to the system. You can query the progress and status of the job by using the job id. Options Table 37.
Table 39. dellemc_export_lc_logs Parameter Required Default Choices Comments idrac_ip Yes NA NA iDRAC IP Address idrac_user Yes NA NA iDRAC username idrac_pwd Yes NA NA iDRAC user password idrac_port No 443 NA iDRAC port share_name Yes NA NA CIFS or NFS Network share or a local path \\\ \xx.xx.xx.xx\\share\\ or /tmp/path share_user Yes NA NA Network share user in the format 'user@domain' if user is part of a domain else 'user' share_pwd Yes NA NA Network share user pas
Table 41. dellemc_delete_lc_job Parameter Required Default Choices Comments idrac_ip Yes NA NA iDRAC IP Address idrac_user Yes NA NA iDRAC username idrac_pwd Yes NA NA iDRAC user password idrac_port No NA NA iDRAC port job_id Yes NA NA JOB ID in the format "JID_XXXXXXXXX" Table 42. Return Values Name Description Returned Type Sample Delete LC job Deletes an LC job for a given a JOB ID Success String https://github.
Table 44. Return Values Name Description Returned Type Sample LC Job Queue Deletes the LC job queue Success String https://github.com/dell/Dell-EMC-Ansible-Modules-for-iDRAC Example -name: Delete LC Job Queue dellemc_delete_lc_job_queue: idrac_ip: "xx.xx.xx.
• Disabled Table 46. Return Values Name Description Returned Type Sample System Lockdown Mode Configures lockdown mode of the system Success String https://github.com/dell/Dell-EMC-Ansible-Modules-foriDRAC Example -name: Configure System Lockdown Mode dellemc_system_lockdown_mode: idrac_ip: "xx.xx.xx.xx" idrac_user: "xxxx" idrac_pwd: "xxxxxxxx" share_name: "\\\\xx.xx.xx.xx\\share" share_user: "xxxx" share_pwd: "xxxxxxxx" share_mnt: "/mnt/share" lockdown_mode: "xxxxxxx" Server Administration Tas
8 Troubleshooting • While configuring iDRAC timezone on 14G servers with iDRAC firmware 3.00.00.00 and 3.11.11.11 the job keeps running for longer time without any return output. — To ensure that the new timezone values are applied to the servers, export an SCP. — Upgrade to a latest Dell EMC recommended firmware version (iDRAC firmware version 3.15.15.15 and later) before performing the configuration changes.
9 Accessing documents from the Dell EMC support site You can access the required documents using the following links: • For Dell EMC Enterprise Systems Management documents — Dell.com/SoftwareSecurityManuals • For Dell EMC OpenManage documents — Dell.com/OpenManageManuals • For Dell EMC Remote Enterprise Systems Management documents — Dell.com/esmmanuals • For iDRAC and Dell EMC Lifecycle Controller documents — Dell.