dellemc.openmanage.idrac_server_config_profile 模块 – 导出或导入 iDRAC 服务器配置配置文件 (SCP)

注意

此模块是 dellemc.openmanage 集合 (版本 9.9.0) 的一部分。

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

要安装它,请使用: ansible-galaxy collection install dellemc.openmanage。您需要其他要求才能使用此模块,有关详细信息,请参阅 要求

要在 playbook 中使用它,请指定: dellemc.openmanage.idrac_server_config_profile

dellemc.openmanage 2.1.0 中的新增功能

概要

  • 从 iDRAC 导出服务器配置配置文件 (SCP),或从网络共享 (CIFS、NFS、HTTP、HTTPS) 或本地路径导入。

要求

执行此模块的主机需要以下要求。

  • python >= 3.9.14

参数

参数

注释

ca_path

路径

在 dellemc.openmanage 5.0.0 中添加

包含用于验证的 CA 证书的隐私增强邮件 (PEM) 文件。

command

字符串

如果为 import,则模块执行 SCP 导入操作。

如果为 export,则模块执行 SCP 导出操作。

如果为 preview,则模块执行 SCP 预览操作。

import_custom_defaults 允许您导入自定义的 iDRAC 默认设置。

export_custom_defaults 允许您导出自定义的 iDRAC 默认设置。

import_custom_defaultsexport_custom_defaults 仅在固件版本为 7.00.00.00 及以上的 iDRAC9 上受支持。

选项

  • "import"

  • "export" ← (默认)

  • "preview"

  • "import_custom_defaults"

  • "export_custom_defaults"

end_host_power_state

字符串

此选项适用于 import 命令。

如果为 On,则结束主机电源状态为开启。

如果为 Off,则结束主机电源状态为关闭。

选项

  • "On" ← (默认)

  • "Off"

export_format

字符串

指定输出文件格式。此选项适用于 exportexport_custom_defaults 命令。

commandexport_custom_defaults 时,默认导出文件格式始终为 XML。

选项

  • "JSON"

  • "XML" ← (默认)

export_use

字符串

在 dellemc.openmanage 7.3.0 中添加

指定要导出的服务器配置配置文件 (SCP) 的类型。

此选项适用于commandexport 的情况。

Default 创建配置的非破坏性快照。

Replace 用另一个服务器替换服务器或将服务器设置恢复到已知的基线。

Clone 将设置从一台服务器克隆到另一台具有相同硬件设置的服务器。所有设置(I/O 身份除外)都会更新(例如,将重置 RAID)。此导出中的设置在上传到另一台系统时将具有破坏性。

选项

  • "Default" ← (默认)

  • "Clone"

  • "Replace"

idrac_ip

字符串 / 必需

iDRAC IP 地址。

idrac_password

别名:idrac_pwd

字符串

iDRAC 用户密码。

如果未提供密码,则使用环境变量 IDRAC_PASSWORD

示例:export IDRAC_PASSWORD=password

idrac_port

整数

iDRAC 端口。

默认值: 443

idrac_user

字符串

iDRAC 用户名。

如果未提供用户名,则使用环境变量 IDRAC_USERNAME

示例:export IDRAC_USERNAME=username

ignore_certificate_warning

字符串

在 dellemc.openmanage 7.3.0 中添加

如果为 ignore,则忽略证书警告。

如果为 showerror,则显示证书警告。

ignore_certificate_warning 仅在share_name 为 HTTPS 类型时才被考虑,并且仅在 iDRAC9 上受支持。

选项

  • "ignore" ← (默认)

  • "showerror"

import_buffer

字符串

在 dellemc.openmanage 7.3.0 中添加

用于将 xml 或 json 的缓冲区输入导入 iDRAC。

commandimport_custom_defaults 时,仅支持 XML 文件格式。

此选项适用于commandimportpreviewimport_custom_defaults 的情况。

import_buffershare_name 互斥。

include_in_export

字符串

在 dellemc.openmanage 7.3.0 中添加

此选项适用于commandexport 的情况。

如果为 default,则导出默认的服务器配置配置文件。

如果为 readonly,则导出具有只读属性的 SCP。

如果为 passwordhashvalues,则导出具有密码哈希值的 SCP。

