Spec-Zone.ru › Ansible

Модуль dellemc.openmanage.ome_template — создание, изменение, развертывание, удаление, экспорт, импорт и клонирование шаблона в OpenManage Enterprise

Примечание

Этот модуль входит в коллекцию dellemc.openmanage (версия 10.0.2).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install dellemc.openmanage. Для использования этого модуля необходимы дополнительные требования. Подробнее см. в разделе Требования.

Чтобы использовать модуль в плейбуке, укажите: dellemc.openmanage.ome_template.

Добавлено в dellemc.openmanage 2.0.0

  • Краткое описание
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Краткое описание

  • Этот модуль создает, изменяет, развертывает, удаляет, экспортирует, импортирует и клонирует шаблон в OpenManage Enterprise.

Требования

На хосте, выполняющем этот модуль, должны быть установлены следующие компоненты.

  • python >= 3.9.6

Параметры

Параметр

Комментарии

attributes

dictionary

Данные полезной нагрузки для операций с шаблонами. Все переменные этого параметра добавляются в качестве полезной нагрузки для операций create, modify, deploy, import и clone. Параметр принимает следующие атрибуты.

Attributes: список словарей атрибутов (если есть), которые нужно изменить в шаблоне развертывания. Применяется, если значение command равно deploy или modify. Используйте Id, если доступен идентификатор атрибута. В противном случае используйте разделенный запятыми список I (DisplayName). Подробнее об использовании DisplayName см. в приведенном примере.

Name: имя шаблона. Обязательный параметр, если значение command равно create, import или clone; необязательный, если значение command равно modify.

Description: описание шаблона. Применяется, если значение command равно create или modify.

Fqdds: позволяет создать шаблон с использованием компонентов указанного эталонного сервера. В виде строки со значениями, разделенными запятыми, необходимо указать одно или несколько из следующих значений: iDRAC, System, BIOS, NIC, LifeCycleController, RAID и EventFilters. Если значения не указаны, выбирается значение по умолчанию «All». Применяется, если значение I (command) равно create.

Options: параметры для управления выключением устройства или его конечным состоянием питания после развертывания шаблона. Применяется для операции deploy.

Schedule: параметры для планирования задачи развертывания на немедленное выполнение или на указанное время. Применяется, если значение command равно deploy.

NetworkBootIsoModel: полезная нагрузка для указания сведений о развертывании ISO. Применяется, если значение command равно deploy.

Content: XML-содержимое шаблона. Применяется, если значение command равно import.

Type: идентификатор типа шаблона, указывающий тип устройства, для которого поддерживается конфигурация, например шасси или сервер. Применяется, если значение command равно import.

TypeId: идентификатор типа шаблона, указывающий тип устройства, для которого поддерживается конфигурация, например шасси или сервер. Применяется, если значение command равно create.

Дополнительные сведения см. в справочном руководстве по API OpenManage Enterprise.

ca_path

path

добавлено в dellemc.openmanage 5.0.0

Файл Privacy Enhanced Mail (PEM), содержащий сертификат CA для проверки.

command

псевдонимы: state

string

create создает новый шаблон.

modify изменяет существующий шаблон.

deploy создает задачу развертывания шаблона.

delete удаляет существующий шаблон.

export экспортирует существующий шаблон.

import создает шаблон из указанного текста конфигурации в формате SCP XML.

clone создает клон существующего шаблона.

Варианты:

  • "create" ← (по умолчанию)
  • "modify"
  • "deploy"
  • "delete"
  • "export"
  • "import"
  • "clone"

device_group_names

list / элементы=string

Укажите список групп, если значение I (command) равно deploy.

Укажите как минимум один обязательный параметр: device_id, device_service_tag или device_group_names.

По умолчанию: []

device_id

list / элементы=integer

Укажите список идентификаторов целевых устройств, если значение command равно deploy. Если значение I (command) равно create, укажите идентификатор одного устройства.

Обязателен параметр device_id или device_service_tag; можно указать оба параметра.

По умолчанию: []

device_service_tag

list / элементы=string

Укажите список сервисных тегов целевых устройств, если значение I (command) равно deploy. Если значение command равно create, укажите сервисный тег одного устройства.

Обязателен параметр device_id или device_service_tag; можно указать оба параметра.

По умолчанию: []

hostname

string / обязательный

