Spec-Zone.ru › Ansible 2.6

ovirt_vms — Модуль управления виртуальными машинами в oVirt/RHV

Новый в версии 2.2.

  • Описание
    • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения
  • Статус
  • Техническое обслуживание
    • Автор

Описание

  • Этот модуль управляет полным жизненным циклом виртуальной машины (ВМ) в oVirt/RHV.
  • Так как ВМ может иметь множество состояний в oVirt/RHV, см. примечания, чтобы узнать, как обрабатываются состояния ВМ.

Требования

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

  • python >= 2.7
  • ovirt-engine-sdk-python >= 4.2.4

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
affinity_group_mappings
(добавлено в 2.5)
Маппер, который сопоставляет имя группы соответствия между OVF виртуальной машины и целевой группой соответствия, к которой должна быть зарегистрирована эта виртуальная машина, актуально, когда регистрируется state.
affinity_label_mappings
(добавлено в 2.5)
Маппер, который сопоставляет имя метки соответствия между OVF виртуальной машины и целевой меткой, к которой должна быть зарегистрирована эта виртуальная машина, актуально, когда регистрируется state.
allow_partial_import
(добавлено в 2.4)
Булево значение, указывающее, разрешить ли частичную регистрацию виртуальной машины, когда регистрируется state.
auth
обязательно
Словарь со значениями, необходимыми для создания HTTP/HTTPS соединения с oVirt:
username[обязательно] - Имя пользователя, например, admin@internal. Значение по умолчанию устанавливается переменной среды OVIRT_USERNAME.
password[обязательно] - Пароль пользователя. Значение по умолчанию устанавливается переменной среды OVIRT_PASSWORD.
url - Строка, содержащая URL API сервера, обычно что-то вроде `https://server.example.com/ovirt-engine/api`. Значение по умолчанию устанавливается переменной среды OVIRT_URL. Необходимо указать либо url, либо hostname.
hostname - Строка, содержащая имя хоста сервера, обычно что-то вроде `server.example.com`. Значение по умолчанию устанавливается переменной среды OVIRT_HOSTNAME. Необходимо указать либо url, либо hostname.
token - Токен, который будет использоваться вместо входа с именем пользователя/паролем. Значение по умолчанию устанавливается переменной среды OVIRT_TOKEN.
insecure - Булево значение, указывающее, следует ли проверять сертификат TLS сервера и имя хоста.
ca_file - PEM-файл, содержащий доверенные корневые сертификаты. Сертификат, представленный сервером, будет проверен с использованием этих корневых сертификатов. Если параметр `ca_file` не установлен, используется системный хранилище корневых сертификатов. Значение по умолчанию устанавливается переменной среды OVIRT_CAFILE.
kerberos - Булево значение, указывающее, следует ли использовать аутентификацию Kerberos вместо стандартной базовой аутентификации.
headers - Словарь HTTP-заголовков, которые будут добавляться к каждому вызову API.
ballooning_enabled
(добавлено в 2.5)
Если true, использовать memory ballooning.
Memory balloon - это устройство гостевой системы, которое может использоваться для перераспределения/освобождения памяти хоста в зависимости от потребностей виртуальной машины динамическим способом. Таким образом, можно создавать состояния перегрузки памяти.
boot_devices
    Варианты:
  • cdrom
  • hd
  • network
Список загрузочных устройств, которые должны использоваться для загрузки. Например, [ cdrom, hd ].
Значение по умолчанию устанавливается ядром oVirt/RHV.
boot_menu
(добавлено в 2.5)
True включает меню выбора загрузочного устройства, False - отключает его. По умолчанию выбирается ядром oVirt/RHV.
cd_iso
ISO-файл из хранилища ISO, который должен быть подключен к виртуальной машине.
Если передать пустую строку, CD-диск будет извлечен из виртуальной машины.
Если используется с state running или present и виртуальная машина работает, CD-диск будет подключен к виртуальной машине.
Если используется с state running или present и виртуальная машина выключена, CD-диск будет постоянно подключен к виртуальной машине.
clone
bool
    Варианты:
  • no ←
  • yes
Если yes, то диски созданной виртуальной машины будут клонированы и независимы от шаблона.
Этот параметр используется только тогда, когда state имеет значение running или present, и виртуальная машина не существовала ранее.
clone_permissions
bool
    Варианты:
  • no ←
  • yes
