Spec-Zone.ru › Ansible 2.8

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

Новая версия с 2.2.

  • Обзор
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения
  • Статус

Обзор

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

Требования

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

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

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
affinity_group_mappings
-
добавлен в 2.5
Отображение, сопоставляющее имя группы аффинити между OVF виртуальной машины и целевой группой аффинити, к которой должна быть зарегистрирована эта виртуальная машина. Актуально при регистрации state.
affinity_label_mappings
-
добавлен в 2.5
Отображение, сопоставляющее имя метки аффинити между OVF виртуальной машины и целевой меткой, к которой должна быть зарегистрирована эта виртуальная машина. Актуально при регистрации state.
allow_partial_import
boolean
добавлен в 2.4
    Варианты:
  • нет
  • да
Логическое значение, указывающее, разрешить ли частичную регистрацию виртуальной машины при регистрации state.
auth
словарь / обязательно
Словарь со значениями, необходимыми для создания подключения HTTP/HTTPS к oVirt:
ca_file
строка
Файл PEM, содержащий доверенные сертификаты CA.
Сертификат, представленный сервером, будет проверен с использованием этих сертификатов CA.
Если параметр ca_file не задан, используется системное хранилище сертификатов CA.
Значение по умолчанию задаётся переменной среды OVIRT_CAFILE.
headers
словарь
Словарь HTTP-заголовков, которые должны быть добавлены к каждому API-запросу.
hostname
строка
Строка, содержащая имя хоста сервера, обычно что-то вроде `server.example.com`.
Значение по умолчанию задаётся переменной среды OVIRT_HOSTNAME.
Требуется либо url, либо hostname.
insecure
boolean
    Варианты:
  • нет
  • да
Флаг boolean, указывающий, следует ли проверять сертификат TLS сервера и имя хоста.
kerberos
boolean
    Варианты:
  • нет
  • да
Флаг boolean, указывающий, следует ли использовать аутентификацию Kerberos вместо стандартной аутентификации.
password
строка / обязательно
Пароль пользователя.
Значение по умолчанию задаётся переменной среды OVIRT_PASSWORD.
token
строка
Токен, который будет использоваться вместо входа с именем пользователя/паролем.
Значение по умолчанию задаётся переменной среды OVIRT_TOKEN.
url
строка
Строка, содержащая URL API сервера, обычно что-то вроде `https://server.example.com/ovirt-engine/api`.
Значение по умолчанию задаётся переменной среды OVIRT_URL.
Требуется либо url, либо hostname.
username
строка / обязательно
Имя пользователя, например admin@internal.
Значение по умолчанию задаётся переменной среды OVIRT_USERNAME.
ballooning_enabled
boolean
добавлен в 2.5
    Варианты:
  • нет
  • да
Если истина, использовать раздувание памяти.
Раздувание памяти — это устройство гостевой системы, которое может использоваться для динамического перераспределения/возврата памяти хоста в зависимости от потребностей виртуальной машины. Это позволяет создавать состояния перераспределения памяти.
boot_devices
-
    Варианты:
  • cdrom
  • hd
  • сетевой
Список устройств загрузки, которые следует использовать для загрузки. Например, [ cdrom, hd ].
Значение по умолчанию задаётся движком oVirt/RHV.
boot_menu
boolean
добавлен в 2.5
    Варианты:
  • нет
  • да
Истина активирует меню для выбора устройства загрузки, ложь — отключает его. По умолчанию выбирается движком oVirt/RHV.
cd_iso
-
ISO-файл из домена хранилища ISO, который следует присоединить к виртуальной машине.
Если передать пустую строку, CD будет извлечен из виртуальной машины.
Если используется с state запущен или присутствует, и виртуальная машина запущена, CD будет присоединен к виртуальной машине.
Если используется с state запущен или присутствует, и виртуальная машина выключена, CD будет постоянно присоединён к виртуальной машине.
clone
boolean
    Варианты:
  • нет ←
  • да