如果为 customtelemetry,则导出具有自定义遥测属性的 SCP,仅在 iDRAC9 中受支持。

选项

  • "default" ← (默认)

  • "readonly"

  • "passwordhashvalues"

  • "customtelemetry"

job_wait

布尔值 / 必需

是否等待作业完成。

选项

  • false

  • true

proxy_password

字符串

在 dellemc.openmanage 7.3.0 中添加

用于身份验证的代理密码。

仅当share_name类型为HTTP或HTTPS时才考虑proxy_password,并且仅在iDRAC9上支持。

proxy_port

字符串

在 dellemc.openmanage 7.3.0 中添加

用于身份验证的代理端口。

share_name类型为HTTPS或HTTP且proxy_supporttrue时,需要proxy_port

仅当share_name类型为HTTP或HTTPS时才考虑proxy_port,并且仅在iDRAC9上支持。

默认值: "80"

proxy_server

字符串

在 dellemc.openmanage 7.3.0 中添加

share_name类型为HTTPS或HTTP且proxy_supporttrue时,需要proxy_server

仅当share_name类型为HTTP或HTTPS时才考虑proxy_server,并且仅在iDRAC9上支持。

proxy_support

布尔值

在 dellemc.openmanage 7.3.0 中添加

启用或禁用代理。

仅当share_name类型为HTTP或HTTPS时才考虑proxy_support,并且仅在iDRAC9上支持。

选项

  • false ← (默认)

  • true

proxy_type

字符串

在 dellemc.openmanage 7.3.0 中添加

选择HTTP类型代理使用http

选择SOCKS4类型代理使用socks4

仅当share_name类型为HTTP或HTTPS时才考虑proxy_type,并且仅在iDRAC9上支持。

选项

  • "http" ← (默认)

  • "socks4"

proxy_username

字符串

在 dellemc.openmanage 7.3.0 中添加

用于身份验证的代理用户名。

仅当share_name类型为HTTP或HTTPS时才考虑proxy_username,并且仅在iDRAC9上支持。

scp_components

别名:target

列表 / 元素=字符串

如果为ALL,则此选项从SCP文件导出或导入所有组件配置。

如果为IDRAC,则此选项从SCP文件导出或导入iDRAC配置。

如果为BIOS,则此选项从SCP文件导出或导入BIOS配置。

如果为NIC,则此选项从SCP文件导出或导入网卡配置。

如果为RAID,则此选项从SCP文件导出或导入RAID配置。

如果为FC,则此选项从SCP文件导出或导入光纤通道配置。

如果为InfiniBand,则此选项从SCP文件导出或导入InfiniBand配置。

如果为SupportAssist,则此选项从SCP文件导出或导入SupportAssist配置。

如果为EventFilters,则此选项从SCP文件导出或导入事件过滤器配置。

如果为System,则此选项从SCP文件导出或导入系统配置。

如果为LifecycleController,则此选项从SCP文件导出或导入SupportAssist配置。

如果为AHCI,则此选项从SCP文件导出或导入事件过滤器配置。

如果为PCIeSSD,则此选项从SCP文件导出或导入PCIeSSD配置。

commandexportimport时,仅在固件版本为6.10.00.00及以上的iDRAC9上支持具有多个组件的target

选项

  • "ALL" ← (默认)

  • "IDRAC"

  • "BIOS"

  • "NIC"

  • "RAID"

  • "FC"

  • "InfiniBand"

  • "SupportAssist"

  • "EventFilters"

  • "System"

  • "LifecycleController"

  • "AHCI"

  • "PCIeSSD"

默认值: ["ALL"]

scp_file

字符串

服务器配置配置文件(SCP)的名称。

commandimportimport_custom_defaultsexport_custom_defaults时,只支持XML文件格式。

如果未为此选项指定exportexport_custom_defaults,则使用默认格式<idrac_ip>_YYmmdd_HHMMSS_scp。

如果未为export提供有效的扩展名文件,则使用export_format

share_name

字符串

网络共享或本地路径。

支持CIFS、NFS、HTTP和HTTPS网络共享类型。

share_nameimport_buffer互斥。

commandimport_custom_defaultsexport_custom_defaults时,只支持“local”。

share_password

别名:share_pwd

