Spec-Zone.ru › Ansible

Модуль vmware.vmware_rest.vcenter_vmtemplate_libraryitems — создает элемент библиотеки содержимого на основе виртуальной машины

Примечание

Этот модуль входит в коллекцию vmware.vmware_rest (версия 4.10.0).

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

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

Чтобы использовать модуль в плейбуке, укажите: vmware.vmware_rest.vcenter_vmtemplate_libraryitems.

Добавлено в vmware.vmware_rest 2.2.0

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

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

  • Создает элемент библиотеки содержимого на основе виртуальной машины. Эта операция создает элемент библиотеки содержимого, в котором хранится шаблон виртуальной машины, созданный на основе исходной виртуальной машины с использованием предоставленной спецификации создания. Шаблон виртуальной машины сохраняется в новом элементе библиотеки.

Требования

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

  • vSphere 7.0.3 или более поздней версии
  • python >= 3.6
  • aiohttp

Параметры

Параметр

Комментарии

description

string

Описание развернутой виртуальной машины.

Если параметр не задан, у развернутой виртуальной машины будет такое же описание, как у исходного элемента библиотеки.

disk_storage

dictionary

Спецификация хранилища для дисков развернутой виртуальной машины.

Если не заданы ни disk_storage_overrides, ни disk_storage, диски развернутой виртуальной машины создаются с той же спецификацией хранилища, что и соответствующие диски исходного шаблона виртуальной машины, содержащегося в элементе библиотеки.

Если disk_storage_overrides не задан, а disk_storage задан, все диски развернутой виртуальной машины создаются с указанной в disk_storage спецификацией хранилища.

Если disk_storage_overrides задан, а disk_storage не задан, диски с идентификаторами, отсутствующими в disk_storage_overrides, создаются с той же спецификацией хранилища, что и соответствующие диски исходного шаблона виртуальной машины, содержащегося в элементе библиотеки.

Если заданы и disk_storage_overrides, и disk_storage, диски с идентификаторами, отсутствующими в disk_storage_overrides, создаются с указанной в disk_storage спецификацией хранилища.

Допустимые атрибуты:

- datastore (str): идентификатор хранилища данных, связанного с диском развернутой виртуальной машины.

В настоящее время это поле обязательно.

Если также указана storage_policy и она несовместима с datastore, диск будет помечен как не соответствующий указанной политике хранения.

При передаче клиентами значения этой структуры в качестве параметра в поле должен быть указан идентификатор ресурса, возвращенного модулем vmware.vmware_rest.vcenter_datastore_info. ([‘deploy’, ‘present’])

- storage_policy (dict): политика хранения для диска развернутой виртуальной машины.

Если параметр не задан, необходимо указать datastore, а диск развернутой виртуальной машины будет создан с политикой хранения по умолчанию, связанной с datastore. ([‘deploy’, ‘present’])

- Допустимые ключи:

- type (string): тип политики для диска шаблона виртуальной машины.

Допустимое значение этого поля:

- USE_SPECIFIED_POLICY

- policy (string): идентификатор используемой политики хранения.

Это поле необязательное и имеет значение, только если значение type равно USE_SPECIFIED_POLICY.

При передаче клиентами значения этой структуры в качестве параметра в поле должен быть указан идентификатор ресурса, возвращенного модулем vmware.vmware_rest.vcenter_storage_policies_info.

disk_storage_overrides

dictionary

Спецификация хранилища для отдельных дисков развернутой виртуальной машины. Она задается как сопоставление идентификаторов дисков исходного шаблона виртуальной машины, содержащегося в элементе библиотеки, с соответствующими спецификациями хранилища.

Если не заданы ни disk_storage_overrides, ни disk_storage, диски развернутой виртуальной машины создаются с той же спецификацией хранилища, что и соответствующие диски исходного шаблона виртуальной машины, содержащегося в элементе библиотеки.

Если disk_storage_overrides не задан, а disk_storage задан, все диски развернутой виртуальной машины создаются с указанной в disk_storage спецификацией хранилища.

Если disk_storage_overrides задан, а disk_storage не задан, диски с идентификаторами, отсутствующими в disk_storage_overrides, создаются с той же спецификацией хранилища, что и соответствующие диски исходного шаблона виртуальной машины, содержащегося в элементе библиотеки.

Если заданы и disk_storage_overrides, и disk_storage, диски с идентификаторами, отсутствующими в disk_storage_overrides, создаются с указанной в disk_storage спецификацией хранилища.

При передаче клиентами значения этой структуры в качестве параметра ключ в карте полей должен быть идентификатором ресурса, возвращенного модулем vmware.vmware_rest.vcenter_vm_hardware_disk.

