vmware_guest - Управляет виртуальными машинами в vCenter
Новая версия 2.2.
- Обзор
- Требования (к хосту, на котором выполняется модуль)
- Параметры
- Примеры
- Значения возврата
- Примечания
Обзор
- Создание новых виртуальных машин (из шаблонов или без).
- Включение/выключение/перезагрузка виртуальной машины.
- Изменение, переименование или удаление виртуальной машины.
Требования (к хосту, на котором выполняется модуль)
- python >= 2.6
- PyVmomi
Параметры
| параметр | обязательно | по умолчанию | варианты | комментарии |
|---|---|---|---|---|
| annotation (добавлено в 2.3)
| нет | Примечание или аннотация для включения в ВМ. | ||
| cluster (добавлено в 2.3)
| нет | Имя кластера, в котором будет работать ВМ. | ||
| customization (добавлено в 2.3)
| нет | Параметры для настройки ОС при клонировании из шаблона. Общие параметры (Linux/Windows): - dns_servers (список): Список DNS-серверов для настройки. - dns_suffix (список): Список доменных суффиксов, т.е. путь поиска DNS (по умолчанию: параметр domain). - domain (строка): Имя домена DNS для использования. - hostname (строка): Имя хоста компьютера (по умолчанию: сокращенное значение параметра name).Параметры, связанные с настройкой Windows: - autologon (логическое значение): Автоматический вход после настройки ВМ (по умолчанию: False). - autologoncount (целое число): Количество автоматического входа после перезагрузки (по умолчанию: 1). - domainadmin (строка): Пользователь для присоединения к домену AD (обязательно с joindomain). - domainadminpassword (строка): Пароль для присоединения к домену AD (обязательно с joindomain). - fullname (строка): Имя владельца сервера (по умолчанию: Administrator). - joindomain (строка): Домен AD для присоединения (несовместимо с joinworkgroup). - joinworkgroup (строка): Рабочая группа для присоединения (несовместимо с joindomain, по умолчанию: WORKGROUP). - orgname (строка): Название организации (по умолчанию: ACME). - password (строка): Пароль локального администратора. - productid (строка): Идентификатор продукта. - runonce (список): Список команд, которые нужно выполнить при первом входе пользователя. - timezone (целое число): Часовой пояс (см. https://msdn.microsoft.com/en-us/library/ms912391.aspx). | ||
| customvalues (добавлено в 2.3)
| нет | Определите список customvalues для установки на ВМ. Объект customvalue содержит 2 поля key и value. | ||
| datacenter | нет | ha-datacenter | Целевой дата-центр для операции развертывания. | |
| disk | нет | Список дисков для добавления. Допустимые атрибуты: - size_[tb,gb,mb,kb] (целое число): Размер хранилища диска в заданной единице. - type (строка): Допустимое значение thin (по умолчанию: None). - datastore (строка): Хранилище данных для использования диска. Если autoselect_datastore включен, отфильтруйте выбор хранилища данных. - autoselect_datastore (логическое значение): Выбрать наименее используемое хранилище данных. | ||
| esxi_hostname | нет | Имя хоста ESXi, на котором будет работать ВМ. | ||
| folder | нет | /vm | Целевая папка, абсолютный или относительный путь для поиска существующей виртуальной машины или создания новой. Папка должна включать дата-центр. Дата-центр ESX — ha-datacenter Примеры: folder: /ha-datacenter/vm folder: ha-datacenter/vm folder: /datacenter1/vm folder: datacenter1/vm folder: /datacenter1/vm/folder1 folder: datacenter1/vm/folder1 folder: /folder1/datacenter1/vm folder: folder1/datacenter1/vm folder: /folder1/datacenter1/vm/folder2 folder: vm/folder2 folder: folder2 | |
| force | нет | нет |
| Игнорировать предупреждения и выполнить действия. |
| guest_id (добавлено в 2.3)
| нет | Установить идентификатор гостя (Debian, RHEL, Windows...). Это поле необходимо при создании ВМ. Допустимые значения приведены здесь: https://www.vmware.com/support/developer/converter-sdk/conv55_apireference/vim.vm.GuestOsDescriptor.GuestOsIdentifier.html | ||
| hardware | нет | Управление некоторыми атрибутами оборудования ВМ. Допустимые атрибуты: - memory_mb (целое число): Объем памяти в МБ. - num_cpus (целое число): Количество процессоров. - scsi (строка): Допустимые значения buslogic, lsilogic, lsilogicsas и paravirtual (по умолчанию). | ||
| hostname | да | Имя хоста или IP-адрес vCenter vSphere. | ||
| is_template (добавлено в 2.3)
| нет | нет |
| Флаг экземпляра как шаблон. |
| linked_clone (добавлено в 2.4)
| нет | нет |
| Создавать ли связанный клон из указанной копии? |
| name | да | Имя ВМ для работы с ней. Имена ВМ в vCenter не обязательно уникальны, что может быть проблематично, см. name_match. | ||
| name_match | нет | first |
| Если несколько ВМ соответствуют имени, использовать первую или последнюю найденную. |
| networks (добавлено в 2.3)
| нет | Список сетей (в порядке сетевых адаптеров). Одно из указанных ниже параметров требуется для каждой записи: - name (строка): Имя группы портов для этого интерфейса. - vlan (целое число): Номер VLAN для этого интерфейса.Дополнительные параметры для каждой записи (используются для виртуального оборудования): - device_type (строка): Виртуальное сетевое устройство (одно из e1000, e1000e, pcnet32, vmxnet2, vmxnet3 (по умолчанию), sriov). - mac (строка): Настройка MAC-адреса.Дополнительные параметры для каждой записи (используются для настройки ОС): - type (строка): Тип назначения IP-адреса (либо dhcp или static). - ip (строка): Статический IP-адрес (подразумевает type: static). - netmask (строка): Статическая маска подсети, необходимая для ip. - gateway (строка): Статический шлюз. - dns_servers (строка): DNS-серверы для этого сетевого интерфейса (Windows). - domain (строка): Имя домена для этого сетевого интерфейса (Windows). | ||
| password | да | Пароль от vCenter vSphere. псевдонимы: pass, pwd | ||
| resource_pool (добавлено в 2.3)
| нет | Назначить машину заданному пулу ресурсов. Пул ресурсов должен быть дочерним по отношению к выбранному родительскому хосту. | ||
| snapshot_src (добавлено в 2.4)
| нет | Имя существующей копии для использования при создании клона ВМ. | ||
| state | да |
| Какое состояние должна иметь виртуальная машина? Если state установлено в present и ВМ существует, убедитесь, что конфигурация ВМ соответствует аргументам задачи. | |
| template | нет | Шаблон, используемый для создания ВМ. Если это значение не задано, ВМ создается без использования шаблона. Если ВМ уже существует, это значение будет проигнорировано. | ||
| username | да | Имя пользователя vCenter vSphere. псевдонимы: user, admin | ||
| uuid | нет | UUID экземпляра для управления, если известен. Это уникальный идентификатор VMware. Требуется, если имя не указано. | ||
| validate_certs | нет | True |
| Разрешает подключение, когда сертификаты SSL недействительны. Установите в значение False, когда сертификаты не доверяются. |
| wait_for_ip_address | нет | нет |
| Ожидание, пока vCenter не обнаружит IP-адрес для ВМ. Это требует vmware-tools (vmtoolsd) для правильной работы после создания. |
Примеры
- name: Create a VM from a template
vmware_guest:
hostname: 192.0.2.44
username: administrator@vsphere.local
password: vmware
validate_certs: no
folder: /testvms
name: testvm_2
state: poweredon
template: template_el7
disk:
- size_gb: 10
type: thin
datastore: g73_datastore
hardware:
memory_mb: 512
num_cpus: 1
scsi: paravirtual
networks:
- name: VM Network
mac: aa:bb:dd:aa:00:14
wait_for_ip_address: yes
delegate_to: localhost
register: deploy
- name: Clone a VM from Template and customize
vmware_guest:
hostname: 192.168.1.209
username: administrator@vsphere.local
password: vmware
validate_certs: no
datacenter: datacenter1
cluster: cluster
name: testvm-2
template: template_windows
networks:
- name: VM Network
ip: 192.168.1.100
netmask: 255.255.255.0
gateway: 192.168.1.1
mac: aa:bb:dd:aa:00:14
domain: my_domain
dns_servers:
- 192.168.1.1
- 192.168.1.2
- vlan: 1234
type: dhcp
customization:
autologon: yes
dns_servers:
- 192.168.1.1
- 192.168.1.2
domain: my_domain
password: new_vm_password
runonce:
- powershell.exe -ExecutionPolicy Unrestricted -File C:\Windows\Temp\ConfigureRemotingForAnsible.ps1 -ForceNewSSLCert -EnableCredSSP
delegate_to: localhost
- name: Create a VM template
vmware_guest:
hostname: 192.0.2.88
username: administrator@vsphere.local
password: vmware
validate_certs: no
datacenter: datacenter1
cluster: vmware_cluster_esx
resource_pool: highperformance_pool
folder: /testvms
name: testvm_6
is_template: yes
guest_id: debian6_64Guest
disk:
- size_gb: 10
type: thin
datastore: g73_datastore
hardware:
memory_mb: 512
num_cpus: 1
scsi: lsilogic
delegate_to: localhost
register: deploy
- name: Rename a VM (requires the VM's uuid)
vmware_guest:
hostname: 192.168.1.209
username: administrator@vsphere.local
password: vmware
uuid: 421e4592-c069-924d-ce20-7e7533fab926
name: new_name
state: present
delegate_to: localhost
- name: Remove a VM by uuid
vmware_guest:
hostname: 192.168.1.209
username: administrator@vsphere.local
password: vmware
uuid: 421e4592-c069-924d-ce20-7e7533fab926
state: absent
delegate_to: localhost
Значения возврата
Общие значения возврата описаны здесь Значения возврата, следующие поля уникальны для этого модуля:
| имя | описание | возвращаемое | тип | пример |
|---|---|---|---|---|
| instance | метаданные о новой виртуальной машине | всегда | dict | None |
Примечания
Примечание
- Проверено на vSphere 5.5 и 6.0
Статус
Этот модуль помечен как превью, что означает, что он не гарантирует обратную совместимость интерфейса.
Для получения помощи в разработке модулей, если вы так заинтересованы, пожалуйста, ознакомьтесь с Информацией о сообществе и участием, Тестирование Ansible и Разработка модулей.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/vmware_guest_module.html