字符串

网络共享用户密码。此选项对于CIFS网络共享是必需的。

share_user

字符串

网络共享用户,格式为‘user@domain’或‘domain\\user’(如果用户属于域),否则为‘user’。此选项对于CIFS网络共享是必需的。

shutdown_type

字符串

此选项适用于 import 命令。

如果为Graceful,则作业将正常关闭操作系统并关闭服务器。

如果为Forced,则强制关闭服务器。

如果为NoReboot,则应用SCP的作业将暂停,直到手动重新启动服务器。

选项

  • "Graceful" ← (默认)

  • "Forced"

  • "NoReboot"

timeout

整数

在 dellemc.openmanage 5.0.0 中添加

以秒为单位的套接字级别超时。

默认值: 30

validate_certs

布尔值

在 dellemc.openmanage 5.0.0 中添加

如果为false,则不会验证SSL证书。

仅在使用自签名证书的个人控制站点上配置false

在集合版本5.0.0之前,validate_certs默认值为false

选项

  • false

  • true ← (默认)

x_auth_token

字符串

在dellemc.openmanage 9.3.0中添加

身份验证令牌。

如果没有提供x_auth_token,则使用环境变量IDRAC_X_AUTH_TOKEN

示例:export IDRAC_X_AUTH_TOKEN=x_auth_token

备注

注意

  • 此模块需要idrac_user具有“管理员”权限。

  • 从可以直接访问Dell iDRAC的系统运行此模块。

  • 此模块支持check_mode

  • 要在基于iDRAC8的服务器上导入服务器配置配置文件(SCP),服务器必须具有iDRAC企业版许可证或更高版本。

  • 对于import操作,仅当targetALL时才支持check_mode

  • 此模块支持IPv4和IPv6地址。

示例

---
- name: Export SCP with IDRAC components in JSON format to a local path
  dellemc.openmanage.idrac_server_config_profile:
    idrac_ip: "192.168.0.1"
    idrac_user: "user_name"
    idrac_password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    share_name: "/scp_folder"
    scp_components:
      - IDRAC
    scp_file: example_file
    export_format: JSON
    export_use: Clone
    job_wait: true

- name: Import SCP with IDRAC components in JSON format from a local path
  dellemc.openmanage.idrac_server_config_profile:
    idrac_ip: "192.168.0.1"
    idrac_user: "user_name"
    idrac_password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    share_name: "/scp_folder"
    command: import
    scp_components:
      - IDRAC
    scp_file: example_file.json
    shutdown_type: Graceful
    end_host_power_state: "On"
    job_wait: false

- name: Export SCP with BIOS components in XML format to a NFS share path with auto-generated file name
  dellemc.openmanage.idrac_server_config_profile:
    idrac_ip: "192.168.0.1"
    idrac_user: "user_name"
    idrac_password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    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"
    ca_path: "/path/to/ca_cert.pem"
    share_name: "192.168.0.2:/share"
    command: import
    scp_components:
      - BIOS
    scp_file: 192.168.0.1_20210618_162856.xml
    shutdown_type: NoReboot
    end_host_power_state: "Off"
    job_wait: false

- name: Export SCP with RAID components in XML format to a CIFS share path with share user domain name
  dellemc.openmanage.idrac_server_config_profile:
    idrac_ip: "192.168.0.1"
    idrac_user: "user_name"
    idrac_password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    share_name: "\\\\192.168.0.2\\share"
    share_user: share_username@domain
    share_password: share_password
    scp_file: example_file.xml
    scp_components:
      - RAID
    export_format: XML
    export_use: Default
    job_wait: true

- name: Import SCP with RAID components in XML format from a CIFS share path
  dellemc.openmanage.idrac_server_config_profile:
    idrac_ip: "192.168.0.1"
    idrac_user: "user_name"
    idrac_password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    share_name: "\\\\192.168.0.2\\share"
    share_user: share_username
    share_password: share_password
    command: import
    scp_components:
      - RAID
    scp_file: example_file.xml
    shutdown_type: Forced
    end_host_power_state: "On"
    job_wait: true