Если yes, то права доступа шаблона (только прямые, а не унаследованные) будут скопированы в созданную виртуальную машину.
Этот параметр используется только тогда, когда state имеет значение running или present, и виртуальная машина не существовала ранее.
cloud_init
Словарь со значениями для инициализации виртуальной машины, подобной Unix, с помощью cloud-init.
host_name - Имя хоста, которое будет установлено для виртуальной машины при развертывании.
timezone - Часовой пояс, который будет установлен для виртуальной машины при развертывании.
user_name - Имя пользователя, которое будет использоваться для установки пароля для виртуальной машины при развертывании.
root_password - Пароль, который будет установлен для пользователя, указанного параметром user_name.
authorized_ssh_keys - Используйте эти SSH-ключи для входа в виртуальную машину.
regenerate_ssh_keys - Если True, SSH-ключи будут перегенерированы на виртуальной машине.
custom_script - Скрипт cloud-init, который будет выполнен на виртуальной машине при развертывании. Он добавляется в конец скрипта cloud-init, сгенерированного другими параметрами.
dns_servers - DNS-серверы, которые будут настроены на виртуальной машине.
dns_search - DNS-домены поиска, которые будут настроены на виртуальной машине.
nic_boot_protocol - Установите протокол загрузки сетевого интерфейса виртуальной машины. Может быть одним из none, dhcp или static.
nic_ip_address - Если протокол загрузки статический, установите этот IP-адрес для сетевого интерфейса виртуальной машины.
nic_netmask - Если протокол загрузки статический, установите эту маску сети для сетевого интерфейса виртуальной машины.
nic_gateway - Если протокол загрузки статический, установите этот шлюз для сетевого интерфейса виртуальной машины.
nic_name - Установите имя сетевого интерфейса виртуальной машины.
nic_on_boot - Если True, сетевой интерфейс будет настроен на запуск при загрузке.
cloud_init_nics
(добавлено в 2.3)
Список словарей, представляющих сетевые интерфейсы, которые должны быть настроены с помощью cloud-init.
Этот параметр используется, когда пользователю нужно настроить несколько сетевых интерфейсов через cloud-init.
Если достаточно одного сетевого интерфейса, пользователь должен использовать параметры cloud_init nic_*. Параметры cloud_init nic_* объединяются с параметрами cloud_init_nics.
Словарь может содержать следующие значения.
nic_boot_protocol - Установите протокол загрузки сетевого интерфейса виртуальной машины. Может быть одним из none, dhcp или static.
nic_ip_address - Если протокол загрузки статический, установите этот IP-адрес для сетевого интерфейса виртуальной машины.
nic_netmask - Если протокол загрузки статический, установите эту маску сети для сетевого интерфейса виртуальной машины.
nic_gateway - Если протокол загрузки статический, установите этот шлюз для сетевого интерфейса виртуальной машины.
nic_name - Установите имя сетевого интерфейса виртуальной машины.
nic_on_boot - Если True, сетевой интерфейс будет настроен на запуск при загрузке.
cloud_init_persist
(добавлено в 2.5)
Если true, параметры cloud_init или sysprep будут сохранены для виртуальной машины, и виртуальная машина не будет запускаться как одноразовая.

псевдонимы: sysprep_persist
cluster
Имя кластера, в котором должна быть создана виртуальная машина.
Обязательно при создании виртуальной машины.
cluster_mappings
(добавлено в 2.5)
Маппер, который сопоставляет имя кластера между OVF виртуальной машины и целевым кластером, к которому должна быть зарегистрирована эта виртуальная машина, актуально, когда регистрируется state. Сопоставление кластеров описывается следующим словарем:
source_name: Имя исходного кластера.
dest_name: Имя целевого кластера.
comment
(добавлено в 2.3)
Комментарий к виртуальной машине.
cpu_cores
Количество ядер виртуальных процессоров виртуальной машины.
Значение по умолчанию устанавливается ядром oVirt/RHV.
cpu_mode
(добавлено в 2.5)
Режим ЦП виртуальной машины. Это может быть один из следующих: host_passthrough, host_model или custom.
Для режима ЦП host_passthrough необходимо установить placement_policy в pinned.
Если значение не передано, значение по умолчанию устанавливается ядром oVirt/RHV.
cpu_pinning
(добавлено в 2.5)
Топология привязки ЦП для сопоставления ЦП виртуальной машины с ЦП хоста.
Топология привязки ЦП - это список словарей, которые могут иметь следующие значения:
cpu - Номер ЦП хоста.
vcpu - Номер ЦП виртуальной машины.
cpu_shares
Установите доли ЦП для этой виртуальной машины.
Значение по умолчанию устанавливается ядром oVirt/RHV.
cpu_sockets
Количество сокетов виртуальных процессоров виртуальной машины.
Значение по умолчанию устанавливается ядром oVirt/RHV.
cpu_threads
(added in 2.5)
Количество виртуальных процессорных сокетов виртуальной машины.
Значение по умолчанию устанавливается движком oVirt/RHV.
custom_properties
(added in 2.5)
Свойства, отправляемые в VDSM для настройки различных хуков.
Пользовательские свойства представляют собой список словарей, которые могут содержать следующие значения:
name - Название пользовательского свойства. Например: hugepages, vhost, sap_agent и т. д.
regexp - Регулярное выражение для настройки пользовательского свойства.
value - Значение для настройки пользовательского свойства.
delete_protected
Если yes, виртуальная машина будет защищена от удаления.
Если no, виртуальная машина не будет защищена от удаления.
Если значение не передано, используется значение по умолчанию, установленное движком oVirt/RHV.
description
(added in 2.3)
Описание виртуальной машины.
disk_format
(added in 2.4)
    Choices:
  • cow ←
  • raw