Если да, то диски созданной виртуальной машины будут клонированы и независимы от шаблона.
Этот параметр используется только тогда, когда state запущен или присутствует, а виртуальная машина не существовала ранее.
clone_permissions
boolean
    Варианты:
  • нет ←
  • да
Если да, то разрешения шаблона (только прямые, а не наследуемые) будут скопированы в созданную виртуальную машину.
Этот параметр используется только тогда, когда state запущен или присутствует, а виртуальная машина не существовала ранее.
cloud_init
-
Словарь со значениями для инициализации виртуальной машины Unix-подобной системы с помощью cloud init.
authorized_ssh_keys
-
Используйте эти ключи SSH для входа в виртуальную машину.
custom_script
-
Скрипт cloud-init, который будет выполнен на виртуальной машине при развертывании.
Он добавляется в конец скрипта cloud-init, сгенерированного другими параметрами.
dns_search
-
Домены поиска DNS, которые должны быть настроены на виртуальной машине.
dns_servers
-
Серверы DNS, которые должны быть настроены на виртуальной машине.
host_name
-
Имя хоста, которое должно быть установлено для виртуальной машины при развертывании.
nic_boot_protocol
-
    Варианты:
  • нет
  • dhcp
  • статический
Установить протокол загрузки сетевого интерфейса виртуальной машины.
nic_gateway
-
Если протокол загрузки статический, установите этот шлюз для сетевого интерфейса виртуальной машины.
nic_ip_address
-
Если протокол загрузки статический, установите этот IP-адрес для сетевого интерфейса виртуальной машины.
nic_name
-
Установить имя сетевого интерфейса виртуальной машины.
nic_netmask
-
Если протокол загрузки статический, установите эту маску сети для сетевого интерфейса виртуальной машины.
nic_on_boot
boolean
    Варианты:
  • нет
  • да
Если истина, сетевой интерфейс будет настроен на запуск при загрузке.
END_OF_DOCUMENT_MARKER
regenerate_ssh_keys
boolean
    Варианты:
  • нет
  • да
Если истина, ключи SSH будут перегенерированы на виртуальной машине.
root_password
-
Пароль, который будет установлен для пользователя, указанного параметром user_name.
timezone
-
Часовой пояс, который будет установлен для виртуальной машины при развертывании.
user_name
-
Имя пользователя, которое будет использоваться для установки пароля на виртуальную машину при развертывании.
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_gateway
-
Если протокол загрузки — статический, установите этот шлюз для сетевого интерфейса виртуальной машины.
nic_ip_address
-
Если протокол загрузки — статический, установите этот IP-адрес для сетевого интерфейса виртуальной машины.
nic_name
-
Установите имя сетевого интерфейса виртуальной машины.
nic_netmask
-
Если протокол загрузки — статический, установите эту маску сети для сетевого интерфейса виртуальной машины.
nic_on_boot
boolean
    Варианты:
  • нет
  • да
Если истина, сетевой интерфейс будет настроен на запуск при загрузке.
cloud_init_persist
boolean
добавлено в 2.5
    Варианты:
  • нет ←
  • да
Если да, параметры cloud_init или sysprep будут сохранены для виртуальной машины, и виртуальная машина не будет запускаться как одноразовая.

псевдонимы: sysprep_persist
cluster
-
Имя кластера, в котором должна быть создана виртуальная машина.
Требуется при создании ВМ.
cluster_mappings
-
добавлено в 2.5
Карта, которая отображает имя кластера между OVF виртуальной машины и целевым кластером, к которому эта виртуальная машина должна быть зарегистрирована, актуально когда state зарегистрирована. Карта отображения кластера описана следующим словарем:
dest_name
-
Имя целевого кластера.
source_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
-
добавлено в 2.5
Количество сокетов виртуальных ядер процессора виртуальной машины.
Значение по умолчанию устанавливается движком oVirt/RHV.
custom_compatibility_version
-
добавлено в 2.7
Разрешает настроить виртуальную машину на собственную версию совместимости. Если 'custom_compatibility_version' установлено, это переопределяет версию совместимости кластера для данной виртуальной машины.
custom_properties
-
добавлено в 2.5
Свойства, отправленные в VDSM для настройки различных хуков.
Настраиваемые свойства — это список словарей, которые могут иметь следующие значения:
name
-
Имя настраиваемого свойства. Например: hugepages, vhost, sap_agent и т.д.
regexp
-
Регулярное выражение для настройки настраиваемого свойства.
value
-
Значение для настройки настраиваемого свойства.
delete_protected
boolean
    Варианты:
  • нет
  • да