- name: Export SCP with ALL components in JSON format to a HTTP share path
  dellemc.openmanage.idrac_server_config_profile:
    idrac_ip: "192.168.0.1"
    idrac_user: "user_name"
    idrac_password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    share_name: "http://192.168.0.3/share"
    share_user: share_username
    share_password: share_password
    scp_file: example_file.json
    scp_components:
      - ALL
    export_format: JSON
    job_wait: false

- name: Import SCP with ALL components in JSON format from a HTTP share path
  dellemc.openmanage.idrac_server_config_profile:
    idrac_ip: "192.168.0.1"
    idrac_user: "user_name"
    idrac_password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    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"
    ca_path: "/path/to/ca_cert.pem"
    share_name: "https://192.168.0.4/share"
    share_user: share_username
    share_password: share_password
    scp_components:
      - ALL
    export_format: XML
    export_use: Replace
    job_wait: true

- name: Import SCP with ALL components in XML format from a HTTPS share path
  dellemc.openmanage.idrac_server_config_profile:
    idrac_ip: "192.168.0.1"
    idrac_user: "user_name"
    idrac_password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    command: import
    share_name: "https://192.168.0.4/share"
    share_user: share_username
    share_password: share_password
    scp_file: 192.168.0.1_20160618_164647.xml
    shutdown_type: Graceful
    end_host_power_state: "On"
    job_wait: false

- name: Preview SCP with IDRAC components in XML format from a CIFS share path
  dellemc.openmanage.idrac_server_config_profile:
    idrac_ip: "{{ idrac_ip }}"
    idrac_user: "{{ idrac_user }}"
    idrac_password: "{{ idrac_password }}"
    ca_path: "/path/to/ca_cert.pem"
    share_name: "\\\\192.168.0.2\\share"
    share_user: share_username
    share_password: share_password
    command: preview
    scp_components:
      - ALL
    scp_file: example_file.xml
    job_wait: true

- name: Preview SCP with IDRAC components in JSON format from a NFS share path
  dellemc.openmanage.idrac_server_config_profile:
    idrac_ip: "{{ idrac_ip }}"
    idrac_user: "{{ idrac_user }}"
    idrac_password: "{{ idrac_password }}"
    ca_path: "/path/to/ca_cert.pem"
    share_name: "192.168.0.2:/share"
    command: preview
    scp_components:
      - IDRAC
    scp_file: example_file.xml
    job_wait: true

- name: Preview SCP with IDRAC components in XML format from a HTTP share path
  dellemc.openmanage.idrac_server_config_profile:
    idrac_ip: "{{ idrac_ip }}"
    idrac_user: "{{ idrac_user }}"
    idrac_password: "{{ idrac_password }}"
    ca_path: "/path/to/ca_cert.pem"
    share_name: "http://192.168.0.1/http-share"
    share_user: share_username
    share_password: share_password
    command: preview
    scp_components:
      - ALL
    scp_file: example_file.xml
    job_wait: true

- name: Preview SCP with IDRAC components in XML format from a local path
  dellemc.openmanage.idrac_server_config_profile:
    idrac_ip: "{{ idrac_ip }}"
    idrac_user: "{{ idrac_user }}"
    idrac_password: "{{ idrac_password }}"
    ca_path: "/path/to/ca_cert.pem"
    share_name: "/scp_folder"
    command: preview
    scp_components:
      - IDRAC
    scp_file: example_file.json
    job_wait: false

- name: Import SCP with IDRAC components in XML format from the XML content.
  dellemc.openmanage.idrac_server_config_profile:
    idrac_ip: "{{ idrac_ip }}"
    idrac_user: "{{ idrac_user }}"
    idrac_password: "{{ idrac_password }}"
    ca_path: "/path/to/ca_cert.pem"
    command: import
    scp_components:
      - IDRAC
    job_wait: true
    import_buffer: "<SystemConfiguration><Component FQDD='iDRAC.Embedded.1'><Attribute Name='IPMILan.1#Enable'>
      Disabled</Attribute></Component></SystemConfiguration>"