IP-адрес или имя хоста OpenManage Enterprise либо OpenManage Enterprise Modular.

job_wait

boolean

Позволяет дождаться завершения задачи.

Этот параметр применяется, если значение command равно create или deploy.

Варианты:

  • false
  • true ← (по умолчанию)

job_wait_timeout

integer

Максимальное время ожидания для job_wait в секундах. Отслеживание задачи выполняется только в течение этого времени.

Этот параметр применяется, если значение job_wait равно true.

По умолчанию: 1200

password

string

Пароль OpenManage Enterprise или OpenManage Enterprise Modular.

Если пароль не указан, используется переменная среды OME_PASSWORD.

Пример: export OME_PASSWORD=password

port

integer

HTTPS-порт OpenManage Enterprise или OpenManage Enterprise Modular.

По умолчанию: 443

template_id

integer

Идентификатор существующего шаблона.

Этот параметр применяется, если значение command равно modify, deploy, delete, clone или export.

Этот параметр нельзя использовать одновременно с template_name.

template_name

string

Имя существующего шаблона.

Этот параметр применяется, если значение command равно modify, deploy, delete, clone или export.

Этот параметр нельзя использовать одновременно с template_id.

template_view_type

string

Выберите тип представления шаблона OME.

Применяется, если значение command равно create, clone или import.

Варианты:

  • "Deployment" ← (по умолчанию)
  • "Compliance"
  • "Inventory"
  • "Sample"
  • "None"

timeout

integer

добавлено в dellemc.openmanage 5.0.0

Время ожидания на уровне сокета в секундах.

По умолчанию: 30

username

string

Имя пользователя OpenManage Enterprise или OpenManage Enterprise Modular.

Если имя пользователя не указано, используется переменная среды OME_USERNAME.

Пример: export OME_USERNAME=username

validate_certs

boolean

добавлено в dellemc.openmanage 5.0.0

Если значение равно false, SSL-сертификаты не проверяются.

Настраивайте false только на контролируемых вами сайтах, где используются самоподписанные сертификаты.

В версиях коллекции до 5.0.0 значение validate_certs по умолчанию — false.

Варианты:

  • false
  • true ← (по умолчанию)

x_auth_token

string

добавлено в dellemc.openmanage 9.3.0

Токен аутентификации.

Если x_auth_token не указан, используется переменная среды OME_X_AUTH_TOKEN.

Пример: export OME_X_AUTH_TOKEN=x_auth_token

Примечания

Примечание

  • Запускайте этот модуль в системе, имеющей прямой доступ к Dell OpenManage Enterprise.
  • Этот модуль поддерживает check_mode.

Примеры

---
- name: Create a template from a reference device
  dellemc.openmanage.ome_template:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    device_id: 25123
    attributes:
      Name: "New Template"
      Description: "New Template description"

- name: Modify template name, description, and attribute value
  dellemc.openmanage.ome_template:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    command: "modify"
    template_id: 12
    attributes:
      Name: "New Custom Template"
      Description: "Custom Template Description"
      # Attributes to be modified in the template.
      # For information on any attribute id, use API /TemplateService/Templates(Id)/Views(Id)/AttributeViewDetails
      # This section is optional
      Attributes:
        - Id: 1234
          Value: "Test Attribute"
          IsIgnored: false

- name: Modify template name, description, and attribute using detailed view
  dellemc.openmanage.ome_template:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    command: "modify"
    template_id: 12
    attributes:
      Name: "New Custom Template"
      Description: "Custom Template Description"
      Attributes:
        # Enter the comma separated string as appearing in the Detailed view on GUI
        # NIC -> NIC.Integrated.1-1-1 -> NIC Configuration -> Wake On LAN1
        - DisplayName: 'NIC, NIC.Integrated.1-1-1, NIC Configuration, Wake On LAN'
          Value: Enabled
          IsIgnored: false
        # System -> LCD Configuration -> LCD 1 User Defined String for LCD
        - DisplayName: 'System, LCD Configuration, LCD 1 User Defined String for LCD'
          Value: LCD str by OMAM
          IsIgnored: false

- name: Deploy template on multiple devices
  dellemc.openmanage.ome_template:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    command: "deploy"
    template_id: 12
    device_id:
      - 12765
      - 10173
    device_service_tag:
      - 'SVTG123'
      - 'SVTG456'