Если да, виртуальная машина будет защищена от удаления.
Если нет, виртуальная машина не будет защищена от удаления.
Если значение не передано, значение по умолчанию устанавливается движком oVirt/RHV.
description
-
добавлено в 2.3
Описание виртуальной машины.
disk_format
-
добавлено в 2.4
    Варианты:
  • cow ←
  • raw
Укажите формат диска.
Если используется формат cow, диск будет создан как разреженный, таким образом, место будет выделено для тома по мере необходимости, также известное как тонкое выделение.
Если используется формат raw, хранилище диска будет выделено сразу, также известное как предварительное выделение.
Обратите внимание, что этот параметр не идемпотентен, так как в настоящее время невозможно изменить формат диска через API.
Этот параметр рассматривается только при предоставлении template и storage domain.
disks
-
Список дисков, которые должны быть подключены к виртуальной машине. Диск описан в следующем словаре.
активировать
boolean
    Варианты:
  • нет
  • да
Истина, если диск должен быть активирован, по умолчанию активирован.
ПРИМЕЧАНИЕ - Этот параметр используется только тогда, когда state запущен или находится и может только подключать диски. Для более глубокой настройки дисков ВМ используйте модуль ovirt_disks вместо этого.
bootable
boolean
    Варианты:
  • нет
  • да
Истина, если диск должен быть загрузочным, по умолчанию не загрузочный.
id
-
Идентификатор диска. Требуется либо name, либо id.
интерфейс
-
    Варианты:
  • virtio ←
  • IDE
Интерфейс диска.
name
-
Имя диска. Требуется либо name, либо id.
domain_mappings
-
добавлено в 2.5
Карта, которая сопоставляет имя домена aaa между виртуальной машиной OVF и целевым доменем aaa, к которому эта ВМ должна быть зарегистрирована. Актуально, когда state зарегистрирован. Описание сопоставления доменов aaa приведено ниже:
dest_name
-
Имя целевого домена aaa.
source_name
-
Имя исходного домена aaa.
исключительный
boolean
добавлено в 2.8
    Варианты:
  • нет
  • да
При экспорте state, этот параметр указывает, следует ли перезаписывать существующую ВМ с тем же именем.
export_domain
-
добавлено в 2.8
При экспорте state, этот параметр указывает имя домена экспорта хранилища.
export_ova
-
добавлено в 2.8
Словарь значений, используемых для экспорта ВМ в формате OVA.
каталог
-
Имя каталога, в который нужно экспортировать OVA.
имя_файла
-
Имя экспортированного файла OVA.
хост
-
Имя целевого хоста, в который нужно экспортировать OVA.
fetch_nested
boolean
добавлено в 2.3
    Варианты:
  • нет
  • да
Если Истина, модуль получит дополнительные данные из API.
Будут получены идентификаторы дисков ВМ, снимков и т.д. Пользователь может настроить получение других атрибутов вложенных сущностей, указав nested_attributes.
force
boolean
    Варианты:
  • нет ←
  • да
Обратитесь к Сводке для более подробного описания параметра force, его поведение может отличаться в разных ситуациях.
force_migrate
boolean
добавлено в 2.8
    Варианты:
  • нет
  • да