Укажите формат диска.
Если используется формат cow, диск будет создан как разреженный, поэтому место на диске будет выделено по мере необходимости, также известный как thin provision.
Если используется формат raw, место на диске будет выделено сразу, также известный как preallocated.
Обратите внимание, что этот параметр не идемпотентен, так как в настоящее время изменить формат диска через API нельзя.
Этот параметр учитывается только при указании template и storage domain.
disks
Список дисков, которые должны быть подключены к виртуальной машине. Диск описывается следующим словарем.
name - Название диска. Требуется указать либо name, либо id.
id - Идентификатор диска. Требуется указать либо name, либо id.
interface - Интерфейс диска, либо virtio, либо IDE, по умолчанию virtio.
bootable - True, если диск должен быть загрузочным, по умолчанию не загрузочный.
activate - True, если диск должен быть активирован, по умолчанию активирован.
ПРИМЕЧАНИЕ. Этот параметр используется только при state running или present и позволяет только подключать диски. Для более глубокой настройки дисков ВМ используйте модуль ovirt_disks вместо этого.
domain_mappings
(added in 2.5)
Сопоставление доменов, отображающее имя домена aaa виртуальной машины OVF с целевым именем домена aaa, к которому должна быть зарегистрирована эта виртуальная машина. Актуально, когда state зарегистрирован. Отображение имен доменов aaa описывается следующим словарем:
source_name: Название исходного домена aaa.
dest_name: Название целевого домена aaa.
fetch_nested
(added in 2.3)
Если True, модуль получит дополнительные данные из API.
Он получит идентификаторы дисков ВМ, снимков и т. д. Пользователь может настроить получение других атрибутов вложенных сущностей, указав nested_attributes.
force
bool
    Choices:
  • no ←
  • yes
Подробное описание параметра force см. в разделе Synopsis. Он может вести себя по-разному в разных ситуациях.
graphical_console
(added in 2.5)
Присвоить виртуальной машине графический консоль.
Графический консоль — это словарь, который может содержать следующие значения:
headless_mode - Если true, отключить графический консоль для этой виртуальной машины.
protocol - Графический протокол, список spice, vnc или оба.
high_availability
bool
    Choices:
  • no
  • yes