- name: Deploy template on groups
  dellemc.openmanage.ome_template:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    command: "deploy"
    template_id: 12
    device_group_names:
      - server_group_1
      - server_group_2

- name: Deploy template on multiple devices along with the attributes values to be modified on the target devices
  dellemc.openmanage.ome_template:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    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:
        # specific device where attribute to be modified at deployment run-time.
        # The DeviceId should be mentioned above in the 'device_id' section.
        # Service tags not allowed.
        - DeviceId: 12765
          Attributes:
            - Id: 15645
              Value: "0.0.0.0"
              IsIgnored: false
        - DeviceId: 10173
          Attributes:
            - Id: 18968,
              Value: "hostname-1"
              IsIgnored: false

- name: Deploy template and Operating System (OS) on multiple devices
  dellemc.openmanage.ome_template:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    command: "deploy"
    template_id: 12
    device_id:
      - 12765
    device_service_tag:
      - 'SVTG123'
    attributes:
      # Include this to install OS on the devices.
      # This section is optional
      NetworkBootIsoModel:
        BootToNetwork: true
        ShareType: "NFS"
        IsoTimeout: 1 # allowable values(1,2,4,8,16) in hours
        IsoPath: "/home/iso_path/filename.iso"
        ShareDetail:
          IpAddress: "192.168.0.2"
          ShareName: "sharename"
          User: "share_user"
          Password: "share_password"
      Options:
        EndHostPowerState: 1
        ShutdownType: 0
        TimeToWaitBeforeShutdown: 300
      Schedule:
        RunLater: true
        RunNow: false

- name: "Deploy template on multiple devices and changes the device-level attributes. After the template is deployed,
install OS using its image"
  dellemc.openmanage.ome_template:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    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.0"
              IsIgnored: false
        - DeviceId: 10173
          Attributes:
            - Id: 18968,
              Value: "hostname-1"
              IsIgnored: false
      NetworkBootIsoModel:
        BootToNetwork: true
        ShareType: "NFS"
        IsoTimeout: 1 # allowable values(1,2,4,8,16) in hours
        IsoPath: "/home/iso_path/filename.iso"
        ShareDetail:
          IpAddress: "192.168.0.2"
          ShareName: "sharename"
          User: "share_user"
          Password: "share_password"
      Options:
        EndHostPowerState: 1
        ShutdownType: 0
        TimeToWaitBeforeShutdown: 300
      Schedule:
        RunLater: true
        RunNow: false

- name: Delete template
  dellemc.openmanage.ome_template:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    command: "delete"
    template_id: 12

- name: Export a template
  dellemc.openmanage.ome_template:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    command: "export"
    template_id: 12

# Start of example to export template to a local xml file
- name: Export template to a local xml file
  dellemc.openmanage.ome_template:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    command: "export"
    template_name: "my_template"
  register: result
- name: Save template into a file
  ansible.builtin.copy:
    content: "{{ result.Content}}"
    dest: "/path/to/exported_template.xml"
# End of example to export template to a local xml file

- name: Clone a template
  dellemc.openmanage.ome_template:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    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.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    command: "import"
    attributes:
      Name: "Imported Template Name"
      # Template Type from TemplateService/TemplateTypes
      Type: 2
      # xml string content
      Content: "<SystemConfiguration Model=\"PowerEdge R940\" ServiceTag=\"SVCTAG1\"
      TimeStamp=\"Tue Sep 24 09:20:57.872551 2019\">\n<Component FQDD=\"AHCI.Slot.6-1\">\n<Attribute
      Name=\"RAIDresetConfig\">True</Attribute>\n<Attribute Name=\"RAIDforeignConfig\">Clear</Attribute>\n
      </Component>\n<Component FQDD=\"Disk.Direct.0-0:AHCI.Slot.6-1\">\n<Attribute Name=\"RAIDPDState\">Ready
      </Attribute>\n<Attribute Name=\"RAIDHotSpareStatus\">No</Attribute>\n</Component>\n
      <Component FQDD=\"Disk.Direct.1-1:AHCI.Slot.6-1\">\n<Attribute Name=\"RAIDPDState\">Ready</Attribute>\n
      <Attribute Name=\"RAIDHotSpareStatus\">No</Attribute>\n</Component>\n</SystemConfiguration>\n"