Если истина, ВМ будет мигрировать, когда placement_policy=user-migratable, но не когда placement_policy=pinned.
graphical_console
-
добавлено в 2.5
Назначить графический консоль виртуальной машине.
headless_mode
boolean
    Варианты:
  • нет
  • да
Если истина, отключить графический консоль для этой виртуальной машины.
protocol
-
Графический протокол, список spice, vnc или оба.
high_availability
boolean
    Варианты:
  • нет
  • да
Если да, виртуальная машина будет настроена как высокодоступная.
Если нет, виртуальная машина не будет настроена как высокодоступная.
Если значение не передано, используется значение по умолчанию, заданное движком oVirt/RHV.
high_availability_priority
-
добавлено в 2.5
Указывает приоритет виртуальной машины в очередях запуска и миграции. Виртуальные машины с более высоким приоритетом будут запускаться и мигрироваться раньше виртуальных машин с более низким приоритетом. Значение — целое число от 0 до 100. Чем выше значение, тем выше приоритет.
Если значение не передано, используется значение по умолчанию, заданное движком oVirt/RHV.
хост
-
Укажите хост, на котором должна выполняться виртуальная машина. По умолчанию хост выбирается планировщиком ядра.
Этот параметр используется только тогда, когда state запущен или находится.
host_devices
-
добавлено в 2.7
Виртуализация I/O с единым корнем — технология, которая позволяет одному устройству экспонировать несколько конечных точек, которые могут быть переданы ВМ.
host_devices — список, содержащий словарь с именем и состоянием устройства.
id
-
Идентификатор виртуальной машины, которую нужно управлять.
initrd_path
-
добавлено в 2.3
Путь к начальному образам оперативной памяти, который будет использоваться с ядром, указанным параметром kernel_path.
Образ образов оперативной памяти должен храниться либо в домене ISO, либо в хранилище хоста.
Используется с oVirt 4.3 и ниже; удалено в oVirt 4.4.
instance_type
-
добавлено в 2.3
Имя конфигурации аппаратного обеспечения виртуальной машины.
По умолчанию тип экземпляра не используется.
io_threads
-
добавлено в 2.5
Количество потоков I/О, используемых виртуальной машиной. 0 означает отключение потоков I/О.
kernel_params
-
добавлено в 2.3
Параметры командной строки ядра (форматированы как строка), которые будут использоваться с ядром, указанным параметром kernel_path.
Используется с oVirt 4.3 и ниже; удалено в oVirt 4.4.
kernel_params_persist
boolean
добавлено в 2.8
    Варианты:
  • нет
  • да
Если истина, kernel_params, initrd_path и kernel_path будут сохранены в конфигурации виртуальной машины. Если ложь, они будут использованы только один раз.
Используется с oVirt 4.3 и ниже; удалено в oVirt 4.4.
kernel_path
-
добавлено в 2.3
Путь к изображению ядра, используемого для загрузки виртуальной машины.
Изображение ядра должно храниться либо в домене ISO, либо в хранилище хоста.
Используется с oVirt 4.3 и ниже; удалено в oVirt 4.4.
kvm
-
added in 2.3
Словарь значений, используемых для подключения к kvm и импорта виртуальной машины в oVirt.
drivers_iso
-
Имя ISO, содержащего драйверы, которые могут быть использованы во время процесса преобразования virt-v2v.
name
-
Имя виртуальной машины KVM.
password
-
Пароль для аутентификации в KVM.
sparse
boolean
    Choices:
  • no
  • да ←
Определяет политику выделения диска для полученной виртуальной машины. true для разрежённого, false для предварительно выделенного.
storage_domain
-
Указывает целевой домен хранения для преобразованных дисков. Этот параметр обязателен.
url
-
URL, который будет передан инструменту virt-v2v для преобразования.
Например, qemu:///system. Этот параметр обязателен.
username
-
Имя пользователя для аутентификации в KVM.
lease
-
added in 2.4
Имя домена хранения, на котором находится аренда этой виртуальной машины. Передайте пустую строку, чтобы удалить аренду.
ПРИМЕЧАНИЕ. Поддерживается с oVirt 4.1.
lun_mappings
-
added in 2.5
Карта, которая сопоставляет 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).
Значение по умолчанию устанавливается движком.
migrate
boolean
added in 2.8
    Choices:
  • no
  • yes
