Spec-Zone.ru › Ansible

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

Примечание

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

Возможно, эта коллекция уже установлена, если вы используете пакет 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.

Refer OpenManage Enterprise API Reference Guide for more details.

ca_path

path

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

Файл Privacy Enhanced Mail (PEM), содержащий сертификат центра сертификации, который будет использоваться для проверки.

command

алиасы: state

string

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

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

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

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

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

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

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

Варианты:

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

device_group_names

list / elements=string

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

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

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

device_id

list / elements=integer

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

Либо device_id, либо device_service_tag являются обязательными, или оба могут быть применимы.

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

device_service_tag

list / elements=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)

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

  • Система отслеживания ошибок
  • Главная страница
  • Репозиторий (источники)

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

Spec-Zone.ru

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