Если yes, виртуальная машина будет настроена как высокодоступная.
Если no, виртуальная машина не будет настроена как высокодоступная.
Если значение не передано, используется значение по умолчанию, установленное движком oVirt/RHV.
high_availability_priority
(added in 2.5)
Указывает приоритет виртуальной машины в очередях выполнения и миграции. Виртуальные машины с более высоким приоритетом будут запускаться и мигрироваться раньше виртуальных машин с более низким приоритетом. Значение — целое число от 0 до 100. Чем выше значение, тем выше приоритет.
Если значение не передано, используется значение по умолчанию, установленное движком oVirt/RHV.
host
Укажите хост, на котором должна выполняться виртуальная машина. По умолчанию хост выбирается планировщиком движка.
Этот параметр используется только при state running или present.
id
Идентификатор виртуальной машины для управления.
initrd_path
(added in 2.3)
Путь к начальному образы оперативной памяти для использования с ядром, указанным параметром kernel_path.
Изображение образов оперативной памяти должно храниться либо в домене ISO, либо в хранилище хоста.
instance_type
(added in 2.3)
Имя конфигурации аппаратного обеспечения виртуальной машины.
По умолчанию тип экземпляра не используется.
io_threads
(added in 2.5)
Количество потоков ввода-вывода, используемых виртуальной машиной. 0 означает отключение многопоточности ввода-вывода.
kernel_params
(added in 2.3)
Параметры командной строки ядра (в формате строки) для использования с ядром, указанным параметром kernel_path.
kernel_path
(added in 2.3)
Путь к изображению ядра, используемому для загрузки виртуальной машины.
Изображение ядра должно храниться либо в домене ISO, либо в хранилище хоста.
kvm
(added in 2.3)
Словарь значений для подключения к KVM и импорта виртуальной машины в oVirt.
Словарь может содержать следующие значения:
name - Имя виртуальной машины KVM.
username - Имя пользователя для аутентификации в KVM.
password - Пароль для аутентификации в KVM.
url - URL, который необходимо передать инструменту virt-v2v для преобразования. Например, qemu:///system. Этот параметр обязателен.
drivers_iso - Имя ISO, содержащего драйверы, которые могут использоваться во время процесса преобразования virt-v2v.
sparse - Указывает политику выделения места на диске для результирующей виртуальной машины. true для разреженного, false для выделенного. Значение по умолчанию — true.
storage_domain - Указывает целевой домен хранения для преобразованных дисков. Этот параметр обязателен.
lease
(added in 2.4)
Имя домена хранения, на котором находится аренда виртуальной машины.
ПРИМЕЧАНИЕ. Поддерживается с oVirt 4.1.
lun_mappings
(added in 2.5)
Сопоставление LUN, которое отображает LUN виртуальной машины OVF с целевым LUN, которое должна содержать эта виртуальная машина. Актуально, когда state зарегистрирован. lun_mappings описывается следующим словарем: - logical_unit_id: Логический номер устройства для идентификации логического устройства, - logical_unit_port: Порт, используемый для подключения к диску LUN, - logical_unit_portal: Портал, используемый для подключения к диску LUN, - logical_unit_address: Адрес хоста хранения блочных данных, - logical_unit_target: Спецификация iSCSI, расположенная на сервере iSCSI, - logical_unit_username: Имя пользователя для подключения к хосту хранения блочных данных, - logical_unit_password: Пароль для подключения к хосту хранения блочных данных, - storage_type: Тип хранилища, на котором находится LUN (iscsi или fcp).
memory
Объем оперативной памяти виртуальной машины. Префикс использует стандарт IEC 60027-2 (например, 1GiB, 1024MiB).
Значение по умолчанию устанавливается движком.
memory_guaranteed
Минимальный гарантированный объем оперативной памяти виртуальной машины. Префикс использует стандарт IEC 60027-2 (например, 1GiB, 1024MiB).
memory_guaranteed параметр не может быть меньше memory параметра.
Значение по умолчанию устанавливается движком.
memory_max
(added in 2.5)
Верхняя граница оперативной памяти виртуальной машины, до которой может быть выполнено горячее подключение оперативной памяти. Префикс использует стандарт IEC 60027-2 (например, 1GiB, 1024MiB).
Значение по умолчанию устанавливается движком.
name
Имя виртуальной машины для управления.
Если виртуальная машина не существует, требуется name. В противном случае можно использовать id или name.
nested_attributes
(added in 2.3)
Указывает список атрибутов, которые должны быть получены из API.
Этот параметр применим только если fetch_nested равно true.
nics
Список сетевых адаптеров (NIC), которые должны быть подключены к виртуальной машине. NIC описывается следующим словарем.
name - Название сетевого адаптера.
profile_name - Имя профиля, к которому должен быть подключен сетевой адаптер.
interface - Тип сетевого интерфейса. Один из следующих: virtio, e1000, rtl8139, по умолчанию virtio.
mac_address - Пользовательский MAC-адрес сетевого интерфейса, по умолчанию он извлекается из пула MAC-адресов.
ПРИМЕЧАНИЕ - Этот параметр используется только в том случае, когда state находится в состоянии running или present и может создавать только сетевые адаптеры. Для более глубокого управления сетевыми адаптерами ВМ используйте модуль ovirt_nics вместо этого.
numa_nodes
(добавлено в 2.6)
Список узлов vNUMA, которые нужно задать для данной ВМ и привязать их к физическому узлу NUMA назначенного хоста.
Каждый узел vNUMA описывается следующим словарем:
index - Индекс этого узла NUMA (обязательно).
memory - Размер памяти узла NUMA в MiB (обязательно).
cores - Список индексов ядер процессора ВМ, которые следует включить в этот узел NUMA (обязательно).
numa_node_pins - Список индексов физических узлов NUMA, к которым нужно привязать этот виртуальный узел NUMA.
numa_tune_mode
(добавлено в 2.6)
Указывает, как применяется распределение памяти для узлов NUMA этой ВМ (актуально, если для этой ВМ заданы узлы NUMA).
Может принимать одно из следующих значений: interleave, preferred или strict.
Если значение не указано, используется значение по умолчанию, заданное движком oVirt/RHV.
operating_system
    Варианты:
  • debian_7
  • freebsd
  • freebsdx64
  • other
  • other_linux
  • other_linux_ppc64
  • other_ppc64
  • rhel_3
  • rhel_4
  • rhel_4x64
  • rhel_5
  • rhel_5x64
  • rhel_6
  • rhel_6x64
  • rhel_6_ppc64
  • rhel_7x64
  • rhel_7_ppc64
  • sles_11
  • sles_11_ppc64
  • ubuntu_12_04
  • ubuntu_12_10
  • ubuntu_13_04
  • ubuntu_13_10
  • ubuntu_14_04
  • ubuntu_14_04_ppc64
  • windows_10
  • windows_10x64
  • windows_2003
  • windows_2003x64
  • windows_2008
  • windows_2008x64
  • windows_2008r2x64
  • windows_2008R2x64
  • windows_2012x64
  • windows_2012R2x64
  • windows_7
  • windows_7x64
  • windows_8
  • windows_8x64
  • windows_xp