Если true, VM будет мигрировать на любой доступный хост.
name
-
Имя виртуальной машины для управления.
Если VM не существует, name является обязательным. В противном случае можно использовать id или name.
nested_attributes
list
added in 2.3
Указывает список атрибутов, которые должны быть извлечены из API.
Этот параметр применим только когда fetch_nested равно true.
next_run
boolean
added in 2.8
    Choices:
  • no
  • yes
Если true, обновление не будет применено к виртуальной машине немедленно и будет применено только при перезапуске виртуальной машины.
ПРИМЕЧАНИЕ. Если есть несколько изменений конфигурации следующего запуска на виртуальной машине, первое изменение может быть отменено, если этот параметр не передан.
nics
-
Список сетевых адаптеров, которые должны быть подключены к виртуальной машине. Сетевой адаптер описывается следующим словарем.
interface
-
    Choices:
  • virtio ←
  • e1000
  • rtl8139
Тип сетевого адаптера.
mac_address
-
Настраиваемый MAC-адрес сетевого адаптера, по умолчанию он берется из пула MAC-адресов.
ПРИМЕЧАНИЕ. Этот параметр используется только при state установлен в состояние запуск или наличие и может создавать только сетевые адаптеры. Для более глубокого управления сетевыми адаптерами виртуальной машины используйте модуль ovirt_nics вместо этого.
name
-
Имя сетевого адаптера.
profile_name
-
Имя профиля, к которому должен быть подключен сетевой адаптер.
numa_nodes
-
added in 2.6
Список узлов vNUMA для установки для этой виртуальной машины и привязки их к физическому узлу NUMA назначенного хоста.
Каждый узел vNUMA описывается следующим словарем:
cores
-
Список индексов ядер процессора VM, которые должны быть включены в этот узел NUMA (обязательно).
index
-
Индекс этого узла NUMA (обязательно).
memory
-
Размер памяти узла NUMA в MiB (обязательно).
numa_node_pins
-
Список индексов физических узлов NUMA для привязки этого виртуального узла NUMA к ним.
numa_tune_mode
-
added in 2.6
    Choices:
  • interleave
  • preferred
  • strict
Установите способ применения выделения памяти для узлов NUMA этой виртуальной машины (актуально, если для этой виртуальной машины настроены узлы NUMA).
Может быть одним из следующих: interleave, preferred или strict.
Если значение не передано, значение по умолчанию устанавливается движком oVirt/RHV.
operating_system
-
Операционная система виртуальной машины.
Значение по умолчанию устанавливается движком oVirt/RHV.
Возможные значения: 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
placement_policy
-
added in 2.5
Настройка политики размещения виртуальной машины.
Если значение не передано, значение по умолчанию устанавливается движком oVirt/RHV.
Политика размещения может иметь одно из следующих значений:
мигрируемый
-
Разрешить ручную и автоматическую миграцию.
прикреплённый
-
Не разрешать миграцию.
пользовательский_мигрируемый
-
Разрешить только ручную миграцию.
интервал_опроса
целое
По умолчанию:
3
Количество секунд, которое модуль ожидает, прежде чем отправить другой запрос опроса состояния сущности.
id_квоты
-
добавлен в 2.5
Идентификатор квоты виртуальной машины, который следует использовать для диска. По умолчанию квота выбирается движком oVirt/RHV.
переназначить_плохие_mac_адреса
булево
добавлен в 2.5
    Варианты:
  • нет
  • да
