community.general.idrac_redfish_info 模块 – 通过 iDRAC 使用 Redfish API 收集 PowerEdge 服务器信息

注意

此模块是 community.general 集合 (版本 10.1.0) 的一部分。

如果您正在使用 ansible 包,您可能已经安装了此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用: ansible-galaxy collection install community.general

要在 playbook 中使用它,请指定: community.general.idrac_redfish_info

概要

  • 在本地构建 Redfish URI 并将其发送到远程 iDRAC 控制器以获取信息。

  • 用于需要 Redfish OEM 扩展的 Dell EMC iDRAC 操作。

参数

参数

注释

auth_token

字符串

在 community.general 2.3.0 中添加

用于向 iDRAC 进行身份验证的安全令牌。

baseuri

字符串 / 必需

iDRAC 的基本 URI。

category

字符串 / 必需

在 iDRAC 上执行的类别。

command

列表 / 元素=字符串 / 必需

要在 iDRAC 上执行的命令列表。

GetManagerAttributes 返回包含 iDRAC、LifecycleController 和系统属性的字典列表。

password

字符串

用于向 iDRAC 进行身份验证的密码。

timeout

整数

对 iDRAC 的 HTTP 请求的超时时间(秒)。

默认值: 10

username

字符串

用于向 iDRAC 进行身份验证的用户名。

属性

属性

支持

描述

check_mode

支持:完全支持

在 community.general 3.3.0 中添加

此操作不会修改状态。

可以在 check_mode 下运行并返回更改状态预测,而无需修改目标。

diff_mode

支持: N/A

此操作不会修改状态。

在差异模式下,将返回有关已更改内容(或可能需要在 check_mode 中更改的内容)的详细信息。

示例

- name: Get Manager attributes with a default of 20 seconds
  community.general.idrac_redfish_info:
    category: Manager
    command: GetManagerAttributes
    baseuri: "{{ baseuri }}"
    username: "{{ username }}"
    password: "{{ password }}"
    timeout: 20
  register: result

# Examples to display the value of all or a single iDRAC attribute
- name: Store iDRAC attributes as a fact variable
  ansible.builtin.set_fact:
    idrac_attributes: "{{ result.redfish_facts.entries | selectattr('Id', 'defined') | selectattr('Id', 'equalto', 'iDRACAttributes') | list | first }}"

- name: Display all iDRAC attributes
  ansible.builtin.debug:
    var: idrac_attributes

- name: Display the value of 'Syslog.1.SysLogEnable' iDRAC attribute
  ansible.builtin.debug:
    var: idrac_attributes['Syslog.1.SysLogEnable']

# Examples to display the value of all or a single LifecycleController attribute
- name: Store LifecycleController attributes as a fact variable
  ansible.builtin.set_fact:
    lc_attributes: "{{ result.redfish_facts.entries | selectattr('Id', 'defined') | selectattr('Id', 'equalto', 'LCAttributes') | list | first }}"

- name: Display LifecycleController attributes
  ansible.builtin.debug:
    var: lc_attributes

- name: Display the value of 'CollectSystemInventoryOnRestart' attribute
  ansible.builtin.debug:
    var: lc_attributes['LCAttributes.1.CollectSystemInventoryOnRestart']

# Examples to display the value of all or a single System attribute
- name: Store System attributes as a fact variable
  ansible.builtin.set_fact:
    system_attributes: "{{ result.redfish_facts.entries | selectattr('Id', 'defined') | selectattr('Id', 'equalto', 'SystemAttributes') | list | first }}"

- name: Display System attributes
  ansible.builtin.debug:
    var: system_attributes

- name: Display the value of 'PSRedPolicy'
  ansible.builtin.debug:
    var: system_attributes['ServerPwr.1.PSRedPolicy']

返回值

常见的返回值已在 此处 记录,以下是此模块特有的字段

描述

msg

字典

取决于任务的不同结果

返回:始终

示例: "管理器属性列表"

作者

  • Jose Delarosa (@jose-delarosa)