Операционная система виртуальной машины.
Значение по умолчанию устанавливается движком oVirt/RHV.
placement_policy
(добавлено в 2.5)
Настройка политики размещения виртуальной машины.
Политика размещения может иметь следующие значения:
migratable - Разрешить ручную и автоматическую миграцию.
pinned - Не разрешать миграцию.
user_migratable - Разрешить только ручную миграцию.
Если значение не указано, используется значение по умолчанию, заданное движком oVirt/RHV.
poll_interval По умолчанию:
3
Количество секунд, которое модуль ожидает, прежде чем отправить запрос на получение состояния сущности.
quota_id
(добавлено в 2.5)
Идентификатор квоты виртуальной машины, который будет использоваться для диска. По умолчанию квота выбирается движком oVirt/RHV.
reassign_bad_macs
(добавлено в 2.5)
Булево значение, указывающее, следует ли переназначать некорректные MAC-адреса при регистрации state.
rng_device
(добавлено в 2.5)
Генератор случайных чисел (RNG). Можно выбрать один из следующих устройств: urandom, random или hwrng.
Для выбора hwrng необходимо сначала включить его в кластере.
/dev/urandom используется для версии кластера ≥ 4.1, а /dev/random для версии кластера ≤ 4.0.
role_mappings
(добавлено в 2.5)
Маппер, который отображает имя роли между OVF виртуальной машины и целевой ролью, к которой эта виртуальная машина должна быть зарегистрирована, актуально, когда state зарегистрирована. Отображение роли описывается следующим словарем:
source_name: Имя исходной роли.
dest_name: Имя целевой роли.
serial_console
(добавлено в 2.5)
True включает виртуальную консоль VirtIO, False - отключает ее. По умолчанию выбирается движком oVirt/RHV.
serial_policy
(добавлено в 2.3)
Указывает политику для серийного номера виртуальной машины.
Поддерживаются следующие варианты.
vm - Устанавливает UUID виртуальной машины в качестве ее серийного номера.
host - Устанавливает UUID хоста в качестве серийного номера виртуальной машины.
custom - Позволяет указать пользовательский серийный номер в serial_policy_value.
serial_policy_value
(добавлено в 2.3)
Позволяет указать пользовательский серийный номер.
Этот параметр используется только при serial_policy - custom.
smartcard_enabled
(добавлено в 2.5)
Если true, использовать аутентификацию с помощью смарт-карты.
soundcard_enabled
(добавлено в 2.5)
Если true, звуковая карта добавляется к виртуальной машине.
sso
(добавлено в 2.5)
True включает однозначный вход (SSO) с помощью Guest Agent, False - отключает его. По умолчанию выбирается движком oVirt/RHV.
state
    Варианты:
  • absent
  • next_run
  • present ←
  • registered
  • running
  • stopped
  • suspended
Должна ли виртуальная машина работать/останавливаться/быть представленной/отсутствовать/приостановленной/следующая_запуск/зарегистрированной. Когда state — registered, и имя незарегистрированной ВМ принадлежит уже зарегистрированной в движке ВМ в том же ЦОД, то регистрация незарегистрированного шаблона завершается неудачно.
Состояние present создаст/обновит ВМ и не изменит ее состояние, если она уже существует.
Состояние running создаст/обновит ВМ и запустит ее.
Состояние next_run обновляет ВМ, и если у ВМ есть конфигурация следующего запуска, она будет перезагружена.
Для более подробного описания состояний см. раздел Примечания.
Состояние registered поддерживается начиная с версии 2.4.
stateless
Если yes, виртуальная машина будет установлена как бессостоятельная.
Если no, виртуальная машина будет снята с бессостоятельного режима.
Если значение не указано, используется значение по умолчанию, заданное движком oVirt/RHV.
storage_domain
(добавлено в 2.4)
Имя хранилища, в котором должны быть созданы все диски шаблона.
Этот параметр учитывается только при наличии template.
ВАЖНО - Этот параметр не идемпотентен, если ВМ существует, и вы задаете другой домен хранения, диск не переместится.
sysprep
Словарь со значениями для инициализации виртуальной машины Windows с помощью sysprep.
host_name - Имя хоста, которое будет установлено для виртуальной машины при развертывании.
active_directory_ou - Организационная единица Active Directory, которая будет использоваться для входа пользователя.
org_name - Название организации, которое будет установлено для виртуальной машины Windows.
domain - Домен, который будет установлен для виртуальной машины Windows.
timezone - Часовой пояс, который будет установлен для виртуальной машины Windows.
ui_language - Язык пользовательского интерфейса виртуальной машины Windows.
system_locale - Локализация системы виртуальной машины Windows.
input_locale - Локализация ввода виртуальной машины Windows.
windows_license_key - Ключ лицензии, который будет установлен для виртуальной машины Windows.
user_name - Имя пользователя, которое будет использоваться для установки пароля виртуальной машины Windows.
root_password - Пароль, который будет установлен для имени пользователя виртуальной машины Windows.
template
Имя шаблона, которое следует использовать для создания виртуальной машины.
Требуется при создании ВМ.
Если шаблон не указан и ВМ не существует, ВМ будет создана из шаблона Blank.
template_version
(добавлено в 2.3)
Номер версии шаблона, который следует использовать для ВМ.
По умолчанию используется последняя доступная версия шаблона.
timeout По умолчанию:
180
Время в секундах, которое модуль должен ожидать, пока экземпляр не перейдет в желаемое состояние.
timezone
(добавлено в 2.3)
Устанавливает смещение часового пояса системных часов гостевой операционной системы.
Например, Etc/GMT.
type
    Варианты:
  • desktop
  • server
  • high_performance