Булево значение, указывающее, следует ли переназначать плохие MAC-адреса при регистрации state.
устройство_генератора_псевдослучайных_чисел
-
добавлен в 2.5
Генератор псевдослучайных чисел (RNG). Вы можете выбрать одно из следующих устройств: urandom, random или hwrng.
Для выбора hwrng вы должны сначала включить его в кластере.
/dev/urandom используется для версий кластера >= 4.1, а /dev/random - для версий кластера <= 4.0
отображение_ролей
-
добавлен в 2.5
Карта, которая сопоставляет имя роли между OVF виртуальной машины и целевой ролью, к которой эта виртуальная машина должна быть зарегистрирована. Актуально при регистрации state. Отображение роли описывается следующим словарем:
имя_назначения
-
Имя целевой роли.
имя_источника
-
Имя исходной роли.
серийный_консоль
булево
добавлен в 2.5
    Варианты:
  • нет
  • да
Истина включить виртуальную консоль VirtIO, Ложь - отключить её. По умолчанию выбирается движком oVirt/RHV.
политика_последовательности
-
добавлен в 2.3
    Варианты:
  • vm
  • хост
  • пользовательский
Укажите политику номера последовательности для виртуальной машины.
Поддерживаются следующие варианты.
vm - Устанавливает UUID виртуальной машины в качестве её серийного номера.
host - Устанавливает UUID хоста в качестве серийного номера виртуальной машины.
custom - Позволяет указать пользовательский серийный номер в serial_policy_value.
значение_политики_последовательности
-
добавлен в 2.3
Позволяет указать пользовательский серийный номер.
Этот параметр используется только когда serial_policy равен пользовательский.
smartcard_включён
булево
добавлен в 2.5
    Варианты:
  • нет
  • да
Если истина, использовать аутентификацию смарт-карты.
звуковая_карта_включена
булево
добавлен в 2.5
    Варианты:
  • нет
  • да
Если истина, звуковая карта добавляется к виртуальной машине.
sso
булево
добавлен в 2.5
    Варианты:
  • нет
  • да
Истина включить Single Sign On агентом гостя, Ложь - отключить его. По умолчанию выбирается движком oVirt/RHV.
состояние
-
    Варианты:
  • отсутствует
  • следующий_запуск
  • наличие ←
  • зарегистрирован
  • запущен
  • остановлен
  • приостановлен
  • экспортирован
Виртуальная машина должна работать/быть остановлена/существовать/отсутствовать/быть приостановленной/следующий_запуск/зарегистрирована/экспортирована. Когда state равно зарегистрирован, и имя незарегистрированной виртуальной машины принадлежит уже зарегистрированной в движке виртуальной машине в том же ЦОД, то регистрация незарегистрированного шаблона не выполняется.
состояние наличие создаёт/обновляет виртуальную машину и не изменяет её состояние, если она уже существует.
состояние запущен создаёт/обновляет виртуальную машину и запускает её.
состояние следующий_запуск обновляет виртуальную машину, и если у виртуальной машины есть конфигурация следующего запуска, она будет перезагружена.
Пожалуйста, см. примечания для более подробного описания состояний.
состояние экспортирован экспортирует виртуальную машину в домен экспорта или в формате OVA.
зарегистрирован поддерживается с версии 2.4.
бессостояние
булево
    Варианты:
  • нет
  • да