- name: Export SCP with ALL components in XML format using HTTP proxy.
  dellemc.openmanage.idrac_server_config_profile:
    idrac_ip: "{{ idrac_ip }}"
    idrac_user: "{{ idrac_user }}"
    idrac_password: "{{ idrac_password }}"
    ca_path: "/path/to/ca_cert.pem"
    scp_components:
      - ALL
    share_name: "http://192.168.0.1/http-share"
    proxy_support: true
    proxy_server: 192.168.0.5
    proxy_port: 8080
    proxy_username: proxy_username
    proxy_password: proxy_password
    proxy_type: http
    include_in_export: passwordhashvalues
    job_wait: true

- name: Import SCP with IDRAC and BIOS components in XML format using SOCKS4 proxy
  dellemc.openmanage.idrac_server_config_profile:
    idrac_ip: "{{ idrac_ip }}"
    idrac_user: "{{ idrac_user }}"
    idrac_password: "{{ idrac_password }}"
    ca_path: "/path/to/ca_cert.pem"
    command: import
    scp_components:
      - IDRAC
      - BIOS
    share_name: "https://192.168.0.1/http-share"
    proxy_support: true
    proxy_server: 192.168.0.6
    proxy_port: 8080
    proxy_type: socks4
    scp_file: filename.xml
    job_wait: true

- name: Import SCP with IDRAC components in JSON format from the JSON content.
  dellemc.openmanage.idrac_server_config_profile:
    idrac_ip: "{{ idrac_ip }}"
    idrac_user: "{{ idrac_user }}"
    idrac_password: "{{ idrac_password }}"
    ca_path: "/path/to/ca_cert.pem"
    command: import
    scp_components:
      - IDRAC
    job_wait: true
    import_buffer: "{\"SystemConfiguration\": {\"Components\": [{\"FQDD\": \"iDRAC.Embedded.1\",\"Attributes\":
      [{\"Name\": \"SNMP.1#AgentCommunity\",\"Value\": \"public1\"}]}]}}"

- name: Export custom default
  dellemc.openmanage.idrac_server_config_profile:
    idrac_ip: "192.168.0.1"
    idrac_user: "user_name"
    idrac_password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    job_wait: true
    share_name: "/scp_folder"
    command: export_custom_defaults
    scp_file: example_file

- name: Import custom default
  dellemc.openmanage.idrac_server_config_profile:
    idrac_ip: "192.168.0.1"
    idrac_user: "user_name"
    idrac_password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    job_wait: true
    share_name: "/scp_folder"
    command: import_custom_defaults
    scp_file: example_file.xml

- name: Import custom default using buffer
  dellemc.openmanage.idrac_server_config_profile:
    idrac_ip: "192.168.0.1"
    idrac_user: "user_name"
    idrac_password: "user_password"
    ca_path: "/path/to/ca_cert.pem"
    job_wait: true
    command: import_custom_defaults
    import_buffer: "<SystemConfiguration><Component FQDD='iDRAC.Embedded.1'><Attribute Name='IPMILan.1#Enable'>Disabled</Attribute>
                  </Component></SystemConfiguration>"

返回值

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

描述

error_info

字典

HTTP错误的详细信息。

返回:HTTP错误时

示例: {"error": {"@Message.ExtendedInfo": [{"Message": "Unable to process the request because an error occurred.", "MessageArgs": [], "MessageId": "GEN1234", "RelatedProperties": [], "Resolution": "Retry the operation. If the issue persists, contact your system administrator.", "Severity": "Critical"}], "code": "Base.1.0.GeneralError", "message": "A general error has occurred. See ExtendedInfo for more information."}}

msg

字符串

导入或导出SCP作业的状态。

返回:始终

示例: "Successfully imported the Server Configuration Profile"

scp_status

字典

来自iDRAC的SCP操作作业和进度详细信息。

返回:成功

示例: {"Id": "JID_XXXXXXXXX", "JobState": "Completed", "JobType": "ImportConfiguration", "Message": "Successfully imported and applied Server Configuration Profile.", "MessageArgs": [], "MessageId": "XXX123", "Name": "Import Configuration", "PercentComplete": 100, "StartTime": "TIME_NOW", "Status": "Success", "TargetSettingsURI": null, "retval": true}

作者

  • Jagadeesh N V(@jagadeeshnv)

  • Felix Stephen (@felixs88)

  • Jennifer John (@Jennifer-John)

  • Shivam Sharma (@ShivamSh3)

  • Lovepreet Singh (@singh-lovepreet1)