Тип виртуальной машины.
Значение по умолчанию устанавливается движком oVirt/RHV.
high_performance поддерживается с Ansible 2.5 и oVirt/RHV 4.2.
usb_support
(добавлено в 2.5)
True включает поддержку USB, False - отключает ее. По умолчанию выбирается движком oVirt/RHV.
use_latest_template_version
bool

(added in 2.3)
    Варианты:
  • нет
  • да
Указать, следует ли использовать последнюю версию шаблона при запуске бессостоятельного виртуального машины.
Если этот параметр установлен в да, создается бессостоятельная виртуальная машина.
vmware
(added in 2.3)
Словарь значений, используемых для подключения к VMware и импорта виртуальной машины в oVirt.
Словарь может содержать следующие значения.
username - Имя пользователя для аутентификации в VMware.
password - Пароль для аутентификации в VMware.
url - URL, который необходимо передать инструменту virt-v2v для преобразования. Например, vpx://wmware_user@vcenter-host/DataCenter/Cluster/esxi-host?no_verify=1
drivers_iso - Имя ISO, содержащего драйверы, которые можно использовать во время процесса преобразования virt-v2v.
sparse - Указывает политику распределения диска для результирующей виртуальной машины. true для разряженного, false для предварительно выделенного. Значение по умолчанию — true.
storage_domain - Указывает целевой домен хранения для преобразованных дисков. Это обязательный параметр.
vnic_profile_mappings
(added in 2.5)
Преобразователь, который сопоставляет внешний профиль виртуальной сетевой карты с профилем, существующим в модуле, когда state зарегистрирован. Профиль vnic описывается следующим словарем:
source_network_name: Имя сети источника.
source_profile_name: Имя профиля, связанное с сетью источника.
target_profile_id: Идентификатор целевого профиля, подлежащего сопоставлению в модуле.
wait
True, если модуль должен ожидать, пока сущность не перейдет в нужное состояние.
watchdog
(added in 2.5)
Назначить устройство отслеживания для виртуальной машины.
Отслеживание — это словарь, который может содержать следующие значения:
model - Модель устройства отслеживания. Например: i6300esb, diag288 или null.
action - Действие отслеживания, которое должно быть выполнено при срабатывании отслеживания. Например: none, reset, poweroff, pause или dump.
xen
(added in 2.3)
Словарь значений, используемых для подключения к XEN и импорта виртуальной машины в oVirt.
Словарь может содержать следующие значения.
url - URL, который необходимо передать инструменту virt-v2v для преобразования. Например, xen+ssh://root@zen.server. Это обязательный параметр.
drivers_iso - Имя ISO, содержащего драйверы, которые можно использовать во время процесса преобразования virt-v2v.
sparse - Указывает политику распределения диска для результирующей виртуальной машины. true для разряженного, false для предварительно выделенного. Значение по умолчанию — true.
storage_domain - Указывает целевой домен хранения для преобразованных дисков. Это обязательный параметр.

Примечания

Примечание

  • Если виртуальная машина находится в состоянии НЕ ПРИСВОЕНА или НЕИЗВЕСТНО перед любой операцией, модуль завершится ошибкой. Если виртуальная машина находится в состоянии ЗАКЛЮЧЕННЫЙ_ОБРАЗ перед любой операцией, мы пытаемся подождать, пока виртуальная машина не станет ВЫКЛЮЧЕНА. Если виртуальная машина находится в состоянии СОХРАНЯЕТСЯ перед любой операцией, мы пытаемся подождать, пока виртуальная машина не станет ПРИОСТАНОВЛЕНА. Если виртуальная машина находится в состоянии ВЫКЛЮЧАЕТСЯ перед любой операцией, мы пытаемся подождать, пока виртуальная машина не станет ВКЛЮЧЕНА или ВЫКЛЮЧЕНА. Виртуальная машина может перейти в состояние ВКЛЮЧЕНА из состояния ВЫКЛЮЧАЕТСЯ, если в виртуальной машине не работает ACPI или гостевой агент, или если операция завершения работы завершилась неудачно. Когда пользователь указывает ВКЛЮЧЕНА state, мы всегда ждем, пока виртуальная машина не станет в состоянии ВКЛЮЧЕНА, если виртуальная машина ПЕРЕМЕЩАЕТСЯ, ПЕРЕЗАПУСКАЕТСЯ, ВКЛЮЧАЕТСЯ, ВОССТАНОВЛЕНИЕ_СОСТОЯНИЯ, ОЖИДАНИЕ_ЗАПУСКА. В других состояниях мы запускаем операцию запуска виртуальной машины. Когда пользователь указывает остановлена state, и если пользователь передает параметр force со значением true, мы принудительно останавливаем виртуальную машину в любом состоянии. Если пользователь не передает параметр force, мы всегда ждем, пока виртуальная машина не станет в состоянии ВКЛЮЧЕНА, если виртуальная машина ПЕРЕМЕЩАЕТСЯ, ПЕРЕЗАПУСКАЕТСЯ, ВКЛЮЧАЕТСЯ, ВОССТАНОВЛЕНИЕ_СОСТОЯНИЯ, ОЖИДАНИЕ_ЗАПУСКА. Если виртуальная машина находится в состоянии ПАУЗА или ПРИОСТАНОВЛЕНА, мы запускаем виртуальную машину. Затем мы аккуратно выключаем виртуальную машину. Когда пользователь указывает приостановлена state, мы всегда ждем, пока виртуальная машина не станет в состоянии ВКЛЮЧЕНА, если виртуальная машина ПЕРЕМЕЩАЕТСЯ, ПЕРЕЗАПУСКАЕТСЯ, ВКЛЮЧАЕТСЯ, ВОССТАНОВЛЕНИЕ_СОСТОЯНИЯ, ОЖИДАНИЕ_ЗАПУСКА. Если виртуальная машина находится в состоянии ПАУЗА или ВЫКЛЮЧЕНА, мы запускаем виртуальную машину. Затем мы приостанавливаем виртуальную машину. Когда пользователь указывает отсутствует state, мы принудительно останавливаем виртуальную машину в любом состоянии и удаляем ее.
  • Для использования этого модуля необходимо установить oVirt Python SDK. Чтобы убедиться, что он установлен с правильной версией, можно создать следующую задачу: pip: name=ovirt-engine-sdk-python version=4.2.4

