vmware.vmware_rest.vcenter_vm модуль — Создает виртуальную машину.
Примечание
Этот модуль является частью коллекции vmware.vmware_rest (версия 3.2.0).
Эта коллекция может быть уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install vmware.vmware_rest. Для использования этого модуля необходимы дополнительные требования. Подробности см. в разделе Требования.
Чтобы использовать его в книге задач, укажите: vmware.vmware_rest.vcenter_vm.
Новая функция в vmware.vmware_rest 0.1.0
Обзор
- Создает виртуальную машину.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- vSphere 7.0.3 или выше
- python >= 3.6
- aiohttp
Параметры
Параметр | Комментарии |
|---|---|
bios_uuid string | 128-битный SMBIOS UUID виртуальной машины, представленный как шестнадцатеричная строка в формате “12345678-abcd-1234-cdef-123456789abc”. Если не задано, будет сгенерировано. |
boot dictionary | Конфигурация загрузки. Если не задано, будут использоваться значения по умолчанию, зависящие от гостевой ОС. Допустимые атрибуты:
Если не задано, используется значение по умолчанию, рекомендуемое для гостевой ОС и поддерживаемое для текущей версии виртуального оборудования. ([‘present’])
Если не задано, значение по умолчанию равно 0. ([‘present’])
Если не задано, значение по умолчанию — false. ([‘present’])
Если не задано, значение по умолчанию равно 10000. ([‘present’])
Если не задано, значение не изменяется. ([‘present’]) |
boot_devices list / elements=dictionary | Конфигурация загрузочного устройства. Если не задано, будет использоваться последовательность загрузки, специфичная для сервера. Допустимые атрибуты:
Этот ключ обязателен с [‘present’].
|
cdroms list / elements=dictionary | Список CD-ROM. Если не задано, устройства CD-ROM создаваться не будут. Допустимые атрибуты:
Если не задано, сервер выберет доступный адрес; если доступных адресов нет, запрос завершится неудачей. ([‘present’])
Если не задано, сервер выберет адаптер с доступным подключением. Если доступных IDE-подключений нет, запрос будет отклонен.
Если не задано, сервер выберет доступный тип подключения. Если доступных IDE-подключений нет, запрос будет отклонен.
Если не задано, сервер выберет доступный адрес; если доступных адресов нет, запрос завершится неудачей. ([‘present’])
Если не задано, сервер выберет доступный номер устройства на указанном адаптере. Если на адаптере нет доступных подключений, запрос будет отклонен.
Если не задано, используется автоматическое определение подходящего устройства хоста. ([‘present’])
Допустимые значения для этого поля:
Это поле является необязательным и актуально только тогда, когда значение type равно ISO_FILE.
Если не задано, виртуальное устройство CD-ROM будет настроено на автоматическое определение подходящего устройства хоста.
Допустимые значения для этого поля:
По умолчанию false, если не задано. ([‘present’])
По умолчанию false, если не задано. ([‘present’]) |
cpu dictionary | Конфигурация CPU. Если не задано, будут использоваться значения по умолчанию, зависящие от гостевой ОС. Допустимые атрибуты:
Поддерживаемый диапазон количества CPU ограничен настроенной гостевой операционной системой и версией виртуального оборудования виртуальной машины. Если виртуальная машина работает, количество ядер CPU можно увеличить только если hot_add_enabled равно true, и уменьшить только если hot_remove_enabled равно true. Если не задано, значение не изменяется. ([‘present’])
Если не задано, значение не изменяется. ([‘present’])
Это поле можно изменить только если виртуальная машина выключена. Если не задано, значение не изменяется. ([‘present’])
Это поле можно изменить только если виртуальная машина выключена. Если не задано, значение не изменяется. ([‘present’]) |
datastore string | Идентификатор хранилища данных, на котором хранится состояние конфигурации виртуальной машины. Если не задано, path также должно быть не задано, а datastore_path должно быть задано. Когда клиенты передают значение этой структуры в качестве параметра, поле должно быть id ресурса, возвращаемого vmware.vmware_rest.vcenter_datastore_info. |
datastore_path string | Путь к хранилищу данных для файла конфигурации виртуальной машины в формате “[имя хранилища данных] путь”. Например “[storage1] Test-VM/Test-VM.vmx”. Если не задано, должны быть заданы как datastore, так и path. |
disconnect_all_nics boolean | Указывает, следует ли отключать все сетевые адаптеры (NIC) на виртуальной машине назначения от сети Если не задано, состояние подключения всех сетевых адаптеров (NIC) на виртуальной машине назначения будет таким же, как и на виртуальной машине-источнике. Варианты:
|
disks list / elements=dictionary | Индивидуальная карта перемещения дисков. Если не задано, все диски будут перенесены на хранилище данных, указанное в поле datastore. Когда клиенты передают значение этой структуры в качестве параметра, ключ в поле карты должен быть идентификатором ресурса, возвращенного модулем vmware.vmware_rest.vcenter_vm_hardware_disk. Допустимые атрибуты:
Если не задано, сервер выберет доступный адрес; если такового нет, запрос завершится ошибкой. ([‘present’])
Если не задано, сервер выберет адаптер с доступным подключением. Если доступных подключений IDE нет, запрос будет отклонен.
Если не задано, сервер выберет доступный тип подключения. Если доступных подключений IDE нет, запрос будет отклонен.
Если не задано, сервер выберет доступный адрес; если такового нет, запрос завершится ошибкой. ([‘present’])
Если не задано, сервер выберет доступный номер устройства на указанном адаптере. Если доступных подключений на адаптере нет, запрос будет отклонен.
Если не задано, сервер выберет доступный адрес; если такового нет, запрос завершится ошибкой. ([‘present’])
Если не задано, сервер выберет доступный номер устройства на указанном адаптере. Если доступных подключений на адаптере нет, запрос будет отклонен.
Если не задано, сервер выберет доступный адрес; если такового нет, запрос завершится ошибкой. ([‘present’])
Если не задано, сервер выберет доступный номер устройства на указанном адаптере. Если доступных подключений на адаптере нет, запрос будет отклонен.
Если не задано, виртуальный диск не будет подключен к существующему ресурсу. ([‘present’])
Допустимые значения для этого поля:
Это поле необязательно и актуально только когда значение type равно VMDK_FILE.
Если не задано, новый VMDK-резерв не будет создан. ([‘present’])
Если не задано, имя (выведенное из имени виртуальной машины) будет выбрано сервером.
Если не задано, используется значение, специфичное для гостевой ОС.
Если не задано, применяется политика хранения по умолчанию для целевого хранилища данных (если применимо). В настоящее время политика хранения по умолчанию поддерживается только для хранилищ данных на основе объектов: VVol и vSAN. Для хранилищ данных, не на основе объектов, если не задано, политика хранения не будет связана с файлом VMDK. |
disks_to_remove list / elements=string | Список дисков для удаления. Если не задано, все диски будут скопированы. Если один и тот же идентификатор присутствует в disks_to_update, будет возвращена ошибка InvalidArgument. Когда клиенты передают значение этой структуры в качестве параметра, поле должно содержать идентификатор ресурсов, возвращенных модулем vmware.vmware_rest.vcenter_vm_hardware_disk. |
disks_to_update dictionary | Карта дисков для обновления. Если не задано, все диски будут скопированы на хранилище данных, указанное в поле datastore. Если один и тот же идентификатор присутствует в disks_to_remove, будет выброшена ошибка InvalidArgument. Когда клиенты передают значение этой структуры в качестве параметра, ключ в поле карты должен быть идентификатором ресурса, возвращенного модулем vmware.vmware_rest.vcenter_vm_hardware_disk. |
floppies list / elements=dictionary | Список дисководов гибких дисков. Если не задано, дисководы гибких дисков не будут созданы. Допустимые атрибуты:
Если не задано, используется автоматическое определение подходящего устройства хоста. ([‘present’])
Допустимые значения для этого поля:
Это поле необязательно и актуально только когда значение type равно IMAGE_FILE.
Если не задано, виртуальный дисковод гибких дисков будет настроен на автоматическое обнаружение подходящего устройства хоста.
По умолчанию false, если не задано. ([‘present’])
По умолчанию false, если не задано. ([‘present’]) |
guest_customization_spec dictionary | Параметры настройки гостевой операционной системы, которые нужно применить к виртуальной машине после её развертывания. Если не задано, гостевая операционная система не настраивается после клонирования. Допустимые атрибуты:
Если не задано, никакая настройка гостевой ОС не выполняется. ([‘clone’]) |
guest_OS string | Тип гостевой операционной системы, определяющий допустимые типы гостевых операционных систем, используемых для настройки виртуальной машины. Требуется при state=[‘present’] Доступные значения:
|
hardware_version string | Тип виртуального оборудования, определяющий допустимые версии виртуального оборудования для виртуальной машины. См. https://kb.vmware.com/s/article/1003746 (Версии виртуального оборудования виртуальной машины (1003746)). Доступные значения:
|
memory dictionary | Настройка памяти. Если не задано, будут использоваться значения по умолчанию, специфичные для гостя. Допустимые атрибуты:
Допустимый диапазон размеров памяти ограничен конфигурированной гостевой операционной системой и версией виртуального оборудования виртуальной машины. Если виртуальная машина работает, это значение можно изменить только если hot_add_enabled имеет значение true, и новый размер памяти должен удовлетворять ограничениям, заданным hot_add_increment_size_mib и Если не задано, значение остается неизменным. ([‘present’])
Некоторые гостевые операционные системы могут потреблять больше ресурсов или работать менее эффективно на оборудовании, поддерживающем добавление памяти во время работы машины. Это поле можно изменить только если виртуальная машина не включена. Если не задано, значение остается неизменным. ([‘present’]) |
name string | Имя виртуальной машины. Если не задано, будет использовано имя из файла конфигурации виртуальной машины. |
nics list / elements=dictionary | Список адаптеров Ethernet. Если не задано, адаптеры Ethernet создаваться не будут. Допустимые атрибуты:
Если не задано, по умолчанию используется false. ([‘present’])
Обходной путь для PR1459647 ([‘present’])
Если не задано, сервер выберет доступный адрес при включении виртуальной машины. ([‘present’])
По умолчанию false, если не задано. ([‘present’])
Если не задано, система может попытаться найти подходящую поддержку. Если она не найдена, запрос завершится неудачей. ([‘present’])
Допустимое значение для этого поля:
Это поле является необязательным и актуально только тогда, когда значение type является одним из STANDARD_PORTGROUP, DISTRIBUTED_PORTGROUP или OPAQUE_NETWORK. Когда клиенты передают значение этой структуры в качестве параметра, поле должно быть идентификатором ресурса, возвращаемого vmware.vmware_rest.vcenter_network_info.
Может использоваться для указания порта, когда сеть, указанная в поле network, является статической или группой распределенных портов с ранним связыванием. Если не задано, порт будет автоматически назначен адаптеру Ethernet на основе политики, воплощенной типом группы портов.
По умолчанию false, если не задано. ([‘present’])
По умолчанию false, если не задано. ([‘present’]) |
nics_to_update dictionary | Карта NIC для обновления. Если не задано, NIC обновляться не будут. Когда клиенты передают значение этой структуры в качестве параметра, ключ в отображении поля должен быть идентификатором ресурса, возвращаемого vmware.vmware_rest.vcenter_vm_hardware_ethernet. |
nvme_adapters list / elements=dictionary | Список адаптеров NVMe. Если не задано, будут созданы любые адаптеры, необходимые для подключения устройств хранения виртуальной машины; это включает в себя любые устройства, которые явно указывают адаптер шины хоста NVMe, а также любые устройства, которые не указывают адаптер шины хоста, если предпочтительный тип адаптера гостевой системы — NVMe. Допустимые атрибуты:
Если не задано, сервер выберет доступный номер шины; если такового нет, запрос завершится неудачей. ([‘present’])
Если не задано, сервер выберет доступный адрес при включении виртуальной машины. ([‘present’]) |
parallel_ports list / elements=dictionary | Список параллельных портов. Если не задано, параллельные порты создаваться не будут. Допустимые атрибуты:
Если не задано, по умолчанию используется автоматическое обнаружение подходящего устройства хоста. ([‘present’])
Допустимое значение для этого поля:
Это поле является необязательным и актуально только тогда, когда значение type — FILE.
Если не задано, виртуальный параллельный порт будет настроен на автоматическое обнаружение подходящего устройства хоста.
По умолчанию false, если не задано. ([‘present’])
По умолчанию false, если не задано. ([‘present’]) |
parallel_ports_to_update dictionary | Карта параллельных портов для обновления. Если не задано, параллельные порты обновляться не будут. Когда клиенты передают значение этой структуры в качестве параметра, ключ в отображении поля должен быть идентификатором ресурса, возвращаемого vmware.vmware_rest.vcenter_vm_hardware_parallel. |
path string | Путь к конфигурационному файлу виртуальной машины на хранилище данных, соответствующем {@link #datastore). Если не задано, datastore также должно быть не задано, а datastore_path должно быть задано. |
placement словарь | Информация о размещении виртуальной машины. Если это поле не задано, система будет использовать значения из исходной виртуальной машины. Если задано, каждое поле будет использоваться для размещения. Если поля приведут к разрозненному размещению, операция завершится ошибкой. Если поля вместе с другим существующим размещением виртуальной машины приведут к разрозненному размещению, операция завершится ошибкой. Допустимые атрибуты:
Если это поле не задано, виртуальная машина останется в текущей папке. При передаче клиентом значения этой структуры в качестве параметра, поле должно содержать идентификатор ресурса, возвращаемого модулем vmware.vmware_rest.vcenter_folder_info. ([‘клонирование’, ‘мгновенное_клонирование’, ‘наличие’, ‘регистрация’, ‘перемещение’])
Если это поле не задано, виртуальная машина останется в текущем пуле ресурсов. При передаче клиентом значения этой структуры в качестве параметра, поле должно содержать идентификатор ресурса, возвращаемого модулем vmware.vmware_rest.vcenter_resourcepool_info. ([‘клонирование’, ‘мгновенное_клонирование’, ‘наличие’, ‘регистрация’, ‘перемещение’])
Если хост и пул_ресурсов заданы оба, пул_ресурсов должен принадлежать хосту. Если хост и кластер заданы оба, хост должен быть членом кластера. Если это поле не задано, если пул_ресурсов не задан, виртуальная машина останется на текущем хосте. Если пул_ресурсов задан, а целевой хост автономный, используется хост. Если пул_ресурсов задан, а целевой хост кластер DRS, хост будет выбран DRS. Если пул_ресурсов задан, а целевой хост кластер без DRS, будет выброшено исключение InvalidArgument. При передаче клиентом значения этой структуры в качестве параметра, поле должно содержать идентификатор ресурса, возвращаемого модулем vmware.vmware_rest.vcenter_host_info. ([‘клонирование’, ‘наличие’, ‘регистрация’, ‘перемещение’])
Если кластер и пул_ресурсов заданы оба, пул_ресурсов должен принадлежать кластеру. Если кластер и хост заданы оба, хост должен быть членом кластера. Если пул_ресурсов или хост заданы, рекомендуется оставить это поле незаданным. При передаче клиентом значения этой структуры в качестве параметра, поле должно содержать идентификатор ресурса, возвращаемого модулем vmware.vmware_rest.vcenter_cluster_info. ([‘клонирование’, ‘наличие’, ‘регистрация’, ‘перемещение’])
Если это поле не задано, виртуальная машина останется на текущем хранилище. При передаче клиентом значения этой структуры в качестве параметра, поле должно содержать идентификатор ресурса, возвращаемого модулем vmware.vmware_rest.vcenter_datastore_info. ([‘клонирование’, ‘мгновенное_клонирование’, ‘наличие’, ‘перемещение’]) |
power_on логическое | Попытка выполнить power_on после клонирования. Если не задано, виртуальная машина не будет включена. Выбопросы:
|
sata_adapters список / элементы=словарь | Список адаптеров SATA. Если не задано, любые адаптеры, необходимые для подключения устройств хранения виртуальной машины, будут созданы; это включает любые устройства, явно указывающие адаптер шины SATA, а также любые устройства, не указывающие адаптер шины, если предпочтительный тип адаптера гостя — SATA. Допустимые атрибуты:
Если не задано, сервер выберет доступный номер шины; если таковых нет, запрос завершится ошибкой. ([‘наличие’])
Если не задано, сервер выберет доступный адрес при включении виртуальной машины. ([‘наличие’]) |
scsi_adapters список / элементы=словарь | Список адаптеров SCSI. Если не задано, любые адаптеры, необходимые для подключения устройств хранения виртуальной машины, будут созданы; это включает любые устройства, явно указывающие адаптер шины SCSI, а также любые устройства, не указывающие адаптер шины, если предпочтительный тип адаптера гостя — SCSI. Тип адаптера SCSI будет зависеть от гостя. Допустимые атрибуты:
Если не задано, сервер выберет доступный номер шины; если таковых нет, запрос завершится ошибкой. ([‘наличие’])
Если не задано, сервер выберет доступный адрес при включении виртуальной машины. ([‘наличие’])
|
serial_ports список / элементы=словарь | Список последовательных портов. Если не задано, последовательные порты не будут созданы. Допустимые атрибуты:
Если не задано, по умолчанию false. ([‘present’])
Если не задано, по умолчанию используется автоматическое определение подходящего устройства хоста. ([‘present’])
Допустимые значения для этого поля:
Это поле необязательно и имеет значение только в том случае, если значение type равно FILE.
Если не задано, виртуальный последовательный порт будет настроен на автоматическое определение подходящего устройства хоста.
Это поле необязательно и имеет значение только в том случае, если значение type равно PIPE_SERVER или PIPE_CLIENT.
Если не задано, по умолчанию false.
Это поле необязательно и имеет значение только в том случае, если значение type равно NETWORK_SERVER или NETWORK_CLIENT.
Если не задано, сервис прокси не должен использоваться.
По умолчанию false, если не задано. ([‘present’])
По умолчанию false, если не задано. ([‘present’]) |
serial_ports_to_update словарь | Карта последовательных портов для обновления. Если не задано, последовательные порты не будут обновляться. Когда клиенты передают значение этой структуры в качестве параметра, ключ в поле карты должен быть идентификатором ресурса, возвращенного vmware.vmware_rest.vcenter_vm_hardware_serial. |
session_timeout число с плавающей точкой добавлено в vmware.vmware_rest 2.1.0 | Настройки таймаута для сеанса клиента. Максимальное количество секунд для всей операции, включая установление соединения, отправку запроса и получение ответа. Значение по умолчанию составляет 300 с. |
source строка | Виртуальная машина для мгновенного клонирования. Когда клиенты передают значение этой структуры в качестве параметра, поле должно быть идентификатором ресурса, возвращенного vmware.vmware_rest.vcenter_vm_info. Требуется со значением state=[‘clone’, ‘instant_clone’] |
state строка | Варианты:
|
storage_policy словарь | Структура storage_policy_spec содержит информацию о политике хранения, которая должна быть связана с домашним каталогом виртуальной машины (который содержит конфигурационные и журнальные файлы). Если не задано, применяется политика хранения по умолчанию для хранилища (если применимо). В настоящее время политика хранения по умолчанию поддерживается только объектами хранилищ: VVol и vSAN. Для хранилищ, не являющихся объектами, если не задано, то политика хранения не будет связана с домашним каталогом виртуальной машины. Требуется со значением state=[‘present’] Допустимые атрибуты:
При передаче клиентом значения этой структуры в качестве параметра поле должно быть идентификатором ресурса политики хранения. ([‘present’]) Этот ключ обязателен для [‘present’]. |
vcenter_hostname строка / обязательно | Имя хоста или IP-адрес vCenter vSphere. Если значение не указано в задаче, используется значение переменной среды |
vcenter_password строка / обязательно | Пароль vCenter vSphere. Если значение не указано в задаче, используется значение переменной среды |
vcenter_rest_log_file строка | Вы можете использовать этот необязательный параметр для задания расположения файла журнала. Этот файл будет использоваться для записи взаимодействия HTTP REST. Файл будет сохранён на хосте, на котором выполняется модуль. Если значение не указано в задаче, используется значение переменной среды |
vcenter_username строка / обязательно | Имя пользователя vCenter vSphere. Если значение не указано в задаче, используется значение переменной среды |
vcenter_validate_certs булево | Разрешает подключение, когда сертификаты SSL недействительны. Установите в Если значение не указано в задаче, используется значение переменной среды Варианты:
|
vm string | Идентификатор виртуальной машины, которая будет исключена. Параметр должен быть идентификатором ресурса, возвращаемого модулем vmware.vmware_rest.vcenter_vm_info. Требуется при state=[‘absent’, ‘relocate’, ‘unregister’] |
Примечания
Примечание
- Тестировано на 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/rw_datastore') }}"
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 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
disks:
- type: SATA
backing:
type: VMDK_FILE
vmdk_file: '[local] test_vm1/{{ disk_name }}.vmdk'
- type: SATA
new_vmdk:
name: second_disk
capacity: 32000000000
cdroms:
- type: SATA
sata:
bus: 0
unit: 2
nics:
- backing:
type: STANDARD_PORTGROUP
network: "{{ lookup('vmware.vmware_rest.network_moid', '/my_dc/network/VM Network') }}"
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: Get the list of items of the NFS library
vmware.vmware_rest.content_library_item_info:
library_id: '{{ nfs_lib.id }}'
register: lib_items
- name: Use the name to identify the item
set_fact:
my_template_item: "{{ lib_items.value | selectattr('name', 'equalto', 'golden-template')|first }}"
- 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: '{{ my_template_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
- name: Retrieve all the details about the new VM
vmware.vmware_rest.vcenter_vm:
vm: '{{ my_new_vm.value }}'
register: my_new_vm_info
- name: Create an instant clone of a VM
vmware.vmware_rest.vcenter_vm:
placement:
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') }}"
source: '{{ my_vm.id }}'
name: test_vm2
state: instant_clone
register: my_instant_clone
- name: Create a clone of a VM
vmware.vmware_rest.vcenter_vm:
placement:
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') }}"
source: '{{ my_vm.id }}'
name: test_vm3
state: clone
register: my_clone_vm
- name: Build a list of all the clusters
vmware.vmware_rest.vcenter_cluster_info:
register: all_the_clusters
- name: Retrieve details about the first cluster
vmware.vmware_rest.vcenter_cluster_info:
cluster: '{{ all_the_clusters.value[0].cluster }}'
register: my_cluster_info
- name: Build a list of all the folders with the type VIRTUAL_MACHINE and called vm
vmware.vmware_rest.vcenter_folder_info:
filter_type: VIRTUAL_MACHINE
filter_names:
- vm
register: my_folders
- name: Set my_virtual_machine_folder
ansible.builtin.set_fact:
my_virtual_machine_folder: '{{ my_folders.value|first }}'
- name: Create a VM
vmware.vmware_rest.vcenter_vm:
placement:
cluster: '{{ my_cluster_info.id }}'
datastore: "{{ lookup('vmware.vmware_rest.datastore_moid', '/my_dc/datastore/local') }}"
folder: '{{ my_virtual_machine_folder.folder }}'
resource_pool: '{{ my_cluster_info.value.resource_pool }}'
name: test_vm1
guest_OS: DEBIAN_7_64
hardware_version: VMX_10
memory:
hot_add_enabled: true
size_MiB: 1024
register: my_vm
Значения возврата
Общие значения возврата описаны здесь, следующие поля уникальны для этого модуля:
Ключ | Описание |
|---|---|
id string | moid ресурса Возвращается: При успехе Пример: |
value dictionary | Создает мгновенную копию виртуальной машины Возвращается: При успехе Пример: |
Ссылки на коллекцию
© 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/vmware/vmware_rest/vcenter_vm_module.html