community.general.idrac_redfish_config – Manages servers through iDRAC using Dell Redfish APIs

Note

This plugin is part of the community.general collection (version 2.5.1).

To install it use: ansible-galaxy collection install community.general.

To use it in a playbook, specify: community.general.idrac_redfish_config.

Synopsis

  • For use with Dell iDRAC operations that require Redfish OEM extensions

  • Builds Redfish URIs locally and sends them to remote iDRAC controllers to set or update a configuration attribute.

Parameters

Parameter Choices/Defaults Comments
auth_token
string
added in 2.3.0 of community.general
Security token for authentication with OOB controller
baseuri
string / required
Base URI of iDRAC
category
string / required
Category to execute on iDRAC
command
list / elements=string / required
List of commands to execute on iDRAC
SetManagerAttributes, SetLifecycleControllerAttributes and SetSystemAttributes are mutually exclusive commands when category is Manager
manager_attribute_name
string
(deprecated) name of iDRAC attribute to update
manager_attribute_value
string
(deprecated) value of iDRAC attribute to update
manager_attributes
dictionary
added in 0.2.0 of community.general
Default:
{}
dictionary of iDRAC attribute name and value pairs to update
password
string
Password for authentication with iDRAC
resource_id
string
added in 0.2.0 of community.general
The ID of the System, Manager or Chassis to modify
timeout
integer
Default:
10
Timeout in seconds for URL requests to iDRAC controller
username
string
User for authentication with iDRAC

Examples

- name: Enable NTP and set NTP server and Time zone attributes in iDRAC
  community.general.idrac_redfish_config:
    category: Manager
    command: SetManagerAttributes
    resource_id: iDRAC.Embedded.1
    manager_attributes:
      NTPConfigGroup.1.NTPEnable: "Enabled"
      NTPConfigGroup.1.NTP1: "{{ ntpserver1 }}"
      Time.1.Timezone: "{{ timezone }}"
    baseuri: "{{ baseuri }}"
    username: "{{ username}}"
    password: "{{ password }}"

- name: Enable Syslog and set Syslog servers in iDRAC
  community.general.idrac_redfish_config:
    category: Manager
    command: SetManagerAttributes
    resource_id: iDRAC.Embedded.1
    manager_attributes:
      SysLog.1.SysLogEnable: "Enabled"
      SysLog.1.Server1: "{{ syslog_server1 }}"
      SysLog.1.Server2: "{{ syslog_server2 }}"
    baseuri: "{{ baseuri }}"
    username: "{{ username}}"
    password: "{{ password }}"

- name: Configure SNMP community string, port, protocol and trap format
  community.general.idrac_redfish_config:
    category: Manager
    command: SetManagerAttributes
    resource_id: iDRAC.Embedded.1
    manager_attributes:
      SNMP.1.AgentEnable: "Enabled"
      SNMP.1.AgentCommunity: "public_community_string"
      SNMP.1.TrapFormat: "SNMPv1"
      SNMP.1.SNMPProtocol: "All"
      SNMP.1.DiscoveryPort: 161
      SNMP.1.AlertPort: 162
    baseuri: "{{ baseuri }}"
    username: "{{ username}}"
    password: "{{ password }}"

- name: Enable CSIOR
  community.general.idrac_redfish_config:
    category: Manager
    command: SetLifecycleControllerAttributes
    resource_id: iDRAC.Embedded.1
    manager_attributes:
      LCAttributes.1.CollectSystemInventoryOnRestart: "Enabled"
    baseuri: "{{ baseuri }}"
    username: "{{ username}}"
    password: "{{ password }}"

- name: Set Power Supply Redundancy Policy to A/B Grid Redundant
  community.general.idrac_redfish_config:
    category: Manager
    command: SetSystemAttributes
    resource_id: iDRAC.Embedded.1
    manager_attributes:
      ServerPwr.1.PSRedPolicy: "A/B Grid Redundant"
    baseuri: "{{ baseuri }}"
    username: "{{ username}}"
    password: "{{ password }}"

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description
msg
string
always
Message with action result or error description

Sample:
Action was successful


Authors

  • Jose Delarosa (@jose-delarosa)