Если да, виртуальная машина будет установлена в качестве бессостоятельной.
Если нет, виртуальная машина будет снята с бессостоятельного режима.
Если значение не передано, значение по умолчанию устанавливается движком oVirt/RHV.
домен_хранилища
-
добавлен в 2.4
Имя домена хранилища, в котором должны быть созданы все диски шаблона.
Этот параметр учитывается только при указании template.
ВАЖНО - Этот параметр не является идемпотентным. Если виртуальная машина существует, а вы указываете другой домен хранилища, диск не будет перемещён.
sysprep
-
Словарь со значениями для инициализации виртуальной машины Windows с помощью sysprep.
домен_организации_active_directory
-
Организационная единица Active Directory, которая будет использоваться для входа пользователя.
домен
-
Домен, который должен быть установлен для виртуальной машины Windows.
имя_хоста
-
Имя хоста, которое должно быть установлено для виртуальной машины при развертывании.
локальный_язык_ввода
-
Локализация ввода виртуальной машины Windows.
имя_организации
-
Имя организации, которое должно быть установлено для виртуальной машины Windows.
пароль_администратора
-
Пароль, который должен быть установлен для пользователя в виртуальной машине Windows.
локальный_язык_системы
-
Локализация системы виртуальной машины Windows.
часовой_пояс
-
Часовой пояс, который должен быть установлен для виртуальной машины Windows.
язык_интерфейса
-
Язык интерфейса виртуальной машины Windows.
имя_пользователя
-
Имя пользователя, которое будет использоваться для установки пароля в виртуальной машине Windows.
ключ_лицензии_windows
-
Ключ лицензии, который должен быть установлен для виртуальной машины Windows.
шаблон
-
Имя шаблона, которое следует использовать для создания виртуальной машины.
Требуется при создании виртуальной машины.
Если шаблон не указан и виртуальная машина не существует, виртуальная машина будет создана из шаблона Пустой.
template_version
-
added in 2.3
Номер версии шаблона, который будет использоваться для ВМ.
По умолчанию используется последняя доступная версия шаблона.
ticket
boolean
added in 2.7
    Варианты:
  • no
  • yes
Если true, дополнительно возвращает remote_vv_file внутри словаря vm, который содержит совместимое содержимое для приложения remote-viewer. Работает только если state запущен.
timeout
integer
По умолчанию:
180
Количество времени в секундах, которое модуль должен ждать, пока виртуальная машина не перейдет в желаемое состояние.
timezone
-
added in 2.3
Устанавливает смещение часового пояса гостевого аппаратного таймера.
Например Etc/GMT
type
-
    Варианты:
  • desktop
  • server
  • high_performance
Тип виртуальной машины.
Значение по умолчанию устанавливается движком oVirt/RHV.
high_performance поддерживается с Ansible 2.5 и oVirt/RHV 4.2.
usb_support
boolean
added in 2.5
    Варианты:
  • no
  • yes
True включает поддержку USB, False — отключает её. По умолчанию выбирается движком oVirt/RHV.
use_latest_template_version
boolean
added in 2.3
    Варианты:
  • no
  • yes
Указывает, должна ли использоваться последняя версия шаблона при запуске бессостоятельной ВМ.
Если этот параметр установлен в yes, создаётся бессостоятельная ВМ.
vmware
-
added in 2.3
Словарь значений, которые будут использоваться для подключения к VMware и импорта виртуальной машины в oVirt.
drivers_iso
-
Имя ISO с драйверами, которые можно использовать во время процесса преобразования virt-v2v.
password
-
Пароль для аутентификации на VMware.
sparse
boolean
    Варианты:
  • no
  • yes ←
Указывает политику выделения диска для полученной виртуальной машины. true для разрежённого, false для предварительно выделенного.
storage_domain
-
Указывает целевой домен хранения для преобразованных дисков. Это обязательный параметр.
url
-
URL, который должен быть передан инструменту virt-v2v для преобразования.
Например vpx://wmware_user@vcenter-host/DataCenter/Cluster/esxi-host?no_verify=1
username
-
Имя пользователя для аутентификации на VMware.
vnic_profile_mappings
-
added in 2.5
Карта, которая сопоставляет внешний профиль виртуальной сетевой карты с профилем, который существует в движке при регистрации state. Профиль vnic_profile описывается следующим словарем:
source_network_name
-
Имя сети источника.
source_profile_name
-
Имя профиля, связанного с исходной сетью.
target_profile_id
-
Идентификатор целевого профиля для сопоставления в движке.
wait
boolean
    Варианты:
  • no
  • yes ←