guest_customization

dictionary

Спецификация настройки гостевой ОС, применяемая к развернутой виртуальной машине.

Если параметр не задан, после развертывания гостевая операционная система не настраивается.

Допустимые атрибуты:

- name (str): имя спецификации настройки.

Если параметр не задан, настройка гостевой ОС не выполняется. ([‘deploy’])

hardware_customization

dictionary

Спецификация настройки оборудования, определяющая изменения развернутой виртуальной машины.

Если параметр не задан, конфигурация оборудования развернутой виртуальной машины будет такой же, как у исходного шаблона виртуальной машины, содержащегося в элементе библиотеки.

Допустимые атрибуты:

- nics (dict): карта сетевых адаптеров Ethernet для обновления.

Если параметр не задан, все адаптеры Ethernet останутся подключенными к той же сети, что и в исходном шаблоне виртуальной машины. Адаптер Ethernet с MacAddressType MANUAL не изменится. Адаптер Ethernet с MacAddressType GENERATED или ASSIGNED получит новый адрес.

При передаче клиентами значения этой структуры в качестве параметра ключ в карте полей должен быть идентификатором ресурса, возвращенного модулем vmware.vmware_rest.vcenter_vm_hardware_ethernet. ([‘deploy’])

- disks_to_remove (list): идентификаторы дисков, которые необходимо удалить из развернутой виртуальной машины.

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

При передаче клиентами значения этой структуры в качестве параметра поле должно содержать идентификаторы ресурсов, возвращенных модулем vmware.vmware_rest.vcenter_vm_hardware_disk. ([‘deploy’])

- disks_to_update (dict): спецификация обновления отдельных дисков развернутой виртуальной машины.

Если параметр не задан, диски развернутой виртуальной машины будут иметь те же настройки, что и соответствующие диски исходного шаблона виртуальной машины, содержащегося в элементе библиотеки.

При передаче клиентами значения этой структуры в качестве параметра ключ в карте полей должен быть идентификатором ресурса, возвращенного модулем vmware.vmware_rest.vcenter_vm_hardware_disk. ([‘deploy’])

- cpu_update (dict): спецификация обновления ЦП развернутой виртуальной машины.

Если {@term.unset}, настройки ЦП развернутой виртуальной машины будут такими же, как у исходного шаблона виртуальной машины, содержащегося в элементе библиотеки. ([‘deploy’])

- Допустимые ключи:

- num_cpus (integer): количество виртуальных процессоров в развернутой виртуальной машине.

Если {@term.unset}, количество ЦП развернутой виртуальной машины будет таким же, как у исходного шаблона виртуальной машины, содержащегося в элементе библиотеки.

- num_cores_per_socket (integer): количество ядер, между которыми распределяются ЦП развернутой виртуальной машины.

Если {@term.unset}, количество ядер на сокет развернутой виртуальной машины будет таким же, как у исходного шаблона виртуальной машины, содержащегося в элементе библиотеки.

- memory_update (dict): спецификация обновления памяти развернутой виртуальной машины.

Если {@term.unset}, настройки памяти развернутой виртуальной машины будут такими же, как у исходного шаблона виртуальной машины, содержащегося в элементе библиотеки. ([‘deploy’])

- Допустимые ключи:

- memory (integer): объем памяти виртуальной машины в МБ.

Если {@term.unset}, объем памяти развернутой виртуальной машины будет таким же, как у исходного шаблона виртуальной машины.

library

string

Идентификатор библиотеки, в которой следует создать новый элемент.

При передаче клиентами значения этой структуры в качестве параметра в поле должен быть указан идентификатор ресурса, возвращенного модулем vmware.vmware_rest.content_library_info. Обязательный параметр при state=[‘present’]

name

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

Имя развернутой виртуальной машины. Этот параметр обязателен.

placement

dictionary

Сведения, используемые для размещения развернутой виртуальной машины.

В настоящее время это поле обязательно. В будущем, если поле не будет задано, система будет использовать значения из исходного шаблона виртуальной машины, содержащегося в элементе библиотеки.

Если поле задано, каждое его значение будет использоваться для размещения. Если значения полей указывают на несовместимые места размещения, операция завершится с ошибкой. Операция также завершится с ошибкой, если значения полей вместе со значениями размещения исходного шаблона виртуальной машины указывают на несовместимые места размещения.

Допустимые атрибуты:

- folder (str): папка виртуальных машин, в которую следует поместить развернутую виртуальную машину.

В настоящее время это поле обязательно.

Если поле не задано, система попытается выбрать подходящую папку для виртуальной машины; если выбрать папку не удастся, операция развертывания виртуальной машины завершится с ошибкой.

