Модуль 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 спецификацией хранилища. Допустимые атрибуты: - В настоящее время это поле обязательно. Если также указана storage_policy и она несовместима с datastore, диск будет помечен как не соответствующий указанной политике хранения. При передаче клиентами значения этой структуры в качестве параметра в поле должен быть указан идентификатор ресурса, возвращенного модулем vmware.vmware_rest.vcenter_datastore_info. ([‘deploy’, ‘present’]) - Если параметр не задан, необходимо указать datastore, а диск развернутой виртуальной машины будет создан с политикой хранения по умолчанию, связанной с datastore. ([‘deploy’, ‘present’]) - Допустимые ключи: - type (string): тип политики для диска шаблона виртуальной машины. Допустимое значение этого поля: - - 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 | Спецификация настройки гостевой ОС, применяемая к развернутой виртуальной машине. Если параметр не задан, после развертывания гостевая операционная система не настраивается. Допустимые атрибуты: - Если параметр не задан, настройка гостевой ОС не выполняется. ([‘deploy’]) |
hardware_customization dictionary | Спецификация настройки оборудования, определяющая изменения развернутой виртуальной машины. Если параметр не задан, конфигурация оборудования развернутой виртуальной машины будет такой же, как у исходного шаблона виртуальной машины, содержащегося в элементе библиотеки. Допустимые атрибуты: - Если параметр не задан, все адаптеры Ethernet останутся подключенными к той же сети, что и в исходном шаблоне виртуальной машины. Адаптер Ethernet с MacAddressType MANUAL не изменится. Адаптер Ethernet с MacAddressType GENERATED или ASSIGNED получит новый адрес. При передаче клиентами значения этой структуры в качестве параметра ключ в карте полей должен быть идентификатором ресурса, возвращенного модулем vmware.vmware_rest.vcenter_vm_hardware_ethernet. ([‘deploy’]) - Если параметр не задан, будут скопированы все диски. При передаче клиентами значения этой структуры в качестве параметра поле должно содержать идентификаторы ресурсов, возвращенных модулем vmware.vmware_rest.vcenter_vm_hardware_disk. ([‘deploy’]) - Если параметр не задан, диски развернутой виртуальной машины будут иметь те же настройки, что и соответствующие диски исходного шаблона виртуальной машины, содержащегося в элементе библиотеки. При передаче клиентами значения этой структуры в качестве параметра ключ в карте полей должен быть идентификатором ресурса, возвращенного модулем vmware.vmware_rest.vcenter_vm_hardware_disk. ([‘deploy’]) - Если {@term.unset}, настройки ЦП развернутой виртуальной машины будут такими же, как у исходного шаблона виртуальной машины, содержащегося в элементе библиотеки. ([‘deploy’]) - Допустимые ключи: - num_cpus (integer): количество виртуальных процессоров в развернутой виртуальной машине. Если {@term.unset}, количество ЦП развернутой виртуальной машины будет таким же, как у исходного шаблона виртуальной машины, содержащегося в элементе библиотеки. - num_cores_per_socket (integer): количество ядер, между которыми распределяются ЦП развернутой виртуальной машины. Если {@term.unset}, количество ядер на сокет развернутой виртуальной машины будет таким же, как у исходного шаблона виртуальной машины, содержащегося в элементе библиотеки. - Если {@term.unset}, настройки памяти развернутой виртуальной машины будут такими же, как у исходного шаблона виртуальной машины, содержащегося в элементе библиотеки. ([‘deploy’]) - Допустимые ключи: - memory (integer): объем памяти виртуальной машины в МБ. Если {@term.unset}, объем памяти развернутой виртуальной машины будет таким же, как у исходного шаблона виртуальной машины. |
library string | Идентификатор библиотеки, в которой следует создать новый элемент. При передаче клиентами значения этой структуры в качестве параметра в поле должен быть указан идентификатор ресурса, возвращенного модулем vmware.vmware_rest.content_library_info. Обязательный параметр при state=[‘present’] |
name string / обязательный | Имя развернутой виртуальной машины. Этот параметр обязателен. |
placement dictionary | Сведения, используемые для размещения развернутой виртуальной машины. В настоящее время это поле обязательно. В будущем, если поле не будет задано, система будет использовать значения из исходного шаблона виртуальной машины, содержащегося в элементе библиотеки. Если поле задано, каждое его значение будет использоваться для размещения. Если значения полей указывают на несовместимые места размещения, операция завершится с ошибкой. Операция также завершится с ошибкой, если значения полей вместе со значениями размещения исходного шаблона виртуальной машины указывают на несовместимые места размещения. Допустимые атрибуты: - В настоящее время это поле обязательно. Если поле не задано, система попытается выбрать подходящую папку для виртуальной машины; если выбрать папку не удастся, операция развертывания виртуальной машины завершится с ошибкой. При передаче клиентами значения этой структуры в качестве параметра в поле должен быть указан идентификатор ресурса, возвращенного модулем vmware.vmware_rest.vcenter_folder_info. ([‘deploy’, ‘present’]) - Если поле не задано, система попытается выбрать подходящий пул ресурсов для виртуальной машины; если выбрать пул ресурсов не удастся, операция развертывания виртуальной машины завершится с ошибкой. При передаче клиентами значения этой структуры в качестве параметра в поле должен быть указан идентификатор ресурса, возвращенного модулем vmware.vmware_rest.vcenter_resourcepool_info. ([‘deploy’, ‘present’]) - Это поле можно не задавать, если указано resource_pool или cluster. Если поле не задано, система попытается выбрать подходящий хост для виртуальной машины; если выбрать хост не удастся, операция развертывания виртуальной машины завершится с ошибкой. При передаче клиентами значения этой структуры в качестве параметра в поле должен быть указан идентификатор ресурса, возвращенного модулем vmware.vmware_rest.vcenter_host_info. ([‘deploy’, ‘present’]) - Если указано resource_pool или host, рекомендуется не задавать это поле. При передаче клиентами значения этой структуры в качестве параметра в поле должен быть указан идентификатор ресурса, возвращенного модулем vmware.vmware_rest.vcenter_cluster_info. ([‘deploy’, ‘present’]) |
powered_on boolean | Определяет, следует ли включить развернутую виртуальную машину после развертывания. Если параметр не задан, после развертывания виртуальная машина не будет включена. Допустимые значения:
|
session_timeout float добавлено в vmware.vmware_rest 2.1.0 | Настройки времени ожидания для сеанса клиента. Максимальное количество секунд для всей операции, включая установление соединения, отправку запроса и получение ответа. Значение по умолчанию — 300 с. |
source_vm string | Идентификатор исходной виртуальной машины, на основе которой создается элемент библиотеки. При передаче клиентами значения этой структуры в качестве параметра в поле должен быть указан идентификатор ресурса, возвращенного модулем vmware.vmware_rest.vcenter_vm_info. Обязательный параметр при state=[‘present’] |
state string | Допустимые значения:
|
template_library_item string | Идентификатор элемента библиотеки содержимого, содержащего исходный шаблон виртуальной машины для развертывания. Параметр должен содержать идентификатор ресурса, возвращенного модулем vmware.vmware_rest.content_library_item_info. Обязательный параметр при state=[‘deploy’] |
vcenter_hostname string / обязательный | Имя хоста или IP-адрес vSphere vCenter Если значение не указано в задаче, вместо него будет использовано значение переменной среды |
vcenter_password string / обязательный | Пароль vSphere vCenter Если значение не указано в задаче, вместо него будет использовано значение переменной среды |
vcenter_rest_log_file string | Этот необязательный параметр позволяет указать расположение файла журнала. В этом файле будут записываться данные о взаимодействии по HTTP REST. Файл будет сохранен на узле, на котором выполняется модуль. Если значение не указано в задаче, вместо него будет использовано значение переменной среды |
vcenter_username string / обязательный | Имя пользователя vSphere vCenter Если значение не указано в задаче, вместо него будет использовано значение переменной среды |
vcenter_validate_certs boolean | Разрешает подключение при недействительных SSL-сертификатах. Установите значение Если значение не указано в задаче, вместо него будет использовано значение переменной среды Допустимые значения:
|
vm_home_storage dictionary | Расположение хранилища для файлов конфигурации и журнала шаблона виртуальной машины. Если параметр не задан, файлы конфигурации и журнала шаблона виртуальной машины размещаются в хранилище по умолчанию, связанном с указанной библиотекой Допустимые атрибуты: - В настоящее время это поле обязательно. Если также указана storage_policy и она несовместима с datastore, развернутая виртуальная машина будет помечена как не соответствующая указанной политике хранения. При передаче клиентами значения этой структуры в качестве параметра в поле должен быть указан идентификатор ресурса, возвращенного модулем vmware.vmware_rest.vcenter_datastore_info. ([‘deploy’, ‘present’]) - Если параметр не задан, необходимо указать datastore, а файлы конфигурации и журнала развернутой виртуальной машины будут созданы с политикой хранения по умолчанию, связанной с datastore. ([‘deploy’, ‘present’]) - Допустимые ключи: - type (string): тип политики для файлов конфигурации и журнала шаблона виртуальной машины. Допустимое значение этого поля: - - 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 ресурса Возвращается: при успешном выполнении Пример: |
value dictionary | Создание шаблона виртуальной машины в библиотеке Возвращается: при успешном выполнении Пример: |
Ссылки на коллекцию
© 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