Примеры

# Examples don't contain auth parameter for simplicity,
# look at ovirt_auth module to see how to reuse authentication:

- name: Creates a new Virtual Machine from template named 'rhel7_template'
  ovirt_vms:
    state: present
    name: myvm
    template: rhel7_template
    cluster: mycluster

- name: Register VM
  ovirt_vms:
    state: registered
    storage_domain: mystorage
    cluster: mycluster
    name: myvm

- name: Register VM using id
  ovirt_vms:
    state: registered
    storage_domain: mystorage
    cluster: mycluster
    id: 1111-1111-1111-1111

- name: Register VM, allowing partial import
  ovirt_vms:
    state: registered
    storage_domain: mystorage
    allow_partial_import: "True"
    cluster: mycluster
    id: 1111-1111-1111-1111

- name: Register VM with vnic profile mappings and reassign bad macs
  ovirt_vms:
    state: registered
    storage_domain: mystorage
    cluster: mycluster
    id: 1111-1111-1111-1111
    vnic_profile_mappings:
    - source_network_name: mynetwork
      source_profile_name: mynetwork
      target_profile_id: 3333-3333-3333-3333
    - source_network_name: mynetwork2
      source_profile_name: mynetwork2
      target_profile_id: 4444-4444-4444-4444
    reassign_bad_macs: "True"

- name: Register VM with mappings
  ovirt_vms:
    state: registered
    storage_domain: mystorage
    cluster: mycluster
    id: 1111-1111-1111-1111
    role_mappings:
      - source_name: Role_A
        dest_name: Role_B
    domain_mappings:
      - source_name: Domain_A
        dest_name: Domain_B
    lun_mappings:
      - source_storage_type: iscsi
        source_logical_unit_id: 1IET_000d0001
        source_logical_unit_port: 3260
        source_logical_unit_portal: 1
        source_logical_unit_address: 10.34.63.203
        source_logical_unit_target: iqn.2016-08-09.brq.str-01:omachace
        dest_storage_type: iscsi
        dest_logical_unit_id: 1IET_000d0002
        dest_logical_unit_port: 3260
        dest_logical_unit_portal: 1
        dest_logical_unit_address: 10.34.63.204
        dest_logical_unit_target: iqn.2016-08-09.brq.str-02:omachace
    affinity_group_mappings:
      - source_name: Affinity_A
        dest_name: Affinity_B
    affinity_label_mappings:
      - source_name: Label_A
        dest_name: Label_B
    cluster_mappings:
      - source_name: cluster_A
        dest_name: cluster_B

- name: Creates a stateless VM which will always use latest template version
  ovirt_vms:
    name: myvm
    template: rhel7
    cluster: mycluster
    use_latest_template_version: true

# Creates a new server rhel7 Virtual Machine from Blank template
# on brq01 cluster with 2GiB memory and 2 vcpu cores/sockets
# and attach bootable disk with name rhel7_disk and attach virtio NIC
- ovirt_vms:
    state: present
    cluster: brq01
    name: myvm
    memory: 2GiB
    cpu_cores: 2
    cpu_sockets: 2
    cpu_shares: 1024
    type: server
    operating_system: rhel_7x64
    disks:
      - name: rhel7_disk
        bootable: True
    nics:
      - name: nic1

- name: Run VM with cloud init
  ovirt_vms:
    name: rhel7
    template: rhel7
    cluster: Default
    memory: 1GiB
    high_availability: true
    high_availability_priority: 50  # Available from Ansible 2.5
    cloud_init:
      nic_boot_protocol: static
      nic_ip_address: 10.34.60.86
      nic_netmask: 255.255.252.0
      nic_gateway: 10.34.63.254
      nic_name: eth1
      nic_on_boot: true
      host_name: example.com
      custom_script: |
        write_files:
         - content: |
             Hello, world!
           path: /tmp/greeting.txt
           permissions: '0644'
      user_name: root
      root_password: super_password