При передаче клиентами значения этой структуры в качестве параметра в поле должен быть указан идентификатор ресурса, возвращенного модулем vmware.vmware_rest.vcenter_folder_info. ([‘deploy’, ‘present’])

- resource_pool (str): пул ресурсов, в который следует поместить развернутую виртуальную машину.

Если поле не задано, система попытается выбрать подходящий пул ресурсов для виртуальной машины; если выбрать пул ресурсов не удастся, операция развертывания виртуальной машины завершится с ошибкой.

При передаче клиентами значения этой структуры в качестве параметра в поле должен быть указан идентификатор ресурса, возвращенного модулем vmware.vmware_rest.vcenter_resourcepool_info. ([‘deploy’, ‘present’])

- host (str): хост, на который следует поместить виртуальную машину. Если заданы и host, и resource_pool, пул ресурсов resource_pool должен принадлежать хосту host. Если заданы и host, и cluster, хост host должен входить в кластер cluster.

Это поле можно не задавать, если указано resource_pool или cluster. Если поле не задано, система попытается выбрать подходящий хост для виртуальной машины; если выбрать хост не удастся, операция развертывания виртуальной машины завершится с ошибкой.

При передаче клиентами значения этой структуры в качестве параметра в поле должен быть указан идентификатор ресурса, возвращенного модулем vmware.vmware_rest.vcenter_host_info. ([‘deploy’, ‘present’])

- cluster (str): кластер, в который следует поместить развернутую виртуальную машину. Если заданы и cluster, и resource_pool, пул ресурсов resource_pool должен принадлежать кластеру cluster. Если заданы и cluster, и host, хост host должен входить в кластер cluster.

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

При передаче клиентами значения этой структуры в качестве параметра в поле должен быть указан идентификатор ресурса, возвращенного модулем vmware.vmware_rest.vcenter_cluster_info. ([‘deploy’, ‘present’])

powered_on

boolean

Определяет, следует ли включить развернутую виртуальную машину после развертывания.

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

Допустимые значения:

  • false
  • true

session_timeout

float

добавлено в vmware.vmware_rest 2.1.0

Настройки времени ожидания для сеанса клиента.

Максимальное количество секунд для всей операции, включая установление соединения, отправку запроса и получение ответа.

Значение по умолчанию — 300 с.

source_vm

string

Идентификатор исходной виртуальной машины, на основе которой создается элемент библиотеки.

При передаче клиентами значения этой структуры в качестве параметра в поле должен быть указан идентификатор ресурса, возвращенного модулем vmware.vmware_rest.vcenter_vm_info. Обязательный параметр при state=[‘present’]

state

string

Допустимые значения:

  • "deploy"
  • "present" ← (по умолчанию)

template_library_item

string

Идентификатор элемента библиотеки содержимого, содержащего исходный шаблон виртуальной машины для развертывания.

Параметр должен содержать идентификатор ресурса, возвращенного модулем vmware.vmware_rest.content_library_item_info. Обязательный параметр при state=[‘deploy’]

vcenter_hostname

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

Имя хоста или IP-адрес vSphere vCenter

Если значение не указано в задаче, вместо него будет использовано значение переменной среды VMWARE_HOST.

vcenter_password

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

Пароль vSphere vCenter

Если значение не указано в задаче, вместо него будет использовано значение переменной среды VMWARE_PASSWORD.

vcenter_rest_log_file

string

Этот необязательный параметр позволяет указать расположение файла журнала.

В этом файле будут записываться данные о взаимодействии по HTTP REST.

Файл будет сохранен на узле, на котором выполняется модуль.

Если значение не указано в задаче, вместо него будет использовано

значение переменной среды VMWARE_REST_LOG_FILE.

vcenter_username

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

Имя пользователя vSphere vCenter

Если значение не указано в задаче, вместо него будет использовано значение переменной среды VMWARE_USER.

vcenter_validate_certs

boolean

Разрешает подключение при недействительных SSL-сертификатах. Установите значение false, если сертификаты не являются доверенными.

Если значение не указано в задаче, вместо него будет использовано значение переменной среды VMWARE_VALIDATE_CERTS.

Допустимые значения:

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

vm_home_storage

dictionary

Расположение хранилища для файлов конфигурации и журнала шаблона виртуальной машины.

Если параметр не задан, файлы конфигурации и журнала шаблона виртуальной машины размещаются в хранилище по умолчанию, связанном с указанной библиотекой

Допустимые атрибуты:

- datastore (str): идентификатор хранилища данных для файлов конфигурации и журнала развернутой виртуальной машины.

В настоящее время это поле обязательно.

