Модуль ovirt.ovirt.ovirt_vm — модуль для управления виртуальными машинами в oVirt/RHV
Примечание
Этот модуль входит в коллекцию ovirt.ovirt (версия 3.2.2).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Чтобы установить её, используйте: ansible-galaxy collection install ovirt.ovirt. Для использования этого модуля необходимы дополнительные требования. Подробнее см. в разделе Требования.
Чтобы использовать модуль в плейбуке, укажите: ovirt.ovirt.ovirt_vm.
Добавлено в ovirt.ovirt 1.0.0
Краткое описание
- Этот модуль управляет полным жизненным циклом виртуальной машины (VM) в oVirt/RHV.
- Поскольку в oVirt/RHV виртуальная машина может находиться во множестве состояний, см. примечания, чтобы узнать, как обрабатываются состояния виртуальной машины.
Требования
На хосте, на котором выполняется этот модуль, необходимы следующие компоненты.
- python >= 2.7
- ovirt-engine-sdk-python >= 4.4.0
Параметры
Параметр | Комментарии |
|---|---|
affinity_group_mappings list / elements=dictionary | Сопоставитель, сопоставляющий имя группы affinity из OVF виртуальной машины с целевой группой affinity, в которую следует зарегистрировать эту виртуальную машину; применяется при регистрации По умолчанию: |
affinity_label_mappings list / elements=dictionary | Сопоставитель, сопоставляющий имя метки affinity из OVF виртуальной машины с целевой меткой, к которой следует привязать эту виртуальную машину; применяется при регистрации По умолчанию: |
allow_partial_import boolean | Логическое значение, указывающее, разрешена ли частичная регистрация виртуальной машины при регистрации Варианты:
|
auth dictionary / обязательный | Словарь со значениями, необходимыми для создания HTTP/HTTPS-подключения к oVirt: |
|
ca_file string |
Файл PEM с доверенными сертификатами центра сертификации (CA). Сертификат, предоставленный сервером, будет проверен с использованием этих сертификатов CA. Если параметр Значение по умолчанию задается переменной среды |
|
compress boolean |
Флаг, указывающий, используется ли сжатие при подключении. Варианты:
|
|
headers dictionary |
Словарь HTTP-заголовков, добавляемых к каждому вызову API. |
|
hostname string |
Строка с именем хоста сервера, обычно в формате `server.example.com`. Значение по умолчанию задается переменной среды Необходимо указать либо |
|
insecure boolean |
Логический флаг, указывающий, следует ли проверять сертификат TLS и имя хоста сервера. Варианты:
|
|
kerberos boolean |
Логический флаг, указывающий, следует ли использовать аутентификацию Kerberos вместо стандартной базовой аутентификации. Варианты:
|
|
password string |
Пароль пользователя. Значение по умолчанию задается переменной среды |
|
timeout integer |
Количество секунд ожидания ответа. По умолчанию: |
|
token string |
Токен, используемый вместо входа с именем пользователя и паролем. Значение по умолчанию задается переменной среды |
|
url string |
Строка с URL API сервера, обычно в формате `https://server.example.com/ovirt-engine/api`. Значение по умолчанию задается переменной среды Необходимо указать либо |
|
username string |
Имя пользователя, например admin@internal. Значение по умолчанию задается переменной среды |
ballooning_enabled boolean | Если значение равно true, используется динамическое распределение памяти. Модуль динамического распределения памяти — это устройство гостевой системы, которое можно использовать для динамического перераспределения или возврата памяти хоста в зависимости от потребностей виртуальной машины. Это позволяет создавать ситуации с избыточным выделением памяти. Варианты:
|
bios_type string | Задайте тип BIOS, необходимый для некоторых операционных систем и безопасной загрузки. Если значение не указано, используется значение кластера по умолчанию. ПРИМЕЧАНИЕ. Поддерживается начиная с oVirt 4.3. Варианты:
|
boot_devices list / elements=string | Список устройств, с которых следует выполнять загрузку. Например, Значение по умолчанию задается движком oVirt/RHV. Варианты:
|
boolean | True включает меню выбора устройства загрузки, False отключает его. По умолчанию значение выбирается движком oVirt/RHV. Варианты:
|
cd_iso string | Файл ISO из домена хранилища ISO, который следует подключить к виртуальной машине. Если есть несколько дисков ISO с одинаковым именем, укажите нужный диск по его ID или используйте Если передать пустую строку, компакт-диск будет извлечен из виртуальной машины. Если параметр используется с Если параметр используется с |
clone boolean | Если значение равно yes, диски созданной виртуальной машины будут клонированы и станут независимыми от шаблона. Этот параметр используется только, когда Варианты:
|
clone_permissions boolean | Если значение равно yes, разрешения шаблона (только прямые, без унаследованных) будут скопированы в созданную виртуальную машину. Этот параметр используется только, когда Варианты:
|
cloud_init dictionary | Словарь со значениями для инициализации виртуальной машины под управлением Unix с помощью cloud-init. |
|
authorized_ssh_keys string |
Используйте эти ключи SSH для входа в виртуальную машину. |
|
custom_script string |
Сценарий cloud-init, который будет выполнен при развертывании виртуальной машины. Он добавляется в конец сценария cloud-init, созданного с помощью других параметров. Дополнительные сведения см. в документации cloud-init User-Data. |
|
dns_search string |
Домены поиска DNS, которые следует настроить на виртуальной машине. |
|
dns_servers string |
Серверы DNS, которые следует настроить на виртуальной машине; не более двух, разделенных пробелами. |
|
host_name string |
Имя хоста, которое будет задано виртуальной машине при развертывании. |
|
nic_boot_protocol string |
Задайте протокол загрузки сетевого интерфейса виртуальной машины. Варианты:
|
|
nic_boot_protocol_v6 string |
Задайте протокол загрузки сетевого интерфейса виртуальной машины. Варианты:
|
|
nic_gateway string |
Если протокол загрузки статический, задайте этот шлюз для сетевого интерфейса виртуальной машины. |
|
nic_gateway_v6 string |
Если протокол загрузки статический, задайте этот шлюз для сетевого интерфейса виртуальной машины. Для адресов IPv6 значение является целым числом в диапазоне 0–128, представляющим префикс подсети. |
|
nic_ip_address string |
Если протокол загрузки статический, задайте этот IP-адрес для сетевого интерфейса виртуальной машины. |
|
nic_ip_address_v6 string |
Если протокол загрузки статический, задайте этот IP-адрес для сетевого интерфейса виртуальной машины. |
|
nic_name string |
Задайте имя сетевого интерфейса виртуальной машины. |
|
nic_netmask string |
Если протокол загрузки статический, задайте эту маску подсети для сетевого интерфейса виртуальной машины. |
|
nic_netmask_v6 string |
Если протокол загрузки статический, задайте эту маску подсети для сетевого интерфейса виртуальной машины. |
|
regenerate_ssh_keys boolean |
Если значение равно True, ключи SSH будут заново сгенерированы на виртуальной машине. Варианты:
|
|
root_password string |
Пароль, задаваемый для пользователя, указанного параметром |
|
timezone string |
Часовой пояс, который будет задан виртуальной машине при развертывании. |
|
user_name string |
Имя пользователя, для которого будет задан пароль виртуальной машины при развертывании. |
cloud_init_nics list / elements=dictionary | Список словарей, описывающих сетевые интерфейсы, которые будут настроены cloud-init. Этот параметр используется, когда необходимо настроить с помощью cloud-init несколько сетевых интерфейсов. Если достаточно одного сетевого интерфейса, следует использовать параметры По умолчанию: |
|
nic_boot_protocol string |
Задайте протокол загрузки сетевого интерфейса виртуальной машины. Возможные значения: |
|
nic_boot_protocol_v6 string |
Задайте протокол загрузки сетевого интерфейса виртуальной машины. Возможные значения: |
|
nic_gateway string |
Если протокол загрузки статический, задайте этот шлюз для сетевого интерфейса виртуальной машины. |
|
nic_gateway_v6 string |
Если протокол загрузки статический, задайте этот шлюз для сетевого интерфейса виртуальной машины. Для адресов IPv6 значение является целым числом в диапазоне 0–128, представляющим префикс подсети. |
|
nic_ip_address string |
Если протокол загрузки статический, задайте этот IP-адрес для сетевого интерфейса виртуальной машины. |
|
nic_ip_address_v6 string |
Если протокол загрузки статический, задайте этот IP-адрес для сетевого интерфейса виртуальной машины. |
|
nic_name string |
Задайте имя сетевого интерфейса виртуальной машины. |
|
nic_netmask string |
Если протокол загрузки статический, задайте эту маску подсети для сетевого интерфейса виртуальной машины. |
|
nic_netmask_v6 string |
Если протокол загрузки статический, задайте эту маску подсети для сетевого интерфейса виртуальной машины. |
cloud_init_persist псевдонимы: sysprep_persist boolean | Если значение равно yes, параметры Варианты:
|
cluster string | Имя кластера, в котором следует создать виртуальную машину. Обязательный параметр при создании виртуальной машины. |
cluster_mappings list / elements=dictionary | Сопоставитель, сопоставляющий имя кластера из OVF виртуальной машины с целевым кластером, в который следует зарегистрировать эту виртуальную машину; применяется при регистрации По умолчанию: |
|
dest_name string |
Имя целевого кластера. |
|
source_name string |
Имя исходного кластера. |
comment string | Комментарий к виртуальной машине. |
cpu_cores integer | Количество ядер виртуального процессора виртуальной машины. Значение по умолчанию задается механизмом oVirt/RHV. |
cpu_mode string | Режим ЦП виртуальной машины. Возможны следующие значения: host_passthrough, host_model или custom. Для типа ЦП host_passthrough необходимо установить Если значение не указано, значение по умолчанию задается механизмом oVirt/RHV. |
cpu_pinning list / elements=dictionary | Топология привязки ЦП для сопоставления виртуальных ЦП машины с ЦП узла. Топология привязки ЦП представляет собой список словарей, которые могут содержать следующие значения: |
|
cpu string |
Номер ЦП узла. |
|
vcpu string |
Номер виртуального ЦП машины. |
integer | Задает долю ЦП для этой виртуальной машины. Значение по умолчанию задается механизмом oVirt/RHV. |
cpu_sockets integer | Количество сокетов виртуального процессора виртуальной машины. Значение по умолчанию задается механизмом oVirt/RHV. |
cpu_threads integer | Количество потоков на ядро виртуальной машины. Значение по умолчанию задается механизмом oVirt/RHV. |
custom_compatibility_version string | Позволяет задать для виртуальной машины собственную версию совместимости. Если установлено значение « |
custom_emulated_machine string | Задает значение атрибута custom_emulated_machine. |
custom_properties list / elements=dictionary | Свойства, передаваемые в VDSM для настройки различных хуков. Пользовательские свойства представляют собой список словарей, которые могут содержать следующие значения: |
|
name string |
Имя пользовательского свойства. Например: hugepages, vhost, sap_agent и т. д. |
|
regexp string |
Регулярное выражение для пользовательского свойства. |
|
value string |
Значение пользовательского свойства. |
delete_protected boolean | Если указано yes, для виртуальной машины будет включена защита от удаления. Если указано no, для виртуальной машины не будет включена защита от удаления. Если значение не указано, значение по умолчанию задается механизмом oVirt/RHV. Варианты:
|
description string | Описание виртуальной машины. |
disk_format string | Задает формат диска. Если используется формат Если используется формат Обратите внимание, что этот параметр не является идемпотентным, поскольку в настоящее время изменить формат диска через API невозможно. Этот параметр учитывается только при наличии Варианты:
|
disks list / elements=dictionary | Список дисков, которые необходимо подключить к виртуальной машине. Диск описывается следующим словарем. По умолчанию: |
|
activate boolean |
True, если диск должен быть активирован; по умолчанию диск активен. ПРИМЕЧАНИЕ. Этот параметр используется только когда Варианты:
|
|
bootable boolean |
True, если диск должен быть загрузочным; по умолчанию диск не является загрузочным. Варианты:
|
|
id string |
Идентификатор диска. Требуется либо |
|
interface string |
Интерфейс диска. Варианты:
|
|
name string |
Имя диска. Требуется либо |
domain_mappings list / elements=dictionary | Сопоставление имен доменов aaa между OVF виртуальной машины и целевым доменом aaa, в котором необходимо зарегистрировать эту виртуальную машину; применимо, если зарегистрирован По умолчанию: |
|
dest_name string |
Имя целевого домена aaa. |
|
source_name string |
Имя исходного домена aaa. |
exclusive boolean | Если Варианты:
|
export_domain string | Если |
export_ova dictionary | Словарь значений, используемых для экспорта виртуальной машины в формате OVA. |
|
directory string |
Имя каталога, в который необходимо экспортировать OVA. |
|
filename string |
Имя экспортированного файла OVA. |
|
host string |
Имя целевого узла, на который необходимо экспортировать OVA. |
fetch_nested boolean | Если указано True, модуль получит дополнительные данные из API. Будут получены идентификаторы дисков, снимков и других объектов виртуальной машины. Пользователь может указать, какие другие атрибуты вложенных сущностей получать, задав Варианты:
|
force boolean | Подробное описание параметра force см. в разделе Синопсис; его поведение может различаться в зависимости от ситуации. Варианты:
|
force_migrate boolean | Если указано true, виртуальная машина будет перенесена при значении placement_policy=user-migratable, но не при значении placement_policy=pinned. Варианты:
|
graphical_console dictionary | Назначает виртуальной машине графическую консоль. |
|
copy_paste_enabled boolean |
Указывает, может ли пользователь копировать содержимое с внешнего узла и вставлять его в графическую консоль. Этот параметр доступен только для консолей типа SPICE. Варианты:
|
|
disconnect_action string |
Возвращает действие, которое будет выполнено при отключении графической консоли (только SPICE). Возможны следующие варианты: none Действие не выполняется. lock_screen Блокирует текущий активный сеанс пользователя. logout Завершает текущий активный сеанс пользователя. reboot Выполняет штатную перезагрузку виртуальной машины. shutdown Выполняет штатное выключение виртуальной машины. |
|
file_transfer_enabled boolean |
Указывает, может ли пользователь перетаскивать файлы с внешнего узла в графическую консоль. Этот параметр доступен только для консолей типа SPICE. Варианты:
|
|
headless_mode boolean |
Если указано true, графическая консоль этой виртуальной машины будет отключена. Варианты:
|
|
keyboard_layout string |
Раскладка клавиатуры для этой графической консоли. Этот параметр доступен только для консолей типа VNC. Если клавиатура не включена, ее данные не будут отображаться. |
|
monitors integer |
Количество мониторов, открываемых для этой графической консоли. Этот параметр доступен только для протокола SPICE. Возможные значения: 1, 2 или 4. |
|
protocol list / elements=string |
Графический протокол: список, содержащий spice, vnc или оба значения. |
high_availability boolean | Если указано yes, для виртуальной машины будет включена высокая доступность. Если указано no, для виртуальной машины не будет включена высокая доступность. Если значение не указано, значение по умолчанию задается механизмом oVirt/RHV. Варианты:
|
high_availability_priority integer | Задает приоритет виртуальной машины в очередях запуска и миграции. Виртуальные машины с более высоким приоритетом запускаются и переносятся раньше машин с более низким приоритетом. Значение — целое число от 0 до 100. Чем выше значение, тем выше приоритет. Если значение не указано, значение по умолчанию задается механизмом oVirt/RHV. |
host string | Задает узел, на котором должна работать виртуальная машина. По умолчанию узел выбирается планировщиком механизма. Этот параметр используется только когда |
host_devices list / elements=dictionary | Single Root I/O Virtualization — технология, позволяющая одному устройству предоставлять несколько конечных точек, которые можно передавать виртуальным машинам. host_devices — это список словарей, содержащих имя и состояние устройства. |
id string | Идентификатор виртуальной машины, которой необходимо управлять. |
initrd_path string | Путь к начальному RAM-диску, используемому с ядром, указанным параметром Образ RAM-диска должен храниться либо в домене ISO, либо в хранилище узла. |
instance_type string | Имя конфигурации оборудования виртуальной машины. По умолчанию тип экземпляра не используется. |
io_threads integer | Количество потоков ввода-вывода, используемых виртуальной машиной. Значение 0 отключает многопоточную обработку ввода-вывода. |
kernel_params string | Параметры командной строки ядра (в виде строки), используемые с ядром, указанным параметром |
kernel_params_persist boolean | Если указано true, параметры Варианты:
|
kernel_path string | Путь к образу ядра, используемому для загрузки виртуальной машины. Образ ядра должен храниться либо в домене ISO, либо в хранилище узла. |
kvm dictionary | Словарь значений, используемых для подключения к KVM и импорта виртуальной машины в oVirt. |
|
drivers_iso string |
Имя ISO-образа с драйверами, которые можно использовать в процессе преобразования virt-v2v. |
|
name string |
Имя виртуальной машины KVM. |
|
password string |
Пароль для аутентификации в KVM. |
|
sparse boolean |
Задает политику выделения дискового пространства для создаваемой виртуальной машины: true — разреженное выделение, false — предварительное выделение. Варианты:
|
|
storage_domain string |
Задает целевой домен хранилища для преобразованных дисков. Это обязательный параметр. |
|
url string |
URL, передаваемый инструменту virt-v2v для преобразования. Например, qemu:///system. Это обязательный параметр. |
|
username string |
Имя пользователя для аутентификации в KVM. |
lease string | Имя домена хранилища, в котором находится аренда этой виртуальной машины. Передайте пустую строку, чтобы удалить аренду. ПРИМЕЧАНИЕ — поддерживается начиная с oVirt 4.1. |
lun_mappings list / elements=dictionary | Средство сопоставления LUN в OVF виртуальной машины с целевым LUN, который должна содержать эта виртуальная машина; применяется, когда зарегистрирован По умолчанию: |
|
logical_unit_address string |
Адрес хоста блочного хранилища. |
|
logical_unit_id string |
Номер логического устройства, идентифицирующий логическое устройство. |
|
logical_unit_password) string |
Пароль для подключения к хосту блочного хранилища. |
|
logical_unit_port string |
Порт, используемый для подключения к диску LUN. |
|
logical_unit_portal string |
Портал, используемый для подключения к диску LUN. |
|
logical_unit_target string |
Спецификация iSCSI, расположенная на сервере iSCSI. |
|
logical_unit_username string |
Имя пользователя для подключения к хосту блочного хранилища. |
|
storage_type string |
Тип хранилища, в котором находится LUN (iscsi или fcp). |
memory string | Объем памяти виртуальной машины. Для приставок используется стандарт IEC 60027-2 (например, 1GiB, 1024MiB). Значение по умолчанию задается движком. |
memory_guaranteed string | Объем гарантированной минимальной памяти виртуальной машины. Для приставок используется стандарт IEC 60027-2 (например, 1GiB, 1024MiB). Значение параметра Значение по умолчанию задается движком. |
memory_max string | Верхняя граница объема памяти виртуальной машины, до которой можно выполнять горячее подключение памяти. Для приставок используется стандарт IEC 60027-2 (например, 1GiB, 1024MiB). Значение по умолчанию задается движком. |
migrate boolean | Если задано true, виртуальная машина будет перенесена на любой доступный хост. Варианты:
|
multi_queues_enabled boolean добавлено в ovirt.ovirt 1.7.0 | Если задано `true`, для каждого виртуального сетевого интерфейса будет настроено оптимальное количество очередей в зависимости от доступного числа виртуальных процессоров. Варианты:
|
name string | Имя виртуальной машины, которой нужно управлять. Если виртуальная машина не существует, требуется |
nested_attributes list / elements=string | Задает список атрибутов, которые следует получить из API. Этот параметр применяется только, если По умолчанию: |
next_run boolean | Если задано true, обновление не будет применено к виртуальной машине немедленно и вступит в силу только после ее перезапуска. ПРИМЕЧАНИЕ — если для виртуальной машины задано несколько изменений конфигурации, применяемых при следующем запуске, первое изменение может быть отменено, если не передать этот параметр. Варианты:
|
nics list / elements=dictionary | Список сетевых интерфейсов, которые следует подключить к виртуальной машине. Параметры сетевого интерфейса задаются следующим словарем. По умолчанию: |
|
interface string |
Тип сетевого интерфейса. Варианты:
|
|
mac_address string |
Пользовательский MAC-адрес сетевого интерфейса; по умолчанию он назначается из пула MAC-адресов. ПРИМЕЧАНИЕ — этот параметр используется только, когда |
|
name string |
Имя сетевого интерфейса. |
|
profile_name string |
Имя профиля, к которому следует подключить сетевой интерфейс. |
numa_nodes list / elements=dictionary | Список узлов vNUMA для этой виртуальной машины с привязкой к назначенным физическим узлам NUMA хоста. Каждый узел vNUMA описывается следующим словарем: По умолчанию: |
|
cores list / elements=integer / обязательный |
Список индексов ядер ЦП виртуальной машины, включаемых в этот узел NUMA. |
|
index string / обязательный |
Индекс этого узла NUMA. |
|
memory string / обязательный |
Объем памяти узла NUMA в МиБ. |
|
numa_node_pins list / elements=integer |
Список индексов физических узлов NUMA, к которым следует привязать этот виртуальный узел NUMA. |
numa_tune_mode string | Задает способ применения выделения памяти для узлов NUMA этой виртуальной машины (применяется, если для виртуальной машины заданы узлы NUMA). Возможные значения: interleave, preferred или strict. Если значение не указано, значение по умолчанию задается движком oVirt/RHV. Варианты:
|
operating_system string | Операционная система виртуальной машины, например «rhel_8x64». Значение по умолчанию задается движком oVirt/RHV. Для получения текущего списка используйте модуль ovirt.ovirt.ovirt_vm_os_info. |
placement_policy string | Конфигурация политики размещения виртуальной машины. Если значение не указано, значение по умолчанию задается движком oVirt/RHV. Политика размещения может принимать одно из следующих значений: |
|
migratable string |
Разрешить ручную и автоматическую миграцию. |
|
pinned string |
Запретить миграцию. |
|
user_migratable string |
Разрешить только ручную миграцию. |
placement_policy_hosts list / elements=string | Список имен хостов. |
poll_interval integer | Количество секунд ожидания модулем перед отправкой следующего запроса для проверки состояния объекта. По умолчанию: |
quota_id string | Идентификатор квоты виртуальной машины, используемой для диска. По умолчанию квоту выбирает движок oVirt/RHV. |
reassign_bad_macs boolean | Логическое значение, указывающее, следует ли переназначать некорректные MAC-адреса, когда зарегистрирован Варианты:
|
rng_device string | Генератор случайных чисел (RNG). Можно выбрать одно из следующих устройств: urandom, random или hwrng. Чтобы выбрать hwrng, сначала необходимо включить его в кластере. Для версии кластера >= 4.1 используется /dev/urandom, а для версии кластера <= 4.0 — /dev/random. |
role_mappings list / elements=dictionary | Средство сопоставления имен ролей из OVF виртуальной машины с целевыми ролями, в которые следует зарегистрировать эту виртуальную машину; применяется, когда зарегистрирован По умолчанию: |
|
dest_name string |
Имя целевой роли. |
|
source_name string |
Имя исходной роли. |
serial_console boolean | True — включить последовательную консоль VirtIO, False — отключить ее. По умолчанию значение выбирает движок oVirt/RHV. Варианты:
|
serial_policy string | Задает политику серийного номера виртуальной машины. Поддерживаются следующие параметры.
Варианты:
|
serial_policy_value string | Позволяет указать пользовательский серийный номер. Этот параметр используется только, когда значение |
smartcard_enabled boolean | Если задано true, используется аутентификация со смарт-картой. Варианты:
|
snapshot_name string | Снимок, на основе которого клонируется виртуальная машина. Должен существовать снимок с указанным описанием. Необходимо указать параметр |
snapshot_vm string | Исходная виртуальная машина, на основе которой клонируется виртуальная машина. Для виртуальной машины должен существовать снимок, указанный параметром Если указан |
soundcard_enabled boolean | Если задано true, к виртуальной машине добавляется звуковая карта. Варианты:
|
sso boolean | True — включить единый вход с помощью гостевого агента, False — отключить его. По умолчанию значение выбирает движок oVirt/RHV. Варианты:
|
state string | Должна ли виртуальная машина быть запущена/остановлена/присутствовать/отсутствовать/приостановлена/обновлена при следующем запуске/зарегистрирована/экспортирована/перезагружена. Если Состояние present создаст или обновит ВМ, не меняя её состояние, если она уже существует. Состояние running создаст или обновит ВМ и запустит её. Состояние next_run обновляет ВМ и перезагружает её, если для ВМ настроена конфигурация следующего запуска. Подробное описание состояний см. в разделе notes. Состояние exported экспортирует ВМ в домен экспорта или в формате OVA. Состояние registered поддерживается начиная с версии 2.4. Состояние reboot поддерживается начиная с версии 2.10; виртуальная машина перезагружается, только если она находится в состоянии up. reset отправляет запрос на сброс виртуальной машины. Варианты:
|
stateless boolean | Если указано yes, виртуальная машина будет переведена в режим без сохранения состояния. Если указано no, для виртуальной машины будет отключён режим без сохранения состояния. Если значение не передано, используется значение по умолчанию, заданное движком oVirt/RHV. Варианты:
|
storage_domain string | Имя домена хранения, в котором должны быть созданы все диски шаблона. Этот параметр учитывается только при наличии ВАЖНО: этот параметр не является идемпотентным. Если ВМ существует и указан другой домен хранения, диск не будет перемещён. |
storage_error_resume_behaviour string добавлено в ovirt.ovirt 3.2.0 | Если хранилище, на котором находятся диски этой виртуальной машины, перестаёт отвечать, виртуальная машина приостанавливается. Эти параметры определяют, что должно произойти с виртуальной машиной после того, как хранилище снова станет доступно. Варианты:
|
sysprep dictionary | Словарь со значениями для инициализации виртуальной машины Windows с помощью sysprep. |
|
active_directory_ou string |
Подразделение Active Directory, используемое для входа пользователя. |
|
custom_script string |
Пользовательское описание Sysprep в виде полного файла ответов для автоматической установки. |
|
domain string |
Домен, который будет задан виртуальной машине Windows. |
|
host_name string |
Имя узла, которое будет задано виртуальной машине при развёртывании. |
|
input_locale string |
Язык ввода виртуальной машины Windows. |
|
org_name string |
Название организации, которое будет задано виртуальной машине Windows. |
|
root_password string |
Пароль, который будет задан для имени пользователя виртуальной машины Windows. |
|
system_locale string |
Язык системы виртуальной машины Windows. |
|
timezone string |
Часовой пояс, который будет задан виртуальной машине Windows. |
|
ui_language string |
Язык интерфейса виртуальной машины Windows. |
|
user_name string |
Имя пользователя, для которого будет задан пароль виртуальной машины Windows. |
|
windows_license_key string |
Лицензионный ключ, который будет задан виртуальной машине Windows. |
template string | Имя шаблона, который следует использовать для создания виртуальной машины. Обязателен при создании ВМ. Если шаблон не указан и ВМ не существует, она будет создана на основе шаблона Blank. |
template_version integer | Номер версии шаблона, используемого для ВМ. По умолчанию используется последняя доступная версия шаблона. |
ticket boolean | Если указано true, дополнительно возвращает remote_vv_file в словаре vm, содержащий совместимое содержимое для приложения remote-viewer. Работает, только если Варианты:
|
timeout integer | Время в секундах, в течение которого модуль должен ожидать перехода экземпляра в требуемое состояние. По умолчанию: |
timezone string | Задаёт смещение часового пояса аппаратных часов гостевой системы. Например, |
tpm_enabled boolean добавлено в ovirt.ovirt 3.2.0 | Если указано `true`, в виртуальную машину добавляется устройство TPM. Варианты:
|
type string | Тип виртуальной машины. Значение по умолчанию задаётся движком oVirt/RHV. high_performance поддерживается начиная с Ansible 2.5 и oVirt/RHV 4.2. Варианты:
|
usb_support boolean | True включает поддержку USB, False отключает её. По умолчанию значение выбирается движком oVirt/RHV. Варианты:
|
use_latest_template_version boolean | Указывает, следует ли использовать последнюю версию шаблона при запуске ВМ без сохранения состояния. Если для этого параметра задано значение yes, создаётся ВМ без сохранения состояния. Варианты:
|
virtio_scsi_enabled boolean добавлено в ovirt.ovirt 1.7.0 | Включает поддержку Virtio SCSI. Варианты:
|
virtio_scsi_multi_queues integer добавлено в ovirt.ovirt 1.7.0 | Количество очередей для контроллера Virtio-SCSI; возможные значения: -1 — очереди будут настроены автоматически. 0 — многопоточность Virtio SCSI будет отключена. >0 — количество очередей Virtio SCSI, используемых виртуальной машиной. |
vmware dictionary | Словарь значений, используемых для подключения к VMware и импорта виртуальной машины в oVirt. |
|
drivers_iso string |
Имя ISO-образа с драйверами, которые можно использовать в процессе преобразования virt-v2v. |
|
password string |
Пароль для аутентификации в VMware. |
|
sparse boolean |
Указывает политику выделения дискового пространства для создаваемой виртуальной машины. true — динамическое выделение, false — предварительное выделение. Варианты:
|
|
storage_domain string |
Задаёт целевой домен хранения для преобразованных дисков. Этот параметр обязателен. |
|
url string |
URL, передаваемый инструменту virt-v2v для преобразования. Например, vpx://wmware_user@vcenter-host/DataCenter/Cluster/esxi-host?no_verify=1 |
|
username string |
Имя пользователя для аутентификации в VMware. |
vnic_profile_mappings list / elements=dictionary | Сопоставление внешнего профиля виртуального сетевого интерфейса с профилем, существующим в движке, когда По умолчанию: |
|
source_network_name string |
Имя исходной сети. |
|
source_profile_name string |
Имя профиля, связанного с исходной сетью. |
|
target_profile_id string |
Идентификатор целевого профиля в движке, на который выполняется сопоставление. |
volatile boolean добавлено в ovirt.ovirt 2.2.0 | Указывает, что эта конфигурация запуска будет удалена даже в случае перезагрузки, инициированной гостевой системой. Варианты:
|
wait boolean |
Варианты:
|
wait_after_lease integer добавлено в ovirt.ovirt 2.1.0 | Количество секунд, в течение которых модуль должен ожидать после изменения аренды. По умолчанию: |
watchdog dictionary | Назначает виртуальной машине устройство watchdog. Словарь watchdog может содержать следующие значения: |
|
action string |
Действие, выполняемое при срабатывании watchdog. Например: none, reset, poweroff, pause или dump. |
|
model string |
Модель устройства watchdog. Например: i6300esb, diag288 или null. |
xen dictionary | Словарь значений, используемых для подключения к XEN и импорта виртуальной машины в oVirt. |
|
drivers_iso string |
Имя ISO-образа с драйверами, которые можно использовать в процессе преобразования virt-v2v. |
|
sparse boolean |
Указывает политику выделения дискового пространства для создаваемой виртуальной машины. true — динамическое выделение, false — предварительное выделение. Варианты:
|
|
storage_domain string |
Задаёт целевой домен хранения для преобразованных дисков. Этот параметр обязателен. |
|
url string |
URL, передаваемый инструменту virt-v2v для преобразования. Например, xen+ssh://root@zen.server. Этот параметр обязателен. |
Примечания
Примечание
- Если перед выполнением любой операции ВМ находится в состоянии UNASSIGNED или UNKNOWN, выполнение модуля завершится ошибкой. Если перед выполнением любой операции ВМ находится в состоянии IMAGE_LOCKED, модуль будет ожидать перехода ВМ в состояние DOWN. Если перед выполнением любой операции ВМ находится в состоянии SAVING_STATE, модуль будет ожидать перехода ВМ в состояние SUSPENDED. Если перед выполнением любой операции ВМ находится в состоянии POWERING_DOWN, модуль будет ожидать перехода ВМ в состояние UP или DOWN. ВМ может перейти из состояния POWERING_DOWN в состояние UP, если в ВМ не работает ACPI или гостевой агент либо если операция выключения завершилась ошибкой. Если пользователь указывает UP
state, модуль всегда ожидает перехода ВМ в состояние UP, если ВМ находится в состоянии MIGRATING, REBOOTING, POWERING_UP, RESTORING_STATE или WAIT_FOR_LAUNCH. В остальных состояниях для ВМ выполняется операция запуска. Если пользователь указывает stoppedstateи передаёт параметрforceсо значением true, ВМ принудительно останавливается в любом состоянии. Если пользователь не передаёт параметрforce, модуль всегда ожидает перехода ВМ в состояние UP, если ВМ находится в состоянии MIGRATING, REBOOTING, POWERING_UP, RESTORING_STATE или WAIT_FOR_LAUNCH. Если ВМ находится в состоянии PAUSED или SUSPENDED, она запускается. Затем выполняется штатное выключение ВМ. Если пользователь указывает suspendedstate, модуль всегда ожидает перехода ВМ в состояние UP, если ВМ находится в состоянии MIGRATING, REBOOTING, POWERING_UP, RESTORING_STATE или WAIT_FOR_LAUNCH. Если ВМ находится в состоянии PAUSED или DOWN, она запускается. Затем ВМ приостанавливается. Если пользователь указывает absentstate, ВМ принудительно останавливается в любом состоянии и удаляется. - При обновлении параметра ВМ, требующего перезагрузки, движок oVirt всегда создаёт новый снимок ВМ, и в отчёте плейбука Ansible это будет отмечено как изменение.
- Для использования этого модуля необходимо установить oVirt Python SDK. Чтобы убедиться, что установлена правильная версия, можно создать следующую задачу: pip: name=ovirt-engine-sdk-python version=4.4.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.ovirt.ovirt_vm:
state: present
name: myvm
template: rhel7_template
cluster: mycluster
- name: Register VM
ovirt.ovirt.ovirt_vm:
state: registered
storage_domain: mystorage
cluster: mycluster
name: myvm
- name: Register VM using id
ovirt.ovirt.ovirt_vm:
state: registered
storage_domain: mystorage
cluster: mycluster
id: 1111-1111-1111-1111
- name: Register VM, allowing partial import
ovirt.ovirt.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.ovirt.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.ovirt.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.ovirt.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.ovirt.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.ovirt.ovirt_vm:
id: 00000000-0000-0000-0000-000000000000
name: "new_vm_name"
- name: Run VM with cloud init
ovirt.ovirt.ovirt_vm:
name: rhel7
template: rhel7
cluster: Default
memory: 1GiB
high_availability: true
high_availability_priority: 50 # Available from Ansible 2.5
cloud_init:
dns_servers: '8.8.8.8 8.8.4.4'
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
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.ovirt.ovirt_vm:
name: rhel7_4
template: rhel7
cluster: mycluster
cloud_init_nics:
- nic_name: eth0
nic_boot_protocol: dhcp
- 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
# IP version 6 parameters are supported since ansible 2.9
- nic_name: eth2
nic_boot_protocol_v6: static
nic_ip_address_v6: '2620:52:0:2282:b898:1f69:6512:36c5'
nic_gateway_v6: '2620:52:0:2282:b898:1f69:6512:36c9'
nic_netmask_v6: '120'
- nic_name: eth3
nic_boot_protocol_v6: dhcp
- name: Run VM with sysprep
ovirt.ovirt.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.ovirt.ovirt_vm:
state: running
name: myvm
host: host1
- name: Migrate/Run VM to/on host named 'host1' on cluster 'cluster1'
ovirt.ovirt.ovirt_vm:
state: running
name: myvm
host: host1
cluster: cluster1
- name: Migrate VM to any available host
ovirt.ovirt.ovirt_vm:
state: running
name: myvm
migrate: true
- name: Change VMs CD
ovirt.ovirt.ovirt_vm:
name: myvm
cd_iso: drivers.iso
- name: Eject VMs CD
ovirt.ovirt.ovirt_vm:
name: myvm
cd_iso: ''
- name: Boot VM from CD
ovirt.ovirt.ovirt_vm:
name: myvm
cd_iso: centos7_x64.iso
boot_devices:
- cdrom
- name: Stop vm
ovirt.ovirt.ovirt_vm:
state: stopped
name: myvm
- name: Upgrade memory to already created VM
ovirt.ovirt.ovirt_vm:
name: myvm
memory: 4GiB
- name: Hot plug memory to already created and running VM (VM won't be restarted)
ovirt.ovirt.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.ovirt.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.ovirt.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.ovirt.ovirt_vm:
state: next_run
name: myvm
boot_devices:
- network
- name: Import virtual machine from VMware
ovirt.ovirt.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.ovirt.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.ovirt.ovirt_vm:
state: absent
name: myvm
# Defining a specific quota for a VM:
# Since Ansible 2.5
- ovirt.ovirt.ovirt_quotas_info:
data_center: Default
name: myquota
register: ovirt_quotas
- ovirt.ovirt.ovirt_vm:
name: myvm
sso: false
boot_menu: true
bios_type: q35_ovmf
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.ovirt.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.ovirt.ovirt_vm:
name: myvm
ticket: true
state: running
register: myvm
- name: Save ticket to file
ansible.builtin.copy:
content: "{{ myvm.vm.remote_vv_file }}"
dest: ~/vvfile.vv
- name: Run remote viewer with file
ansible.builtin.command: remote-viewer ~/vvfile.vv
# Default value of host_device state is present
- name: Attach host devices to virtual machine
ovirt.ovirt.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: Add placement policy with multiple hosts
ovirt.ovirt.ovirt_vm:
name: myvm
placement_policy: migratable
placement_policy_hosts:
- host1
- host2
- name: Export the VM as OVA
ovirt.ovirt.ovirt_vm:
name: myvm
state: exported
cluster: mycluster
export_ova:
host: myhost
filename: myvm.ova
directory: /tmp/
- name: Clone VM from snapshot
ovirt.ovirt.ovirt_vm:
snapshot_vm: myvm
snapshot_name: myvm_snap
name: myvm_clone
state: present
- name: Import external ova VM
ovirt.ovirt.ovirt_vm:
cluster: mycluster
name: myvm
host: myhost
timeout: 1800
poll_interval: 30
kvm:
name: myvm
url: ova:///path/myvm.ova
storage_domain: mystorage
- name: Cpu pinning of 0#12_1#13_2#14_3#15
ovirt.ovirt.ovirt_vm:
state: present
cluster: mycluster
name: myvm
cpu_pinning:
- cpu: 12
vcpu: 0
- cpu: 13
vcpu: 1
- cpu: 14
vcpu: 2
- cpu: 15
vcpu: 3
Возвращаемые значения
Общие возвращаемые значения описаны здесь, ниже перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
id string | ID управляемой виртуальной машины Возвращается: При успешном выполнении, если виртуальная машина найдена. Пример: |
vm dictionary | Словарь со всеми атрибутами виртуальной машины. Атрибуты виртуальной машины можно найти в вашем экземпляре oVirt/RHV по следующему URL: http://ovirt.github.io/ovirt-engine-api-model/master/#types/vm. Кроме того, если пользователь указал ticket=true, этот модуль также вернёт в словаре vm параметр remote_vv_file, содержащий совместимый с remote-viewer файл для открытия консоли виртуальной машины. Обратите внимание, что этот файл содержит конфиденциальную информацию. Возвращается: При успешном выполнении, если виртуальная машина найдена. |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/ovirt/ovirt/ovirt_vm_module.html