- name: Run VM with cloud init, with multiple network interfaces
  ovirt_vms:
    name: rhel7_4
    template: rhel7
    cluster: mycluster
    cloud_init_nics:
    - nic_name: eth0
      nic_boot_protocol: dhcp
      nic_on_boot: true
    - nic_name: eth1
      nic_boot_protocol: static
      nic_ip_address: 10.34.60.86
      nic_netmask: 255.255.252.0
      nic_gateway: 10.34.63.254
      nic_on_boot: true

- name: Run VM with sysprep
  ovirt_vms:
    name: windows2012R2_AD
    template: windows2012R2
    cluster: Default
    memory: 3GiB
    high_availability: true
    sysprep:
      host_name: windowsad.example.com
      user_name: Administrator
      root_password: SuperPassword123

- name: Migrate/Run VM to/on host named 'host1'
  ovirt_vms:
    state: running
    name: myvm
    host: host1

- name: Change VMs CD
  ovirt_vms:
    name: myvm
    cd_iso: drivers.iso

- name: Eject VMs CD
  ovirt_vms:
    name: myvm
    cd_iso: ''

- name: Boot VM from CD
  ovirt_vms:
    name: myvm
    cd_iso: centos7_x64.iso
    boot_devices:
        - cdrom

- name: Stop vm
  ovirt_vms:
    state: stopped
    name: myvm

- name: Upgrade memory to already created VM
  ovirt_vms:
    name: myvm
    memory: 4GiB

- name: Hot plug memory to already created and running VM (VM won't be restarted)
  ovirt_vms:
    name: myvm
    memory: 4GiB

# Create/update a VM to run with two vNUMA nodes and pin them to physical NUMA nodes as follows:
# vnuma index 0-> numa index 0, vnuma index 1-> numa index 1
- name: Create a VM to run with two vNUMA nodes
  ovirt_vms:
    name: myvm
    cluster: mycluster
    numa_tune_mode: "interleave"
    numa_nodes:
    - index: 0
      cores: [0]
      memory: 20
      numa_node_pins: [0]
    - index: 1
      cores: [1]
      memory: 30
      numa_node_pins: [1]

- name: Update an existing VM to run without previously created vNUMA nodes (i.e. remove all vNUMA nodes+NUMA pinning setting)
  ovirt_vms:
    name: myvm
    cluster: mycluster
    state: "present"
    numa_tune_mode: "interleave"
    numa_nodes:
    - index: -1

# When change on the VM needs restart of the VM, use next_run state,
# The VM will be updated and rebooted if there are any changes.
# If present state would be used, VM won't be restarted.
- ovirt_vms:
    state: next_run
    name: myvm
    boot_devices:
      - network

- name: Import virtual machine from VMware
  ovirt_vms:
    state: stopped
    cluster: mycluster
    name: vmware_win10
    timeout: 1800
    poll_interval: 30
    vmware:
      url: vpx://user@1.2.3.4/Folder1/Cluster1/2.3.4.5?no_verify=1
      name: windows10
      storage_domain: mynfs
      username: user
      password: password

- name: Create vm from template and create all disks on specific storage domain
  ovirt_vms:
    name: vm_test
    cluster: mycluster
    template: mytemplate
    storage_domain: mynfs
    nics:
    - name: nic1

- name: Remove VM, if VM is running it will be stopped
  ovirt_vms:
    state: absent
    name: myvm

# Defining a specific quota for a VM:
# Since Ansible 2.5
- ovirt_quotas_facts:
    data_center: Default
    name: myquota
- ovirt_vms:
    name: myvm
    sso: False
    boot_menu: True
    usb_support: True
    serial_console: True
    quota_id: "{{ ovirt_quotas[0]['id'] }}"

- name: Create a VM that has the console configured for both Spice and VNC
  ovirt_vms:
    name: myvm
    template: mytemplate
    cluster: mycluster
    graphical_console:
      protocol:
        - spice
        - vnc

Значения возврата

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

Ключ Возвращаемое значение Описание
id
str
При успехе, если виртуальная машина найдена.
Идентификатор виртуальной машины, которая управляется

Пример:
7de90f31-222c-436c-a1ca-7e655bd5b60c
vm
dict
При успехе, если виртуальная машина найдена.
Словарь всех атрибутов виртуальной машины. Атрибуты виртуальной машины можно найти на вашем экземпляре oVirt/RHV по следующему URL-адресу: http://ovirt.github.io/ovirt-engine-api-model/master/#types/vm.



Статус

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

Техническое обслуживание

Этот модуль помечен как сообщество, что означает, что он поддерживается сообществом Ansible. См. Поддержка и обслуживание модулей для получения дополнительной информации.

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

Автор

  • Ondra Machacek (@machacekondra)

Подсказка

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

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.6/modules/ovirt_vms_module.html

Spec-Zone.ru

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