- name: Import template from local XML file
  dellemc.openmanage.ome_template:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    command: "import"
    attributes:
      Name: "Imported Template Name"
      Type: 2
      Content: "{{ lookup('ansible.builtin.file', '/path/to/xmlfile') }}"

- name: "Deploy template and Operating System (OS) on multiple devices."
  dellemc.openmanage.ome_template:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    command: "deploy"
    template_id: 12
    device_id:
      - 12765
    device_service_tag:
      - 'SVTG123'
    attributes:
      # Include this to install OS on the devices.
      # This section is optional
      NetworkBootIsoModel:
        BootToNetwork: true
        ShareType: "CIFS"
        IsoTimeout: 1 # allowable values(1,2,4,8,16) in hours
        IsoPath: "/home/iso_path/filename.iso"
        ShareDetail:
          IpAddress: "192.168.0.2"
          ShareName: "sharename"
          User: "share_user"
          Password: "share_password"
      Options:
        EndHostPowerState: 1
        ShutdownType: 0
        TimeToWaitBeforeShutdown: 300
      Schedule:
        RunLater: true
        RunNow: false

- name: Create a compliance template from reference device
  dellemc.openmanage.ome_template:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    command: "create"
    device_service_tag:
      - "SVTG123"
    template_view_type: "Compliance"
    attributes:
      Name: "Configuration Compliance"
      Description: "Configuration Compliance Template"
      Fqdds: "BIOS"

- name: Import a compliance template from XML file
  dellemc.openmanage.ome_template:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    command: "import"
    template_view_type: "Compliance"
    attributes:
      Name: "Configuration Compliance"
      Content: "{{ lookup('ansible.builtin.file', './test.xml') }}"
      Type: 2

- name: Create a template from a reference device with Job wait as false
  dellemc.openmanage.ome_template:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    device_id: 25123
    attributes:
      Name: "New Template"
      Description: "New Template description"
      Fqdds: iDRAC,BIOS,
    job_wait: false

Возвращаемые значения

Общие возвращаемые значения описаны здесь; ниже приведены поля, уникальные для этого модуля:

Ключ

Описание

Content

string

XML-содержимое экспортированного шаблона. Это содержимое можно записать в XML-файл.

Возвращается: при успешном выполнении, если значение command равно export

Пример: "<SystemConfiguration Model=\"PowerEdge R940\" ServiceTag=\"DEFG123\" TimeStamp=\"Tue Sep 24 09:20:57.872551 2019\">\n<Component FQDD=\"AHCI.Slot.6-1\">\n<Attribute Name=\"RAIDresetConfig\">True</Attribute>\n<Attribute Name=\"RAIDforeignConfig\">Clear</Attribute>\n</Component>\n<Component FQDD=\"Disk.Direct.0-0:AHCI.Slot.6-1\"> \n<Attribute Name=\"RAIDPDState\">Ready</Attribute>\n<Attribute Name=\"RAIDHotSpareStatus\">No</Attribute> \n</Component>\n<Component FQDD=\"Disk.Direct.1-1:AHCI.Slot.6-1\">\n<Attribute Name=\"RAIDPDState\">Ready </Attribute>\n<Attribute Name=\"RAIDHotSpareStatus\">No</Attribute>\n</Component>\n</SystemConfiguration>"

devices_assigned

dictionary

Сопоставление устройств с шаблонами, уже развернутыми на этих устройствах.

Возвращается: если значение command равно deploy

Пример: {"10312": 23, "10362": 28}

error_info

dictionary

Сведения об ошибке 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

string

Общий статус операции с шаблоном.

Возвращается: всегда

Пример: "Successfully created a template with ID 23"

return_id

integer

Идентификатор шаблона для create, modify, import и clone или созданной задачи в случае deploy.

Возвращается: при успешном выполнении, если значение command равно create, modify, import, clone или deploy

Пример: 12

TemplateId

integer

Идентификатор шаблона для export.

Возвращается: при успешном выполнении, если значение command равно export

Пример: 13

Авторы

  • Jagadeesh N V (@jagadeeshnv)
  • Husniya Hameed (@husniya_hameed)
  • Kritika Bhateja (@Kritika-Bhateja)
  • Meenakshi Dembi (@meenakshidembi691)

Ссылки на коллекцию

  • Отслеживание проблем
  • Домашняя страница
  • Репозиторий (исходный код)

© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/dellemc/openmanage/ome_template_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API