Dell EMC OpenManage Ansible Modules Version 4.0.0 User’s Guide August 2021 Rev.
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 4.0.0 © Copyright 2018 - 2021 Dell Inc. GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.
Contents Chapter 1: Overview...................................................................................................................... 6 Key Features.........................................................................................................................................................................6 What's new?.........................................................................................................................................................................
View templates.............................................................................................................................................................67 Template operations................................................................................................................................................... 68 Attach or detach an identity pool ...........................................................................................................................
Chapter 6: Deprecated modules..................................................................................................181 View firmware inventory.................................................................................................................................................181 View the system inventory............................................................................................................................................
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 and modular infrastructure by leveraging the management automation capabilities in-built into the Integrated Dell Remote Access Controller (iDRAC), OpenManage Enterprise and OpenManage Enterprise Modular.
NOTE: These features are supported only on iDRAC with enterprise license. What's new? ● The ome_profile module allows you to create, modify, delete, assign, unassign, and migrate a profile on OpenManage Enterprise. ● The ome_configuration_compliance_baseline module allows you to create, modify, delete, and remediate a compliance configuration baseline.
2 Getting Started Topics: • • How OpenManage Ansible Modules works Running your first Playbook How OpenManage Ansible Modules works ● How OpenManage Ansible Modules work with iDRAC ● How OpenManage Ansible Modules work with OME ● How OpenManage Ansible Modules work with Redfish APIs Running your first Playbook Playbooks are essentially sets of instructions (plays) that you send to run on a single target or groups of targets (hosts).
3 Modules for iDRAC Topics: • • • • • • • • How OpenManage Ansible Modules work with iDRAC Running your first iDRAC Playbook Updating Firmware Configuring PowerEdge Servers Deploying operating system Server Inventory Server administration tasks Storage controller How OpenManage Ansible Modules work with iDRAC OpenManage Ansible modules uses iDRAC REST APIs based on Redfish standards and Server Configuration Profiles (SCP) for automated configuration, deployment and update of PowerEdge servers.
tasks: - name: Get hardware inventory dellemc_get_system_inventory: idrac_ip: "{{ idrac_ip }}" idrac_user: "{{ idrac_user }}" idrac_password: "{{ idrac_password }}" 4. Now run the playbook. Run the following command from the directory where you created the inventory and the playbook: ansible-playbook playbook.yml -i inventory 5. Press Enter.
Return Values msg: description: "Fetching the firmware inventory details." returned: always type: str sample: "Successfully fetched the firmware inventory details." firmware_info: type: dict description: Details of the firmware. returned: success sample: { "Firmware": [{ "BuildNumber": "0", "Classifications": "10", "ComponentID": "102573", "ComponentType": "FRMW", "DeviceID": null, "ElementName": "Power Supply.Slot.1", "FQDD": "PSU.Slot.
Install firmware Module: idrac_firmware Synopsis:The firmware can be installed from a repository on a network share (CIFS, NFS, HTTP, HTTPS, FTP) to keep the system updated. To install the firmware, connect to a network share that contains a valid repository of Dell Update Packages (DUPs), and a catalog file describing the DUPs. Check_mode support: No Options Table 2.
Table 2. idrac_firmware (continued) Parameter/aliases Required Default Choices Comments is used. If C(True) option is set, then the certificate warnings are ignored. apply_update No True NA If I(apply_update) is set to C(True), then the update packages are applied. If I(apply_update) is set to C(False), then the update packages are not applied, and a firmware compliance report is generated of the components associated with iDRAC.
idrac_user: "user_name" idrac_password: "user_password" share_name: "http://downloads.dell.com" reboot: True job_wait: True apply_update: True - name: Update firmware from a repository on a HTTPS share dellemc.openmanage.idrac_firmware: idrac_ip: "192.168.0.1" idrac_user: "user_name" idrac_password: "user_password" share_name: "https://downloads.dell.com" reboot: True job_wait: True apply_update: True - name: Update firmware from a repository on a FTP share dellemc.openmanage.idrac_firmware: idrac_ip: "192.
Table 3. idrac_lifecycle_controller_status_info (continued) Parameter/aliases Required Default Choices Comments idrac_port No 443 NA iDRAC port Return Values msg: description: Overall status of fetching lifecycle controller status. returned: always type: str sample: "Successfully fetched the lifecycle controller status." lc_status_info: description: Displays the status of the Lifecycle Controller on a Dell EMC PowerEdge server.
Table 4. idrac_server_config_profile (continued) Parameter/aliases Required Default Choices Comments idrac_user Yes NA NA iDRAC username idrac_password/ idrac_pwd Yes NA NA iDRAC user password idrac_port No 443 NA iDRAC port ● If C(import), will perform SCP import operations. ● If C(export), will perform SCP export operations. command No export ● import ● export job_wait Yes NA NA Whether to wait for job completion or not. NA ● Network share or local path.
Table 4. idrac_server_config_profile (continued) Parameter/aliases Required Default Choices Comments This option is applicable for C(import) state. ● If C(On), End host power state is on ● If C(Off), End host power state is off end_host_power_stat e No On ● On ● Off export_format No XML ● JSON ● XML Specify the output file format. This option is applicable for C(export) command.
generated file name dellemc.openmanage.idrac_server_config_profile: idrac_ip: "192.168.0.1" idrac_user: "user_name" idrac_password: "user_password" share_name: "192.168.0.2:/share" scp_components: "BIOS" export_format: XML export_use: Default job_wait: True - name: Import SCP with BIOS components in XML format from a NFS share path dellemc.openmanage.idrac_server_config_profile: idrac_ip: "192.168.0.1" idrac_user: "user_name" idrac_password: "user_password" share_name: "192.168.0.
idrac_password: "user_password" command: import share_name: "http://192.168.0.3/share" share_user: share_username share_password: share_password scp_file: example_file.json shutdown_type: Graceful end_host_power_state: "On" job_wait: True - name: Export SCP with ALL components in XML format to a HTTPS share path without SCP file name dellemc.openmanage.idrac_server_config_profile: idrac_ip: "192.168.0.1" idrac_user: "user_name" idrac_password: "user_password" share_name: "https://192.168.0.
Table 5. idrac_user Parameter/aliases Required Default Choices Comments idrac_ip True NA NA iDRAC IP Address idrac_user True NA NA iDRAC username idrac_password/ idrac_pwd True NA NA iDRAC user password idrac_port False 443 NA iDRAC port state False NA Present, or Absent ● Select C(present) to create or modify a user account. ● Select C(absent) to remove a user account. user_name False NA NA Provide the user name of the account to be created, deleted, or modified.
Table 5. idrac_user (continued) Parameter/aliases Required Default Choices Comments protocol_enable False NA ● Enabled ● Disabled Select enabled to enable Simple Network Management Protocol version 3 (SNMP V3) support.
"Severity": "Critical", "Resolution": "Retry the operation. If the issue persists, contact your system administrator." } ] } } """ Example - name: Configure a new iDRAC user dellemc.openmanage.idrac_user: idrac_ip: 198.162.0.
Table 6. idrac_timezone_ntp (continued) Parameter/aliases share_user Required No Default NA Choices Comments NA Network share user name. Use the format 'user@domain' or 'domain \\ user' if user is part of a domain. This option is mandatory for CIFS share. share_password/ share_pwd No NA NA Network share user password. This option is mandatory for CIFS share. share_mnt No NA NA Local mount path of the network share with read-write permission for Ansible user.
"Severity": "Critical", "Resolution": "Retry the operation. If the issue persists, contact your system administrator." } ] } } Example -name: Configure time zone and NTP on iDRAC dellemc.openmanage.idrac_timezone_ntp: idrac_ip: "190.168.0.1" idrac_user: "user_name" idrac_password: "user_password" share_name: "user_name:/share" share_password: "share_password" share_user: "user_name" share_mnt: "/mnt/share" setup_idrac_timezone: "UTC" enable_ntp: Enabled ntp_server_1: "190.168.0.1" ntp_server_2: "190.168.0.
Table 7.
Configure iDRAC services Module: dellemc_configure_idrac_services Synopsis This module configures the iDRAC services related attributes. Check_mode support: Yes Options Table 9.
Table 9. dellemc_configure_idrac_services (continued) Parameter community_name alert_port Required False False Default test None Choices Comments NA SNMP community name for iDRAC. It is used by iDRAC to validate SNMP queries, and gets received from remote systems requesting SNMP data access. NA The iDRAC port number that must be used for SNMP traps. The default value is 162, and the acceptable range is between 1 to 65535. discovery_port False 162 NA The SNMP agent port on the iDRAC.
"MessageArgs": [], "Severity": "Critical", "Resolution": "Retry the operation. If the issue persists, contact your system administrator." } ] } } Example name: Configure the iDRAC services attributes dellemc.openmanage.dellemc_configure_idrac_services: idrac_ip: "192.168.0.1" idrac_user: "user_name" idrac_password: "user_password" share_name: "192.168.0.
Table 10. idrac_network (continued) Parameter/aliases Required Default Choices Comments share_mnt No NA NA Local mount path of the network share with read-write permission for Ansible user. This option is mandatory for network shares. setup_idrac_nic_vlan No NA NA Allows to configure VLAN on iDRAC register_idrac_on_dns No NA ● Enabled ● Disabled Registers iDRAC on a Domain Name System (DNS).
Table 10. idrac_network (continued) Parameter/aliases Required Default Choices Comments enable_ipv4 No NA ● Enabled ● Disabled Allows to enable or disable IPv4 configuration. static_dns_1 No NA NA Enter the preferred static DNS server IPv4 address. static_dns_2 No NA NA Enter the preferred static DNS server IPv4 address. static_gateway No None NA Enter the static IPv4 gateway address to iDRAC. static_net_mask No None NA Enter the static IP subnet mask to iDRAC.
Example - name: Configure iDRAC network settings dellemc.openmanage.idrac_network: idrac_ip: "192.168.0.1" idrac_user: "user_name" idrac_password: "user_password" share_name: "192.168.0.
Table 11. idrac_bios (continued) Parameter/ aliases Required Default Choices Comments share_password/ share_pwd No NA NA Network share user password. This option is mandatory for CIFS share. NA Local mount path of the network share with read-write permission for Ansible user. This option is mandatory for network shares. share_mnt boot_mode No No NA NA ● Bios ● Uefi (deprecated) Sets boot mode to BIOS or UEFI . NOTE: This option is deprecated, and will be removed in later version.
Table 11. idrac_bios (continued) Parameter/ aliases Required Default Choices ● OneTimeCustomBootSeq Str ● OneTimeCustomHddSeqS tr ● OneTimeCustomUefiBoot SeqStr ● OneTimeHddSeq ● OneTimeUefiBootSeq Comments NOTE: This option is deprecated, and will be removed in later version. Use I(attributes) for configuring the BIOS attributes. NOTE: I(onetime_boot_mode) is mutually exclusive with I(boot_sources). Dictionary of BIOS attributes and value pair.
sample: { "error": { "code": "Base.1.0.GeneralError", "message": "A general error has occurred. See ExtendedInfo for more information.", "@Message.ExtendedInfo": [ { "MessageId": "GEN1234", "RelatedProperties": [], "Message": "Unable to process the request because an error occurred.", "MessageArgs": [], "Severity": "Critical", "Resolution": "Retry the operation. If the issue persists, contact your system administrator." } ] } } Examples - name: Configure Bios generic attributes of the BIOS dellemc.
idrac_password: "user_password" boot_sources: - Name : "NIC.Integrated.1-1-1" Enabled : true - name: Configure boot sources - Index dellemc.openmanage.idrac_bios: idrac_ip: "192.168.0.1" idrac_user: "user_name" idrac_password: "user_password" boot_sources: - Name : "NIC.Integrated.1-1-1" Index : 0 Configure storage volume Module: dellemc_idrac_storage_volume Synopsis This module hosts the RAID configuration related attributes. Check_mode support: Yes Options Table 12.
Table 12. dellemc_idrac_storage_volume (continued) Parameter/aliases Required Default Choices Comments ● WriteBackForce read_cache_policy No NoReadAhead Read Cache Policy ● NoReadAhead ● ReadAhead ● AdaptiveReadAhea d stripe_size No 65536 NA Provide stripe size value in multiples of 64 * 1024 controller_id No NA NA Fully Qualified Device Descriptor (FQDD) of the storage controller, for example: RAID.Integrated.1-1 NOTE: Controller FQDD is required for C(create) RAID configuration.
description: Overall status of the storage configuration operation. returned: always sample: "Successfully completed the view storage volume operation" storage_status: type: dict description: Storage configuration job and progress details from the iDRAC. returned: success sample: { "Id": "JID_XXXXXXXXX", "JobState": "Completed", "JobType": "ImportConfiguration", "Message": "Successfully imported and applied Server Configuration Profile.
capacity: raid_init_operation: "200" "None" -name: View all volume details dellemc.openmanage.dellemc_idrac_storage_volume: idrac_ip: "192.168.0.1" idrac_user: "username" idrac_password: "password" state: "view" -name: View specific volume details dellemc.openmanage.dellemc_idrac_storage_volume: idrac_ip: "192.168.0.1" idrac_user: "username" idrac_password: "password" state: "view" controller_id: "RAID.Slot.1-1" volume_id: "Disk.Virtual.0:RAID.Slot.1-1" -name: Delete single volume dellemc.openmanage.
Table 13. dellemc_idrac_lc_attributes (continued) Parameter/aliases Required Default Choices Comments share_user No NA NA Network share user in the format 'user@domain' or 'domain\user' if user is part of a domain else 'user'. This option is mandatory for CIFS Network share. share_password/ share_pwd No NA NA Network share user password. This option is mandatory for CIFS Network share. share_mnt No NA NA Local mount path of the network share with read-write permission for Ansible user.
} } Example -name: Set up iDRAC LC Attributes dellemc.openmanage.dellemc_idrac_lc_attributes: idrac_ip: "192.168.0.1" idrac_user: "user_name" idrac_password: "user_password" share_name: "192.168.0.1:/share" share_mnt: "/mnt/share" csior: "Enabled" Configure syslog Module: idrac_syslog Synopsis This module allows to enable or disable the iDRAC syslog. Check_mode support: Yes Options Table 14.
syslog_status: description: Job details of the syslog operation. returned: success type: dict sample: { "@odata.context": "/redfish/v1/$metadata#DellJob.DellJob", "@odata.id": "/redfish/v1/Managers/iDRAC.Embedded.1/Jobs/JID_852940632485", "@odata.type": "#DellJob.v1_0_2.
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.
sample: { "DeleteOnCompletion": "false", "InstanceID": "DCIM_OSDConcreteJob:1", "JobName": "BootToNetworkISO", "JobStatus": "Success", "Message": "The command was successful.", "MessageID": "OSD1", "Name": "BootToNetworkISO", "Status": "Success", "file": "192.168.0.0:/nfsfileshare/unattended_os_image.iso", "retval": true } Example - name: Boot to Network ISO dellemc.openmanage.idrac_os_deployment: idrac_ip: "192.168.0.1" idrac_user: "user_name" idrac_password: "user_password" share_name: "192.168.0.
] } "BIOSReleaseDate": "11/26/2019", "FQDD": "BIOS.Setup.1-1", "InstanceID": "DCIM:INSTALLED#741__BIOS.Setup.1-1", "Key": "DCIM:INSTALLED#741__BIOS.Setup.1-1", "SMBIOSPresent": "True", "VersionString": "2.4.8" } error_info: description: Details of the HTTP Error. returned: on HTTP error type: dict sample: { "error": { "code": "Base.1.0.GeneralError", "message": "A general error has occurred. See ExtendedInfo for more information.", "@Message.
Table 17. dellemc_change_power_state Parameter/aliases Required Default Choices Comments idrac_ip Yes NA NA iDRAC IP Address idrac_user Yes NA NA iDRAC username idrac_password/ idrac_pwd Yes NA NA iDRAC user password idrac_port No 443 NA iDRAC port NA ● ● ● ● ● ● change_power Yes On ForceOff GracefulRestart GracefulShutdown PushPowerButton Nmi Desired power state Table 18.
returned: always type: str sample: "Successfully performed iDRAC reset." reset_status: description: Details of iDRAC reset operation. returned: always type: dict sample: { "idracreset": { "Data": { "StatusCode": 204 }, "Message": "none", "Status": "Success", "StatusCode": 204, "retval": true } } error_info: description: Details of the HTTP Error. returned: on HTTP error type: dict sample: { "error": { "code": "Base.1.0.GeneralError", "message": "A general error has occurred.
Table 20. idrac_lifecycle_controller_job_status_info (continued) Parameter/aliases Required Default Choices Comments idrac_port No 443 NA iDRAC port job_id Yes NA NA Job ID in the format "JID_123456789012" Return Values msg: description: Overall status of the job facts operation. returned: always type: str sample: "Successfully fetched the job info." job_info: description: Displays the status of a Lifecycle Controller job.
LC logs provide records of past activities on a managed system. These log files are useful for the server administrators since they provide detailed information about recommended actions and some other technical information that is useful for troubleshooting purposes.
"Resolution": "Retry the operation. If the issue persists, contact your system administrator." } ] } } Example - name: Export Lifecycle Controller logs dellemc.openmanage.idrac_lifecycle_controller_logs: idrac_ip: "190.168.0.1" idrac_user: "user_name" idrac_password: "user_password" idrac_port: 443 share_name: "192.168.0.
'MessageID': 'SUP020', 'ReturnValue': '0' } error_info: description: Details of the HTTP Error. returned: on HTTP error type: dict sample: { "error": { "code": "Base.1.0.GeneralError", "message": "A general error has occurred. See ExtendedInfo for more information.", "@Message.ExtendedInfo": [ { "MessageId": "GEN1234", "RelatedProperties": [], "Message": "Unable to process the request because an error occurred.", "MessageArgs": [], "Severity": "Critical", "Resolution": "Retry the operation.
Table 23. dellemc_system_lockdown_mode (continued) Parameter/aliases Required Default Choices Comments share_name Yes NA NA CIFS or NFS network share or a local path share_user No NA NA Network share user in the format 'user@domain' or user\domain if user is part of a domain else 'user'. This field is mandatory for CIFS Network Share. share_password/ share_pwd No NA NA Network share user password. This field is mandatory for CIFS Network Share.
"Resolution": "Retry the operation. If the issue persists, contact your system administrator." } ] } } Example -name: Configure System Lockdown Mode dellemc.openmanage.dellemc_system_lockdown_mode: idrac_ip: "192.168.0.1" idrac_user: "user_name" idrac_password: "user_password" share_name: "192.168.0.1:/share" share_mnt: "/mnt/share" lockdown_mode: "Disabled" Storage controller This section describes the process of configuring the storage controller settings of the PowerEdge servers using Ansible modules.
Table 24. idrac_redfish-storage-controller (continued) Parameter Required Default Choices Comments the drives in Local key Management(LKM). ● C(RemoveControllerKey) Erases the encryption key on the controller. ● C(ReKey) - Resets the key on the controller. target False NA NA ● Fully Qualified Device Descriptor (FQDD) of the target physical drive that is assigned as a spare.
Table 24. idrac_redfish-storage-controller (continued) Parameter Required Default Choices Comments ● This option is mandatory when I(command) is C(SetControllerKey) or C(ReKey), and when I(mode) is C(LKM). old_key False NA NA ● Security key passphrase used by the encryption-capable controller. ● This option is mandatory when I(command) is C(ReKey) and I(mode) is C(LKM). .
} } Examples - name: Assign a dedicated hot spare dellemc.openmanage.idrac_redfish_storage_controller: baseuri: "192.168.0.1:443" username: "user_name" password: "user_password" volume_id: "Disk.Virtual.0:RAID.Slot.1-1" target: "Disk.Bay.0:Enclosure.Internal.0-1:RAID.Slot.1-1" tags: - assign_dedicated_hot_spare - name: Assign a global hot spare dellemc.openmanage.idrac_redfish_storage_controller: baseuri: "192.168.0.1:443" username: "user_name" password: "user_password" target: "Disk.Bay.0:Enclosure.
username: "user_name" password: "user_password" command: "ResetConfig" controller_id: "RAID.Slot.
4 Modules for OpenManage Enterprise (OME) Topics: • • • • • • • • • • • • • • • • • How OpenManage Ansible Modules work with OME Running your first OME Playbook Manage Devices Manage device configuration templates Template Service Manage the device firmware Manage jobs Manage users Manage identity pool Manage application settings Manage network configuration Manage fabrics Manage Profiles Device discovery Manage Chassis Manage Active Directory service and user groups Diagnostics How OpenManage Ansible Mod
ome_username='ome_user' ome_password='ome_password' 3. Define a playbook to fetch the server inventory managed by the OME. Create the playbook in the same directory where you created the inventory. Following is a playbook example: playbook.yml --- hosts: PowerEdge connection: local gather_facts: False tasks: - name: Retrieve basic inventory of all devices. ome_device_info: hostname: "192.168.0.1" username: "username" password: "password" 4. Now run the playbook.
Table 25. ome_device_info (continued) Parameter Required Default Choices Comments port No NA Target device HTTPS port fact_subset system_query_options No No 443 ● basic_inventory basic_inventor ● detailed_inventory y ● subsystem_health NA ● device_id: A list of unique identifier is applicable for C(detailed_inventory) and C(subsystem_health). ● device_service_tag: A list of service tags is applicable for C(detailed_inventory) and C(subsystem_health).
} ] } } "NetworkAddress": "192.168.0.1" ], "DeviceName": "MX-0003I", "DeviceServiceTag": "MXL1234", "DeviceSubscription": null, "LastInventoryTime": "2019-01-21 06:30:08.501", "LastStatusTime": "2019-01-21 06:30:02.492", "ManagedState": 3000, "Model": "PowerEdge MX7000", "PowerState": 17, "SlotConfiguration": {}, "Status": 4000, "SystemId": 2031, "Type": 2000 Examples - name: Retrieve basic inventory of all devices dellemc.openmanage.ome_device_info: hostname: "192.168.0.
- 11111 device_service_tag: - MXL1234 - MXL4567 inventory_type: "serverDeviceCards" - name: Retrieve subsystem health of specified devices identified by service tags dellemc.openmanage.ome_device_info: hostname: "192.168.0.
Table 26. ome_device_group (continued) Parameter Required Default Choices Comments ip_addresses False NA NA ● List of IPs of the device(s) to be added to the device group. ● I(ip_addresses) is mutually exclusive with I(device_ids) and I(device_service_tags). ● Supported IP address range formats: ○ 192.35.0.1 ○ 10.36.0.0 -192.36.0.255 ○ 192.37.0.0/24 ○ fe80::ffff:ffff:ffff:ffff ○ fe80::ffff:192.0.2.0/125 ○ fe80::ffff:ffff:ffff:1111fe80::ffff:ffff:ffff:ffff ● C(NOTE) Hostname is not supported.
} } ] } Examples - name: Add devices to a static device group by using the group name and device IDs dellemc.openmanage.ome_device_group: hostname: "192.168.0.1" username: "username" password: "password" name: "Storage Services" device_ids: - 11111 - 11112 - 11113 - name: Add devices to a static device group by using the group name and device service tags dellemc.openmanage.ome_device_group: hostname: "192.168.0.
ip_addresses: - 192.35.0.1 - 10.36.0.0-192.36.0.255 - 192.37.0.0/24 - fe80::ffff:ffff:ffff:ffff - ::ffff:192.0.2.0/125 - fe80::ffff:ffff:ffff:1111-fe80::ffff:ffff:ffff:ffff Manage static device groups Module: ome_groups Synopsis This module allows to create, modify, and delete static device groups on OpenManage Enterprise. Options Table 27.
Table 27. ome_groups (continued) Parameter Required Default Choices Comments description False parent_group_name False Static Groups NA ● Name of the parent device group under which the device group to be created or modified. ● This is applicable only when I(state) is C(present). ● C(NOTE) If device group with such a name does not exist, device group with I(parent_group_na me) is created. ● This option is case insensitive. ● This option is mutually exclusive with I(parent_group_id)p .
"CreationTime": "2021-01-01 10:10:10.100", "DefinitionDescription": "UserDefined", "DefinitionId": 400, "GlobalStatus": 5000, "HasAttributes": false, "UpdatedBy": "", "UpdatedTime": "2021-01-01 11:11:10.100", "Visible": true } group_ids: type: list elements: int description: List of the deleted device group IDs. returned: when I(state) is C(absent) sample: [1234, 5678] invalid_groups: type: list elements: str description: List of the invalid device group IDs or names.
hostname: "192.168.0.1" username: "username" password: "password" state: absent name: "group 1" - name: Delete multiple device groups using the group IDs dellemc.openmanage.ome_groups: hostname: "192.168.0.1" username: "username" password: "password" state: absent group_id: - 1234 - 5678 Manage device configuration templates This section describes the specifications for template operations on devices managed by OME for hardware configuration and deployment operations.
ansible_facts: type: dict description: Details of the templates. returned: success sample: { "192.168.0.1": { "CreatedBy": "system", "CreationTime": "1970-01-31 00:00:56.372144", "Description": "Tune workload for Performance Optimized Virtualization", "HasIdentityAttributes": false, "Id": 1, "IdentityPoolId": 0, "IsBuiltIn": true, "IsPersistencePolicyValid": false, "IsStatelessAvailable": false, "LastUpdatedBy": null, "LastUpdatedTime": "1970-01-31 00:00:56.
Table 29. ome_template (continued) Parameter command template_id template_name device_id device_service_tag device_group_names template_view_type Required False False False False False False False Default Choices Comments create, modify, deploy, delete, export, import or clone. ● ● ● ● ● ● C(create) creates a new template. C(modify) modifies an existing template. C(deploy) creates a template-deployment job. C(delete) deletes an existing template. C(export) exports an existing template.
Table 29. ome_template (continued) Parameter Required Default Choices Comments ● ● ● ● ● ● ● RAID, EventFilters, and All. If none of the values are specified, the default value 'All' is selected. This is applicable when I (command) is C(create). Options: Allows to control device shutdown or end power state during template deployment. This is applicable when I(command) is C(deploy). Schedule: Provides options to schedule the deployment task immediately, or at a specified time.
Component>\n\n" error_info: description: Details of the HTTP Error. returned: on HTTP error type: dict sample: { "error": { "code": "Base.1.0.GeneralError", "message": "A general error has occurred. See ExtendedInfo for more information.", "@Message.ExtendedInfo": [ { "MessageId": "GEN1234", "RelatedProperties": [], "Message": "Unable to process the request because an error occurred.", "MessageArgs": [], "Severity": "Critical", "Resolution": "Retry the operation.
password: "password" command: "deploy" template_id: 12 device_id: - 12765 - 10173 device_service_tag: - 'SVTG123' attributes: # Device specific attributes to be modified during deployment. # For information on any attribute id, use API /TemplateService/Templates(Id)/ Views(Id)/AttributeViewDetails # This section is optional Attributes: # The device where attribute to be modified during deployment runtime. # The Device ID should be mentioned above in the 'device_id' section. # Service tags not allowed.
dellemc.openmanage.ome_template: hostname: "192.168.0.1" username: "username" password: "password" command: "deploy" template_id: 12 device_id: - 12765 - 10173 device_service_tag: - 'SVTG123' - 'SVTG456' attributes: Attributes: - DeviceId: 12765 Attributes: - Id : 15645 Value : "0.0.0.
- name: Clone a template dellemc.openmanage.ome_template: hostname: "192.168.0.1" username: "username" password: "password" command: "clone" template_id: 12 attributes: Name: "New Cloned Template Name" - name: Import template from XML content dellemc.openmanage.ome_template: hostname: "192.168.0.
Table 30. ome_template_identity_pool (continued) Parameter Required Default Choices Comments port False 443 NA Target HTTPS port template_name True NA NA Name of the template to which an identity pool is attached to or detached from. identity_pool_name False NA NA Name of the identity pool. ● To attach an identity pool to a template, provide the name of the identity pool. ● This option is not applicable when detaching an identity pool from a template.
Set tagged and untagged VLANs in a template ome_template_network_vlan Synopsis This module lets you select tagged and untagged VLANs to be used in the OpenManage Enterprise template. Options Table 31. ome_template_network_vlan Parameter Required Default Choices Comments hostname True NA NA Target IP Address or hostname.
Table 31. ome_template_network_vlan (continued) Parameter Required Default Choices Comments ○ List of I(tagged_network_ids) is combined with list of I(tagged_network_names) when adding tagged VLANs to a port. ○ To get the VLAN network ID use the API U( https://I(hostname)/api/ NetworkConfigurationService/ Networks) ● tagged_network_names○ List of names of tagged VLANs ○ Enter [] to remove the tagged VLAN from a port.
- 12767 - 12768 tagged_network_names: - vlan3 - port: 2 tagged_network_names: - vlan4 - vlan1 - name: Clear the tagged and untagged VLANs from a template dellemc.openmanage.ome_template_network_vlan: hostname: "192.168.0.
Table 32. ome_configuration_compliance_info (continued) Parameter Required Default Choices Comments device associated with the I(baseline). ● I(device_service_ta g) is mutually exclusive with I(device_id). Return Values msg: type: str description: Over all compliance report status. returned: on error sample: "Unable to complete the operation because the entered target baseline name 'baseline' is invalid." compliance_info: type: dict description: Returns the compliance report information.
"Severity": "Critical", "Resolution": "Retry the operation. If the issue persists, contact your system administrator." } ] } } Examples - name: Retrieve the compliance report of all of the devices in the specified configuration compliance baseline. dellemc.openmanage.ome_configuration_compliance_info: hostname: "192.168.0.1" username: "username" password: "password" baseline: baseline_name - name: Retrieve the compliance report for a specific device associated with the baseline using the device ID. dellemc.
Table 33. ome_configuration_compliance_baseline (continued) Parameter Required Default Choices Comments ● ● ● ● names True NA NA checking for only I(names). C(modify) modifies an existing baseline. Only I(names), I(description), I(device_ids), I(device_service_ta gs), and I(device_group_na mes) can be modified.I(device_id s), I(device_group_na mes), and I(device_service_ta gs) replace the devices previously present in the baseline. .
Table 33. ome_configuration_compliance_baseline (continued) Parameter Required Default Choices Comments when I(command) is C(delete). new_name NA NA NA ● New name of the compliance baseline to be modified. ● This option is applicable when I(command) is C(modify). template_name NA NA NA ● Name of the compliance template for creating the compliance baseline(s). ● Name of the deployment template to be used for creating a compliance baseline.
Table 33. ome_configuration_compliance_baseline (continued) Parameter Required Default Choices Comments I(command) is C(create), C(modify), or C(remediate) and is mutually exclusive with I(device_ids) and I(device_group_na mes). device_group_names False NA NA . ● Name of the target device group. ● This option is applicable when I(command) is C(create), or C(modify) and is mutually exclusive with I(device_ids) and I(device_service_ta g).
type: dict sample: { "Id": 13, "Name": "baseline1", "Description": null, "TemplateId": 102, "TemplateName": "one", "TemplateType": 2, "TaskId": 26584, "PercentageComplete": "100", "TaskStatus": 2070, "LastRun": "2021-02-27 13:15:13.
hostname: "192.168.0.1" username: "username" password: "password" names: "baseline1" template_id: 1234 description: "description of baseline" device_service_tags: - "SVCTAG1" - "SVCTAG2" - name: Create a configuration compliance baseline using group names dellemc.openmanage.ome_configuration_compliance_baseline: hostname: "192.168.0.
username: "username" password: "password" command: "remediate" names: "baseline1" Manage the device firmware This section describes the following firmware processes that can be carried out on the devices managed by OME, using OpenManage Ansible Modules● ● ● ● ● Update device firmware. Create a firmware catalog. Create a firmware baseline. Retrieve the list and details of all the baselines. Retrieve baseline compliance details.
Table 34. ome_firmware (continued) Parameter Required Default Choices Comments ● I(baseline_names) is mutually exclusive with I(device_group_names), I(device_id) and I(device_service_tag). dup_file False NA NA Executable file to apply on the targets. Return Values msg: type: str description: Overall firmware update status. returned: always sample: "Successfully submitted the firmware update job." update_status: type: dict description: Firmware Update job and progress details from the OME.
sample: { "error": { "code": "Base.1.0.GeneralError", "message": "A general error has occurred. See ExtendedInfo for more information.", "@Message.ExtendedInfo": [ { "MessageId": "GEN1234", "RelatedProperties": [], "Message": "Unable to process the request because an error occurred.", "MessageArgs": [], "Severity": "Critical", "Resolution":"Retry the operation. If the issue persists, contact your system administrator." } ] Examples - name: Update firmware from a DUP file using device IDs dellemc.openmanage.
Table 35. ome_firmware_catalog (continued) Parameter Required Default Choices Comments username True NA NA Target username password True NA NA Target user password port False 443 NA Target HTTPS port state NA present present, or absent ● C(present) creates or modifies a catalog. ● C(absent) deletes an existing catalog. catalog_name NA NA NA ● Name of the firmware catalog to be created. ● This is option is mutually exclusive with I(catalog_id).
Table 35. ome_firmware_catalog (continued) Parameter Required Default Choices Comments NFS, CIFS, HTTPS, and DELL_ONLINE. repository_username False NA NA User name of the repository where the catalog is stored. This option is mandatory when I(repository_type) is CIFS and is ignored when I(repository_type) is C(DELL_ONLINE). repository_password False NA NA Password to access the repository.
"ManifestVersion": null, "NextUpdate": null, "PredecessorIdentifier": null, "ReleaseDate": null, "ReleaseIdentifier": null, "Repository": { "CheckCertificate": true, "Description": "HTTPS Desc", "DomainName": null, "Id": null, "Name": "catalog4", "Password": null, "RepositoryType": "HTTPS", "Source": "company.com", "Username": null }, "Schedule": null, "SourcePath": "catalog", "Status": null, "TaskId": 10094 } job_id: description: Job ID of the catalog task.
Examples - name: Create a catalog from HTTPS repository dellemc.openmanage.ome_firmware_catalog: hostname: "192.168.0.1" username: "username" password: "password" catalog_name: "catalog_name" catalog_description: "catalog_description" repository_type: "HTTPS" source: "downloads.dell.com" source_path: "catalog" file_name: "catalog.gz" check_certificate: True - name: Create a catalog from HTTP repository dellemc.openmanage.ome_firmware_catalog: hostname: "192.168.0.
source_path: "cifs/R941" file_name: "catalog1.gz" repository_username: "repository_username" repository_password: "repository_password" repository_domain: "repository_domain" - name: Modify a catalog using a repository from Dell.com dellemc.openmanage.ome_firmware_catalog: hostname: "192.168.0.
Table 36. ome_firmware_baseline (continued) Parameter Required Default Choices Comments ● This option is mutually exclusive with I(baseline_id). baseline_id False NA NA ● ID of the baseline ● This option is mutually exclusive with I(baseline_name). baseline_description False NA NA Description for the baseline. new_baseline_name False NA NA New name of the baseline. catalog_name False NA NA Name of the catalog to be associated with the baseline.
"@odata.id": "/api/UpdateService/Baselines(239)", "@odata.type": "#UpdateService.Baselines", "CatalogId": 22, "ComplianceSummary": { "ComplianceStatus": "CRITICAL", "NumberOfCritical": 1, "NumberOfDowngrade": 0, "NumberOfNormal": 0, "NumberOfWarning": 0 }, "Description": "baseline_description", "DeviceComplianceReports@odata.navigationLink": "/api/UpdateService/ Baselines(239)/DeviceComplianceReports", "DowngradeEnabled": true, "Id": 239, "Is64Bit": true, "LastRun": "2020-05-22 16:42:40.
dellemc.openmanage.ome_firmware_baseline: hostname: "192.168.0.1" username: "username" password: "password" state: absent baseline_name: "baseline_name" Retrieve firmware baseline details Module: ome_firmware_baseline_info Synopsis This module retrieves the list and details of all the baselines on OpenManage Enterprise. Options Table 37.
"Id": 10342, "Type": { "Id": 1000, "Name": "DEVICE" } } } ], "TaskId": 41415, "TaskStatusId": 2060 Examples - name: Retrieve details of all the available firmware baselines dellemc.openmanage.ome_firmware_baseline_info: hostname: "192.168.0.1" username: "username" password: "password" - name: Retrieve details of a specific firmware baseline identified by its baseline name dellemc.openmanage.ome_firmware_baseline_info: hostname: "192.168.0.
Table 38. ome_firmware_baseline_compliance_info (continued) Parameter Required Default Choices Comments ● Either I(device_ids), I(device_service_tags), or I(device_group_names) is required to generate device based compliance report. ● I(device_ids) is mutually exclusive with I (device_service_tags),I(d evice_group_names), and I(baseline_name). ● Devices without reports are ignored. device_service_tags False NA NA ● A list of service tags for which the device based compliance report is generated.
{ "CatalogId": 53, "ComplianceSummary": { "ComplianceStatus": "CRITICAL", "NumberOfCritical": 2, "NumberOfDowngrade": 0, "NumberOfNormal": 0, "NumberOfWarning": 0 }, "Description": "", "DeviceComplianceReports": [ { "ComplianceStatus": "CRITICAL", "ComponentComplianceReports": [ { "ComplianceDependencies": [], "ComplianceStatus": "DOWNGRADE", "Criticality": "Ok", "CurrentVersion": "OSC_1.1", "Id": 1258, "ImpactAssessment": "", "Name": "OS COLLECTOR 2.
"Is64Bit": false, "LastRun": "2019-09-27 05:08:16.301", "Name": "baseline1", "RepositoryId": 43, "RepositoryName": "catalog2", "RepositoryType": "CIFS", "Targets": [ { "Id": 11603, "Type": { "Id": 1000, "Name": "DEVICE" } } ], "TaskId": 11710, "TaskStatusId": 0 } ] error_info: type: dict description: Details of http error. returned: on http error sample: { "error": { "@Message.
- name: Retrieves device compliance report for a specific baseline dellemc.openmanage.ome_firmware_baseline_compliance_info: hostname: "192.168.0.1" username: "username" password: "password" baseline_name: "baseline_name" Manage jobs This section describes the modules using which you can manage job operations.
]} "JobName": "Refresh Inventory for Device", "JobStatus": { "Id": 2080, "Name": "New" }, "JobType": { "Id": 8, "Internal": false, "Name": "Inventory_Task" }, "LastRun": "2000-01-29 10:51:34.
Options Table 40. ome_power_state Parameter Require d Default Choices Comments hostname Yes NA NA Target IP Address or hostname username Yes NA NA Target username password Yes NA NA Target user password port No 443 NA Target device HTTPS port power_state Yes NA ● ● ● ● ● device_id No NA NA Targeted device id. NOTE: I(device_id) is mutually exclusive with I(device_service_tag). device_service_t ag No NA NA Targeted device service tag.
"Key": "operationName", "Value": "POWER_CONTROL" } }, ], "Schedule": "", "StartTime": null, "State": "Enabled", "Targets": [ { "Data": "", "Id": 11112, "JobId": 11111, "TargetType": { "Id": 0000, "Name": "DEVICE" }, }, ], "UpdatedBy": null, "Visible": true Examples - name: Power state operation based on device ID dellemc.openmanage.ome_powerstate: hostname: "192.168.0.
● Configure user accounts View user account details Module: ome_user_info Synopsis This module retrieves the list and basic details of all user accounts or details of a specific user account. Options Table 41.
dellemc.openmanage.ome_user_info: hostname: "192.168.0.1" username: "username" password: "password" account_id: 1 - name: Get filtered user info based on user name dellemc.openmanage.ome_user_info: hostname: "192.168.0.1" username: "username" password: "password" system query options: filter: "Username eq 'test'" Configure user accounts Module: ome_user Synopsis This module: ● creates a new user account. ● modifies or deletes an existing user account. Options Table 42.
Table 42. ome_user (continued) Parameter Required Default Choices Comments NOTE: OME will throw an error message if required parameter is not provided for the operation. NOTE: See OpenManage Enterprise API Reference Guide for more details. Return Values msg: description: Overall status of the user operation. returned: always type: str sample: "Successfully created a User" user_status: description: Details of the user operation when I(state) is C(present). returned: When I(state) is C(present).
username: "username" password: "password" state: "present" attributes: UserName: "user3" RoleId: "10" Enabled: True Description: "Modify user Description" - name: Delete existing user using ID dellemc.openmanage.ome_user: hostname: "192.168.0.1" username: "username" password: "password" state: "absent" user_id: "1234" - name: Delete existing user using name dellemc.openmanage.ome_user: hostname: "192.168.0.
Table 43. ome_identity_pool (continued) Parameter Required Default Choices Comments new_pool_name False NA NA ● After creating an identity pool, I(pool_name) can be changed to I(new_pool_name). ● This option is ignored when creating an identity pool. pool_description False NA NA Description of the identity pool. ethernet_settings False NA NA Applicable for creating and modifying an identity pool using Ethernet settings.
Table 43. ome_identity_pool (continued) Parameter Required Default Choices Comments ● ● ● ● ● ● ● FC_settings False NA NA pool using iSCSI Initiator settings iqn_prefix- IQN prefix addresses initiator_ip_pool_settings - Applicable for creating and modifying an identity pool using iSCSI Initiator IP pool settings ip_range- Range of nonmulticast IP addresses subnet_mask- Subnet mask for I(ip_range) gateway- IP address of gateway primary_dns_server- IP address of the primary DNS server.
"IsSuccessful":True, "Issues":[] } error_info: description: Details of the HTTP Error. returned: on HTTP error type: dict sample: { "error": { "@Message.ExtendedInfo": [{ "Message": "Unable to process the request because an error occurred: Ethernet-MAC Range overlap found (in this Identity Pool or in a different one) .", "MessageArgs": [Ethernet-MAC Range overlap found (in this Identity Pool or in a different one)"], "MessageId": "CGEN6001", "RelatedProperties": [], "Resolution": "Retry the operation.
pool_name: "pool2" new_pool_name: "pool3" pool_description: "modifying identity pool with ethernet and fcoe settings" ethernet_settings: starting_mac_address: "90-90-90-90-90-90" identity_count: 61 fcoe_settings: starting_mac_address: "aabb.ccdd.5050" identity_count: 77 -name: Modify an identity pool using iSCSI and FC settings dellemc.openmanage.
Table 44. ome_application_network_proxy (continued) Parameter Required Default Choices Comments port False 443 NA Target HTTPS port enable_proxy True NA NA ● Enables or disables the HTTP proxy configuration. ● If I(enable proxy) is false, the HTTP proxy configuration is set to its default value. ip_address False NA NA ● Proxy server address ● This option is mandatory when I(enable_proxy) is true. proxy_port False NA NA ● Port number of the proxy server.
description: Updated network proxy configuration. returned: success sample: { "EnableAuthentication": true, "EnableProxy": true, "IpAddress": "192.168.0.2", "Password": null, "PortNumber": 444, "Username": "root" } error_info: description: Details of the HTTP error. returned: on HTTP error type: dict sample: { "error": { "@Message.ExtendedInfo": [ { "Message": "Unable to complete the request because the input value for PortNumber is missing or an invalid value is entered.
Synopsis This module allows the configuration of a DNS and an IPV4 or IPV6 network on OpenManage Enterprise. It is only applicable on versions 3.3 and above of OpenManage Enterprise and OpenManage Enterprise Modular. NOTE: ● The configuration changes can only be applied to one interface at a time. ● Once the configuration changes are applied, the system management consoles might be unreachable for some time, based on the changes made. Options Table 45.
Table 45. ome_application_network_address (continued) Parameter Required Default Choices Comments ● static_alternate_dns_server: Static IPv4 DNS alternate server. This option is applicable when I(use_dhcp_for_dns_server_names) is false. ipv6_configuration False NA ipv6 options IPv6 network configuration NOTE: Ensure that you have an alternate interface to access OpenManage Enterprise as these options can change the current IPv6 address for I(hostname).
Table 45. ome_application_network_address (continued) Parameter Required Default Choices Comments ○ This option is applicable when I(enable_vlan) is true. dns_configuration False NA NA DNS settings Suboptions: ● register_with_dns: Register or unregister I(dns_name) on the DNS Server. This option cannot be updated if vLAN configuration changes. ● use_dhcp_for_dns_domain_name: Get the I(dns_domain_name) using a DHCP server. ● dns_name: DNS name for I(hostname).
error_info: description: Details of the HTTP error. returned: on HTTP error type: dict sample: { "error": { "@Message.ExtendedInfo": [ { "Message": "Unable to update the address configuration because a dependent field is missing for Use DHCP for DNS Domain Name, Enable DHCP for ipv4 or Enable Autoconfig for ipv6 settings for valid configuration .
register_with_dns: false reboot_delay: 1 - name: DNS settings dellemc.openmanage.ome_application_network_address: hostname: "192.168.0.1" username: "username" password: "password" ipv4_configuration: enable: true use_dhcp_for_dns_server_names: false static_preferred_dns_server: 192.168.0.4 static_alternate_dns_server: 192.168.0.
Table 46. ome_application_network_webserver Parameter Required Default Choices Comments hostname True NA NA Target IP Address or hostname username True NA NA Target username password True NA NA Target user password port False 443 NA Target HTTPS port webserver_port False NA NA Port number used by OpenManage Enterprise to establish a secure server connection. WARNING: A change in port number results in a loss of connectivity in the current session for a minute or more.
username: "username" password: "password" webserver_port: 443 webserver_timeout: 10 - name: Update session time out dellemc.openmanage.ome_application_network_webserver: hostname: "192.168.0.1" username: "username" password: "password" webserver_timeout: 30 - name: Update web server port dellemc.openmanage.ome_application_network_webserver: hostname: "192.168.0.
Table 47. ome_application_network_time (continued) Parameters Required Default Choices Comments secondary_ntp_address2 False NA NA ● The second secondary NTP address ● This option is applicable when I(enable_ntp) is true. Return Values msg: type: str description: Overall status of the network time configuration change. returned: always sample: "Successfully configured network time." proxy_configuration: type: dict description: Updated application network time configuration.
username: "username" password: "password" enable_ntp: true time_zone: "TZ_ID_66" primary_ntp_address: "10.136.112.220" secondary_ntp_address1: "10.136.112.221" secondary_ntp_address2: "10.136.112.222" Generate and upload a certificate signing request Module: ome_application_certificate Synopsis This module allows the generation of a new certificate signing request (CSR) and to upload the certificate on OpenManage Enterprise.
Table 48. ome_application_certifcate (continued) Parameters Required Default Choices Comments cannot be accessed for a few seconds. Return Values msg: type: str description: Overall status of the certificate signing request. returned: always sample: "Successfully generated certificate signing request." csr_status: type: dict description: details of the generated certificate.
country: "US" email: "support@dell.com" - name: Upload the certificate dellemc.openmanage.ome_application_certificate: hostname: "192.168.0.1" username: "username" password: "password" command: "upload" upload_file: "/path/certificate.
Table 49. ome_network_vlan (continued) Parameters Required Default Choices Comments description False NA NA Provide a short description of the VLAN to be created or modified. vlan_minimum False NA NA The minimum value of the VLAN range. vlan_maximum False NA NA ● The maximum value of the VLAN range. ● A single value VLAN is created if the vlan_maximum and vlan_minmum values are the same.
"@Message.ExtendedInfo": [ { "MessageId": "CTEM1043", "RelatedProperties": [], "Message": "Unable to create or update the network because the entered VLAN minimum 0 (unsure of what the 0 refers to) is not within a valid range ( 1 - 4000 or 4021 - 4094 ).", "MessageArgs": [ "0", "1", "4000", "4021", "4094" ], "Severity": "Warning", "Resolution": "Enter a valid VLAN minimum as identified in the message and retry the operation.
Retrieve VLAN information Module: ome_network_vlan_info Synopsis This module allows to retrieve the following: ● A list of all the network VLANs with their detailed information. ● Information about a specific network VLAN using VLAN I(id) or VLAN I(name). Options Table 50.
}, { "UpdatedTime": "2020-09-02 18:48:42.129", "VlanMaximum": 111, "VlanMinimum": 111 "CreatedBy": "admin", "CreationTime": "2020-09-02 18:49:11.507", "Description": "Description of Logical Network - 2", "Id": 20058, "InternalRefNWUUId": "e46ccb3f-ef57-4617-ac76-46c56594005c", "Name": "Network VLAN - 2", "Type": { "Description": "This is the network for general purpose traffic. QOS Priority : Silver.
password: "password" name: "Network VLAN - 1 Port breakout ome_network_port_breakout Synopsis ● This module allows to automate the breaking out of IOMs in fabric mode into logical sub ports. ● The port breakout operation is only supported in OpenManage Enterprise Modular. Options Table 51.
{"JobId": 11111, "Key": "interfaceId", "Value": "2HB7NX2:phy-port1/1/11"}, {"JobId": 11111, "Key": "breakoutType", "Value": "1X40GE"}], "Schedule": "startnow", "StartTime": null, "State": "Enabled", "Targets": [ {"Data": "", "Id": 11112, "JobId": 34206, "TargetType": { "Id": 1000, "Name": "DEVICE"}} ], "UpdatedBy": null, "UserGenerated": true, "Visible": true } error_info: description: Details of the HTTP Error. returned: on HTTP error type: dict sample: { "error": { "code": "Base.1.0.
Options Table 52. ome_smart_fabric Parameter Required Default Choices Comments hostname True NA NA Target IP Address or hostname username True NA NA Target username password True NA NA Target user password port False 443 NA Target HTTPS port state True present present, or absent ● C(present) creates a new fabric or modifies an existing fabric. ● C(absent) deletes an existing fabric. NOTE: The create, modify, or delete fabric operation takes around 15-20 minutes to complete.
Table 52. ome_smart_fabric (continued) Parameter Required Default Choices Comments secondary_switch_ser vice_tag False NA NA ● Service tag of the second switch. ● I(secondary_switch_ service_tag) is mandatory for fabric creation. ● I(primary_switch_ser vice_tag) must belong to the model selected in I(fabric_design). override_LLDP_config uration False NA Enabled, or Disabled ● Enable this configuration to allow Fabric Management Address to be included in LLDP messages. .
} ] } } "Message": "ABC.", "MessageArgs": [], "Severity": "Informational", "Resolution": "XYZ" Examples - name: Create a fabric dellemc.openmanage.
Table 53. ome_smart_fabric_uplink (continued) Parameter Required Default Choices Comments ○ Modifies an existing uplink with the provided I(name). ● C(absent) - Deletes the uplink with the provided I(name). WARNING: Delete operation can impact the network infrastructure. fabric_name True NA NA Provide the I(fabric_name) of the fabric for which the uplink is to be configured. name True NA NA Provide the I(name) of the uplink to be created, modified, or deleted.
Table 53. ome_smart_fabric_uplink (continued) Parameter Required Default Choices Comments running the Fabric Manager must support this configuration feature. If not, uplink creation will be successful with an appropriate error message in response. primary_switch_service False _tag NA NA Service tag of the primary switch. primary_switch_ports False NA NA ● The IOM slots to be connected to the primary switch. ● I(primary_switch_se rvice_tag) is mandatory for this option.
version of the I/O Module running the Fabric Manager does not support the configuration feature.", "MessageArgs": [], "MessageId": "CDEV7151", "RelatedProperties": [], "Resolution": "Update the firmware version of the I/O Module running the Fabric Manager and retry the operation. For information about the recommended I/O Module firmware versions, see the OpenManage Enterprise-Modular User's Guide available on the support site.", "Severity": "Informational" } ], "code": "Base.1.0.
dellemc.openmanage.ome_smart_fabric_uplink: hostname: "192.168.0.1" username: "username" password: "password" state: "absent" fabric_name: "fabric1" name: "uplink1" tags: delete_uplink - name: Modify an Uplink name dellemc.openmanage.ome_smart_fabric_uplink: hostname: "192.168.0.1" username: "username" password: "password" state: "present" fabric_name: "fabric1" name: "uplink1" new_name: "uplink2" tags: modify_uplink_name - name: Modify Uplink ports dellemc.openmanage.
Table 54. ome_profile Parameter Required Default Choices Comments hostname True NA NA Target IP Address or hostname username True NA NA Target username password True NA NA Target user password port False 443 NA Target HTTPS port command NA create create, modify, delete, assign, unassign, and migrate ● C(create) creates new profiles. ● C(modify) modifies an existing profile. Only I(name), I(description), I(boot_to_network_ iso), and I(attributes) can be modified.
Table 54. ome_profile (continued) Parameter Required Default Choices Comments I(number_of_profile s). new_name NA NA NA ● New name of the profile. ● Applicable when I(command) is C(modify). number_of_profiles NA 1 NA ● Provide the number of profiles to be created. ● This is applicable when I(name_prefix) is used with C(create). ● This option is mutually exclusive with I(name). ● Openmanage Enterprise can create a maximum of 100 profiles.
Table 54. ome_profile (continued) Parameter Required Default Choices Comments ● This is typically 7 to 8 characters in length. ● This is applicable when I(command) is C(assign), and C(migrate). ● This option is mutually exclusive with I(device_id). ● If the device does not exist when I(command) is C(assign) then the profile is autodeployed. description NA NA NA Description of the profile. boot_to_network_iso NA NA NA Details of the Share ISO.
Table 54. ome_profile (continued) Parameter Required Default Choices Comments filters NA NA NA ● Filters the profiles based on selected criteria. ● This is applicable when I(command) is C(delete) or C(unassign). ● This supports suboption I(ProfileIds) which takes a list of profile IDs. ● This also supports OData filter expressions with the suboption I(Filters). ● See OpenManage Enterprise REST API guide for the filtering options available.
Table 54. ome_profile (continued) Parameter Required Default Choices Comments ○ Provides the different shut down options. ○ This is applicable when I(command) is C(assign). ● Schedule: ○ Schedule for profile deployment. ○ This is applicable when I(command) is C(assign). Return Values msg: description: Overall status of the profile operation. returned: always type: str sample: "Successfully created 2 profile(s)." profile_ids: description: IDs of the profiles created.
name_prefix: "omam_profile" number_of_profiles: 2 - name: Create profile with NFS share dellemc.openmanage.ome_profile: hostname: "192.168.0.1" username: "username" password: "password" command: create template_name: "template 1" name_prefix: "omam_profile" number_of_profiles: 1 boot_to_network_iso: boot_to_network: True share_type: NFS share_ip: "192.168.0.1" iso_path: "path/to/my_iso.iso" iso_timeout: 8 - name: Create profile with CIFS share dellemc.openmanage.ome_profile: hostname: "192.168.0.
username: "username" password: "password" command: "delete" filters: SelectAll: True Filters: =contains(ProfileName,'Profile 00002') - name: Delete profiles using profile list filter dellemc.openmanage.ome_profile: hostname: "192.168.0.1" username: "username" password: "password" command: "delete" filters: ProfileIds: - 17123 - 16124 - name: Assign a profile to target along with network share dellemc.openmanage.ome_profile: hostname: "192.168.0.
- 16123 - name: Migrate a profile dellemc.openmanage.ome_profile: hostname: "192.168.0.1" username: "username" password: "password" command: "migrate" name: "Profile 00001" device_id: 12456 Device discovery Manage discovery jobs Module: ome_discovery Synopsis This module allows to create, modify, or delete a discovery job. Options Table 55.
Table 55. ome_discovery (continued) Parameter Required Default Choices Comments exclusive with I(discovery_id). discovery_id NA NA NA ● ID of the discovery configuration group. ● This option is mutually exclusive with I(discovery_job_na me). new_name NA NA NA New name of the discovery configuration job. schedule NA RunNow RunNow, and RunLater ● Provides the option to schedule the discovery job. ● If C(RunLater) is selected, then I(cron) must be specified.
Table 55. ome_discovery (continued) Parameter Required Default Choices Comments job_wait_timeout NA 10800 NA ● The maximum wait time of I(job_wait) in seconds. The job is tracked only for this duration. ● This option is applicable when I(job_wait) is C(True). ignore_partial_failure NA False NA ● Provides the option to ignore partial failures. Partial failures occur when there is a combination of both discovered and undiscovered IPs.
Table 55. ome_discovery (continued) Parameter Required Default Choices Comments host names, or the range of IP addresses of the devices to be discovered or included. ○ Sample Valid IP Range Formats: ■ 192.35.0.0 ■ 192.36.0.0-10 .36.0.255 ■ 192.37.0.0/2 4 ■ 2345:f2b1:f0 83:135::5500 /118 ■ 2345:f2b1:f0 83:135::a500 -2607:f2b1:f0 83:135::a600 ■ hostname.do main.tld ■ hostname ■ 2345:f2b1:f0 83:139::22a ○ Sample Invalid IP Range Formats: ■ 192.35.0.* ■ 192.36.0.0-2 55 ■ 192.35.0.0/2 55.255.255.
Table 55. ome_discovery (continued) Parameter Required Default Choices Comments combination or all of the types can be provided ○ Supported protocols for each device type are: ■ SERVER I(wsman), I(redfish), I(snmp), I(ipmi), I(ssh) and I(vmware). ■ CHASSIS I(wsman) and I(redfish). ■ NETWORK SWITCH I(snmp). ■ STORAGE I(storage) and I(snmp). ● wsman: Web ServicesManagement (WSMan). Suboptions: ○ username: Provide a username for the protocol. ○ password: Provide a password for the protocol.
Table 55. ome_discovery (continued) Parameter Required Default Choices Comments ○ cn_check: Enable the Common Name (CN) check. ○ ca_check: Enable the Certificate Authority (CA) check. ○ certificate_data: Provide certificate details for the CA check. ● redfish: Redfish protocol. Suboptions: ○ username: Provide a username for the protocol. ○ password: Provide a password for the protocol. ○ domain: Provide a domain for the protocol.
Table 55. ome_discovery (continued) Parameter Required Default Choices Comments details for the CA check. ● snmp: Simple Network Management Protocol (SNMP). Suboptions: ○ community: Community string for the SNMP protocol. ○ port: Enter the port number that the job must use to discover the devices. ○ retries: Enter the number of repeated attempts required to discover a device. ○ timeout: Enter the time after which a job must stop running. ○ cn_check: Enable the Common Name (CN) check.
Table 55. ome_discovery (continued) Parameter Required Default Choices Comments ○ port: Enter the port number that the job must use to discover the devices. ○ retries: Enter the number of repeated attempts required to discover a device. ○ timeout: Enter the time after which a job must stop running. ○ cn_check: Enable the Common Name (CN) check. ○ ca_check: Enable the Certificate Authority (CA) check. ○ certificate_data: Provide certificate details for the CA check. ● ssh: Secure Shell (SSH).
Table 55. ome_discovery (continued) Parameter Required Default Choices Comments ○ timeout: Enter the time after which a job must stop running. ○ check_known_h osts: Verify the known host key. ○ is_sudo_user: Use the SUDO option. ● ipmi: Intelligent Platform Management Interface (IPMI). Suboptions: ○ username: Provide a username for the protocol. ○ password: Provide a password for the protocol. ○ domain: Provide a domain for the protocol.
sample: { "DiscoveredDevicesByType": [ { "Count": 3, "DeviceType": "SERVER" } ], "Completed": [ "192.168.24.17", "192.168.24.20", "192.168.24.22" ], "Failed": [ "192.168.24.15", "192.168.24.16", "192.168.24.18", "192.168.24.19", "192.168.24.21", "host123" ], "DiscoveryConfigDiscoveredDeviceCount": 3, "DiscoveryConfigEmailRecipient": "myemail@dell.com", "DiscoveryConfigExpectedDeviceCount": 9, "DiscoveryConfigGroupId": 125, "JobDescription": "D1", "JobEnabled": true, "JobEndTime": "2021-01-01 06:27:29.
discovery_config_targets: - network_address_detail: - 192.96.24.1-192.96.24.255 device_types: - SERVER wsman: username: user password: password - name: Discover chassis in a range dellemc.openmanage.ome_discovery: hostname: "192.168.0.1" username: "username" password: "password" discovery_job_name: "Discovery_chassis_1" discovery_config_targets: - network_address_detail: - 192.96.24.1-192.96.24.255 device_types: - CHASSIS wsman: username: user password: password - name: Discover switches in a range dellemc.
- 192.96.26.108 device_types: - SERVER - CHASSIS - STORAGE - NETWORK SWITCH wsman: username: wsman_user password: wsman_pwd redfish: username: redfish_user password: redfish_pwd storage: username: root password: https_pwd snmp: community: snmp_community - network_address_detail: - 192.96.25.1-192.96.25.
Table 56. ome_diagnostics (continued) Parameter Required Default Choices Comments new name for the slot. ● I(device_options) is mutually exclusive with I(slot_options). Suboptions: ● device_id: ○ Device ID of the sled in the slot. ○ his is mutually exclusive with I(device_service _tag). ● device_service_tag: ○ Service tag of the sled in the slot. ○ This is mutually exclusive with I(device_id). ● slot_name: ○ Provide name for the slot.
Table 56. ome_diagnostics (continued) Parameter Required Default Choices Comments ■ ■ Provide name for the slot. Required: True Return Values msg: type: str description: Overall status of the slot rename operation. returned: always sample: "Successfully renamed the slot(s)." slot_info: description: - Information of the slots that are renamed successfully. - C(NOTE) Only slots which were renamed will be populated.
}, { "ChassisName": "MX-ABCD123", "ChassisServiceTag": "ABCD123", "DeviceType": "4000", "JobId": 1234, "JobStatus": "Aborted", "SlotId": "10061", "SlotName": "c2", "SlotNumber": "1", "SlotType": "4000" "ChassisId": "10053", "ChassisName": "MX-PQRS123", "ChassisServiceTag": "PQRS123", "DeviceType": "1000", "JobId": 0, "JobStatus": "HTTP Error 400: Bad Request", "SlotId": "10069", "SlotName": "b2", "SlotNumber": "3", "SlotType": "2000" } ] error_info: description: Details of the HTTP Error.
- name: Rename single slot name of the sled using sled ID dellemc.openmanage.ome_chassis_slots: hostname: "192.168.0.1" username: "username" password: "password" device_options: - device_id: 10054 slot_name: slot_device_name_1 - name: Rename single slot name of the sled using sled service tag dellemc.openmanage.ome_chassis_slots: hostname: "192.168.0.
Table 57. ome_active_directory (continued) Parameter Required Default Choices Comments the IP address of the domain controller. ● For multiple domain controllers, a maximum of three values are supported. domain_controller_look up NA DNS ● DNS ● MANUAL Select the Domain Controller Lookup method. domain_controller_port NA 3269 NA ● Domain controller port. ● By default, Global Catalog Address port number 3269 is populated. ● For the Domain Controller Access, enter 636 as the port number.
Table 57. ome_active_directory (continued) Parameter Required Default Choices Comments domain_password NA NA NA ● Provide the domain password. ● This is applicable when I(test_connection) is C(yes). domain_username NA NA NA ● Provide the domain username either in the UPN (username@domain) or NetBIOS (domain\\username) format. ● This is applicable when I(test_connection) is C(yes). validate_certificate NA no NA ● Enables validation of SSL certificate of the domain controller.
} ], "code": "Base.1.0.GeneralError", "message": "A general error has occurred. See ExtendedInfo for more information." } } } Examples - name: Add Active Directory service using DNS lookup along with the test connection dellemc.openmanage.ome_active_directory: hostname: "192.168.0.1" username: "username" password: "password" name: my_ad1 domain_server: - domainname.com group_domain: domainname.
Manage Active Directory user group Module: ome_domain_user_groups Synopsis This module allows to create, modify, or delete an Active Directory user group on OpenManage Enterprise and OpenManage Enterprise Modular. Options Table 58.
Return Values msg: type: str description: Overall status of the Active Directory user group operation. returned: always sample: Successfully deleted the active directory user group. domain_user_status: description: Details of the domain user operation, when I(state) is C(present). returned: When I(state) is C(present).
password: "password" state: present group_name: account operators role: viewer - name: Delete active directory user group dellemc.openmanage.ome_domain_user_groups: hostname: "192.168.0.
Table 59. ome_diagnostics (continued) Parameter Required Default Choices Comments C(support_assist_c ollection) logs of all devices within the group. ● This is applicable for C(support_assist_c ollection) logs. ● This option is not applicable for OpenManage Enterprise Modular. ● is option is mutually exclusive with I(device_ids) and I(device_service_ta gs).
Table 59. ome_diagnostics (continued) Parameter Required Default Choices Comments ● C(RAID_LOGS) to collect RAID controller logs. ● This option is applicable only for C(support_assist_c ollection) of I(log_type). share_address True NA NA Network share IP address. share_name True NA NA ● Network share path. ● Filename is auto generated and should not be provided as part of I(share_name). share_type True NA ● NFS ● CIFS Network share type share_user NA NA NA ● Network share username.
Table 59. ome_diagnostics (continued) Parameter Required Default Choices Comments applicable for I(test_connection). Return Values msg: type: str description: "Overall status of the export log." returned: always sample: "Export log job completed successfully. "jog_status: type: dict description: Details of the export log operation status.
Examples - name: Export application log using CIFS share location dellemc.openmanage.ome_diagnostics: hostname: "192.168.0.1" username: "username" password: "password" share_type: CIFS share_address: "192.168.0.2" share_user: share_username share_password: share_password share_name: cifs_share log_type: application mask_sensitive_info: false test_connection: true - name: Export application log using NFS share location dellemc.openmanage.ome_diagnostics: hostname: "192.168.0.
5 Modules for Redfish APIs Topics: • • • • How OpenManage Ansible Modules work with Redfish APIs Firmware update using standard Redfish URI Manage storage volume configuration Manage device power state How OpenManage Ansible Modules work with Redfish APIs The Redfish Scalable Platforms Management API is a standard defined by the Distributed Management Task Force (DMTF). Redfish is a next-generation systems management interface standard which enables scalable, secure, and open server management.
Table 60. redfish_firmware (continued) Parameter Required Default Choices Comments firmware_repo/ component.exe transfer_protocol False HTTP HTTP, HTTPS, FTP, NSF, CIFS, FTP, OEM, SCP, SFTP, or TFTP ● Protocol used to transfer the firmware image file. ● Applicable for URIbased update. NOTE: Dell PowerEdge servers support transfer protocols only through HTTPbased shares. Return values msg: description: Overall status of the firmware update task.
Examples - name: Update the firmware from a single executable file available in a HTTP protocol dellemc.openmanage.redfish_firmware: baseuri: "192.168.0.1" username: "user_name" password: "user_password" image_uri: "http://192.168.0.2/firmware_repo/component.exe" transfer_protocol: "HTTP" - name: Update the firmware from a single executable file available in a local path dellemc.openmanage.redfish_firmware: baseuri: "192.168.0.
Table 61. redfish_storage_volume (continued) Parameter Required Default Choices Comments ○ I(state) is C(absent), when deleting a volume. ○ I(command) is C(initialize), when initializing a volume. state False NA Present, or absent. ● C(present) creates a storage volume for a specified I (controller_id), or modifies the storage volume for a specified I (volume_id). NOTE: Modification of an existing volume depends on drive and controller capabilities.
Table 61. redfish_storage_volume (continued) Parameter Required Default Choices Comments drives False NA NA ● FQDD of the Physical disks. ● For exampleDisk.Bay.0:Enclosure.I nternal.0-1:RAID.Slot.1 -1. ● Only applicable when I(state) is C(present) when creating a new volume. block_size_bytes False NA NA Block size in bytes.Only applicable when I(state) is C(present). capacity_bytes False NA NA ● Virtual disk size in bytes. ● Only applicable when I(state) is C(present).
Table 61. redfish_storage_volume (continued) Parameter Required Default Choices Comments ● Only applicable when I(command) is C(initialize). Return Values msg: description: Overall status of the storage configuration operation. returned: always type: str sample: "Successfully submitted create volume task." task: type: dict description: Returns ID and URI of the created task.
username: "username" password: "password" state: "present" controller_id: "RAID.Slot.1-1" volume_type: "NonRedundant" drives: - Disk.Bay.1:Enclosure.Internal.0-1:RAID.Slot.1-1 - name: Modify a volume's encryption type settings dellemc.openmanage.redfish_storage_volume: baseuri: "192.168.0.1" username: "username" password: "password" state: "present" volume_id: "Disk.Virtual.5:RAID.Slot.1-1" encryption_types: "ControllerAssisted" encrypted: true - name: Delete an existing volume dellemc.openmanage.
Table 62. redfish_powerstate (continued) Parameter Required Default Choices Comments ● C(ForceRestart): Turns off the device immediately, and then restarts the server. ● C(GracefulRestart): Performs graceful shutdown of the device, and then restarts the device. ● C(GracefulShutdow n): Performs a graceful shutdown of the device, and then turns off the device. ● If C(Nmi): Sends a diagnostic interrupt to the device. This is usually a nonmaskable interrupt (NMI) on x86 systems.
Table 62. redfish_powerstate (continued) Parameter Required Default Choices Comments / redfish/v1/ Systems) Examples - name: Manage power state of the device dellemc.openmanage.redfish_powerstate: baseuri: "192.168.0.1" username: "username" pasword: "password" reset_type: "On" - name: Manage power state of a specified device dellemc.openmanage.redfish_powerstate: baseuri: "192.168.0.1" username: "username" password: "password" reset_type: "ForceOff" resource_id: "System.Embedded.
6 Deprecated modules The OpenManage Ansible modules listed here are deprecated. Topics: • • View firmware inventory View the system inventory View firmware inventory Module: dellemc_get_firmware_inventory Synopsis You can view the firmware inventory of a server using this module. This module displays components of a server and the corresponding firmware versions. Check_mode support: No Options Table 63.
] } } "SubDeviceID": null, "SubVendorID": null, "Updateable": "true", "VendorID": null, "VersionString": "00.1D.7D", "impactsTPMmeasurements": "false" Example - name: Get Installed Firmware Inventory dellemc.openmanage.dellemc_get_firmware_inventory: idrac_ip: "192.168.0.1" idrac_user: "user_name" idrac_password: "user_password" View the system inventory Module: dellemc_get_system_inventory Synopsis System inventory provides basic and component level detailed inventory information.
} ] } msg: description: Details of the Error occurred. returned: on error type: dict sample: { "error": { "code": "Base.1.0.GeneralError", "message": "A general error has occurred. See ExtendedInfo for more information.", "@Message.ExtendedInfo": [ { "MessageId": "GEN1234", "RelatedProperties": [], "Message": "Unable to process the request because an error occurred.", "MessageArgs": [], "Severity": "Critical", "Resolution": "Retry the operation. If the issue persists, contact your system administrator.