Если также указана storage_policy и она несовместима с datastore, развернутая виртуальная машина будет помечена как не соответствующая указанной политике хранения.

При передаче клиентами значения этой структуры в качестве параметра в поле должен быть указан идентификатор ресурса, возвращенного модулем vmware.vmware_rest.vcenter_datastore_info. ([‘deploy’, ‘present’])

- storage_policy (dict): политика хранения для файлов конфигурации и журнала развернутой виртуальной машины.

Если параметр не задан, необходимо указать datastore, а файлы конфигурации и журнала развернутой виртуальной машины будут созданы с политикой хранения по умолчанию, связанной с datastore. ([‘deploy’, ‘present’])

- Допустимые ключи:

- type (string): тип политики для файлов конфигурации и журнала шаблона виртуальной машины.

Допустимое значение этого поля:

- USE_SPECIFIED_POLICY

- policy (string): идентификатор используемой политики хранения.

Это поле необязательное и имеет значение, только если значение type равно USE_SPECIFIED_POLICY.

При передаче клиентами значения этой структуры в качестве параметра в поле должен быть указан идентификатор ресурса, возвращенного модулем vmware.vmware_rest.vcenter_storage_policies_info.

Примечания

Примечание

  • Проверено на vSphere 7.0.3

Примеры

- name: Create a VM
  vmware.vmware_rest.vcenter_vm:
    placement:
      cluster: "{{ lookup('vmware.vmware_rest.cluster_moid', '/my_dc/host/my_cluster') }}"
      datastore: "{{ lookup('vmware.vmware_rest.datastore_moid', '/my_dc/datastore/local') }}"
      folder: "{{ lookup('vmware.vmware_rest.folder_moid', '/my_dc/vm') }}"
      resource_pool: "{{ lookup('vmware.vmware_rest.resource_pool_moid', '/my_dc/host/my_cluster/Resources') }}"
    name: test_vm1
    guest_OS: RHEL_7_64
    hardware_version: VMX_11
    memory:
      hot_add_enabled: true
      size_MiB: 1024
  register: my_vm

- name: Create a content library based on a DataStore
  vmware.vmware_rest.content_locallibrary:
    name: my_library_on_datastore
    description: automated
    publish_info:
      published: true
      authentication_method: NONE
    storage_backings:
    - datastore_id: "{{ lookup('vmware.vmware_rest.datastore_moid', '/my_dc/datastore/local') }}"
      type: DATASTORE
    state: present
  register: nfs_lib

- name: Create a VM template on the library
  vmware.vmware_rest.vcenter_vmtemplate_libraryitems:
    name: golden-template
    library: '{{ nfs_lib.id }}'
    source_vm: '{{ my_vm.id }}'
    placement:
      cluster: "{{ lookup('vmware.vmware_rest.cluster_moid', '/my_dc/host/my_cluster') }}"
      folder: "{{ lookup('vmware.vmware_rest.folder_moid', '/my_dc/vm') }}"
      resource_pool: "{{ lookup('vmware.vmware_rest.resource_pool_moid', '/my_dc/host/my_cluster/Resources') }}"
  register: mylib_item

- name: Deploy a new VM based on the template
  vmware.vmware_rest.vcenter_vmtemplate_libraryitems:
    name: vm-from-template
    library: '{{ nfs_lib.id }}'
    template_library_item: '{{ mylib_item.id }}'
    placement:
      cluster: "{{ lookup('vmware.vmware_rest.cluster_moid', '/my_dc/host/my_cluster') }}"
      folder: "{{ lookup('vmware.vmware_rest.folder_moid', '/my_dc/vm') }}"
      resource_pool: "{{ lookup('vmware.vmware_rest.resource_pool_moid', '/my_dc/host/my_cluster/Resources') }}"
    state: deploy
  register: my_new_vm

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

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

Ключ

Описание

id

string

moid ресурса

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

Пример: "9c6df1f5-faba-490c-a8e6-edb72f787ab8"

value

dictionary

Создание шаблона виртуальной машины в библиотеке

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

Пример: {"cpu": {"cores_per_socket": 1, "count": 1}, "disks": {"16000": {"capacity": 32000000000, "disk_storage": {"datastore": "datastore-3036"}}}, "guest_OS": "RHEL_7_64", "memory": {"size_MiB": 1024}, "nics": {}, "vm_home_storage": {"datastore": "datastore-3036"}, "vm_template": "vm-77006"}

Авторы

  • Команда Ansible Cloud (@ansible-collections)

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

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

© 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/vmware/vmware_rest/vcenter_vmtemplate_libraryitems_module.html

Spec-Zone.ru

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