yes указывает, нужно ли модулю ждать, пока сущность перейдет в нужное состояние.
watchdog
-
added in 2.5
Назначает устройство сторожевого таймера для виртуальной машины.
Сторожевой таймер — это словарь, который может содержать следующие значения:
action
-
Действие сторожевого таймера, которое должно быть выполнено при срабатывании сторожевого таймера. Например: none, reset, poweroff, pause или dump.
model
-
Модель устройства сторожевого таймера. Например: i6300esb, diag288 или null.
xen
-
added in 2.3
Словарь значений, которые будут использоваться для подключения к XEN и импорта виртуальной машины в oVirt.
drivers_iso
-
Имя ISO с драйверами, которые можно использовать во время процесса преобразования virt-v2v.
sparse
boolean
    Варианты:
  • no
  • yes ←
Указывает политику выделения диска для полученной виртуальной машины. true для разрежённого, false для предварительно выделенного.
storage_domain
-
Указывает целевой домен хранения для преобразованных дисков. Это обязательный параметр.
url
-
URL, который должен быть передан инструменту virt-v2v для преобразования.
Например xen+ssh://root@zen.server. Это обязательный параметр.

Примечания

Примечание

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

Примеры

# 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_vm:
    state: present
    name: myvm
    template: rhel7_template
    cluster: mycluster

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

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

- name: Register VM, allowing partial import
  ovirt_vm:
    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_vm:
    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_vm:
    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_vm:
    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_vm:
    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

# Change VM Name
- ovirt_vm:
    id: 00000000-0000-0000-0000-000000000000
    name: "new_vm_name"

- name: Run VM with cloud init
  ovirt_vm:
    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_vm:
    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_vm:
    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_vm:
    state: running
    name: myvm
    host: host1

- name: Migrate VM to any available host
  ovirt_vm:
    state: running
    name: myvm
    migrate: true

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

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

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

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

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

- name: Hot plug memory to already created and running VM (VM won't be restarted)
  ovirt_vm:
    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_vm:
    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_vm:
    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_vm:
    state: next_run
    name: myvm
    boot_devices:
      - network

- name: Import virtual machine from VMware
  ovirt_vm:
    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_vm:
    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_vm:
    state: absent
    name: myvm

# Defining a specific quota for a VM:
# Since Ansible 2.5
- ovirt_quotas_facts:
    data_center: Default
    name: myquota
- ovirt_vm:
    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_vm:
    name: myvm
    template: mytemplate
    cluster: mycluster
    graphical_console:
      protocol:
        - spice
        - vnc

# Execute remote viewer to VM
- block:
  - name: Create a ticket for console for a running VM
    ovirt_vms:
      name: myvm
      ticket: true
      state: running
    register: myvm

  - name: Save ticket to file
    copy:
      content: "{{ myvm.vm.remote_vv_file }}"
      dest: ~/vvfile.vv

  - name: Run remote viewer with file
    command: remote-viewer ~/vvfile.vv

# Default value of host_device state is present
- name: Attach host devices to virtual machine
  ovirt_vm:
    name: myvm
    host: myhost
    placement_policy: pinned
    host_devices:
      - name: pci_0000_00_06_0
      - name: pci_0000_00_07_0
        state: absent
      - name: pci_0000_00_08_0
        state: present

- name: Export the VM as OVA
  ovirt_vm:
    name: myvm
    state: exported
    cluster: mycluster
    export_ova:
        host: myhost
        filename: myvm.ova
        directory: /tmp/

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

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

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

Пример:
7de90f31-222c-436c-a1ca-7e655bd5b60c
vm
словарь
При успешном поиске ВМ.
Словарь всех атрибутов ВМ. Атрибуты ВМ можно найти на вашем экземпляре oVirt/RHV по следующему URL: http://ovirt.github.io/ovirt-engine-api-model/master/#types/vm. Дополнительно, если пользователь передал ticket=true, этот модуль также вернёт параметр remote_vv_file в словаре 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.8/modules/ovirt_vm_module.html

Spec-Zone.ru

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