ovirt.ovirt.ovirt_vm модуль — Модуль управления виртуальными машинами в oVirt/RHV
Примечание
Этот модуль входит в коллекцию ovirt.ovirt (версия 3.2.0).
Эта коллекция, возможно, уже установлена, если вы используете пакет 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.
- Поскольку VM может иметь множество состояний в oVirt/RHV, см. раздел «Примечания» для понимания обработки состояний VM.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- python >= 2.7
- ovirt-engine-sdk-python >= 4.4.0
Параметры
Параметр | Комментарии |
|---|---|
affinity_group_mappings список / элементы=словарь | Отображение, которое сопоставляет имя группы родства между OVF виртуальной машины и целевой группой родства, к которой эта виртуальная машина должна быть зарегистрирована, актуально, когда |
affinity_label_mappings список / элементы=словарь | Отображение, которое сопоставляет имя метки родства между OVF виртуальной машины и целевой меткой, к которой эта виртуальная машина должна быть зарегистрирована, актуально, когда |
allow_partial_import булево | Булево значение, указывающее, разрешить ли частичную регистрацию виртуальной машины, когда Варианты:
|
auth словарь / обязательно | Словарь со значениями, необходимыми для создания подключения HTTP/HTTPS к oVirt: |
|
ca_file строка |
Файл PEM, содержащий доверенные сертификаты CA. Сертификат, представленный сервером, будет проверен с помощью этих сертификатов CA. Если параметр Значение по умолчанию задается переменной среды |
|
compress булево |
Флаг, указывающий, используется ли сжатие для подключения. Варианты:
|
|
headers словарь |
Словарь HTTP-заголовков, которые нужно добавить к каждому API-запросу. |
|
hostname строка |
Строка, содержащая имя хоста сервера, обычно что-то вроде `server.example.com`. Значение по умолчанию задается переменной среды Требуется либо |
|
insecure булево |
Булевый флаг, указывающий, нужно ли проверять сертификат TLS сервера и имя хоста. Варианты:
|
|
kerberos булево |
Булевый флаг, указывающий, следует ли использовать аутентификацию Kerberos вместо стандартной аутентификации. Варианты:
|
|
password строка |
Пароль пользователя. Значение по умолчанию задается переменной среды |
|
timeout целое число |
Количество секунд ожидания ответа. |
|
token строка |
Токен для использования вместо входа с именем пользователя/паролем. Значение по умолчанию задается переменной среды |
|
url строка |
Строка, содержащая URL API сервера, обычно что-то вроде `https://server.example.com/ovirt-engine/api`. Значение по умолчанию задается переменной среды Требуется либо |
|
username строка |
Имя пользователя, например admin@internal. Значение по умолчанию задается переменной среды |
ballooning_enabled булево | Если true, использовать баллонирование памяти. Баллонирование памяти — это гостевой модуль, который может использоваться для динамического перераспределения/возврата памяти хоста в зависимости от потребностей виртуальной машины. Таким образом, можно создавать состояния избытка памяти. Варианты:
|
bios_type строка | Установите тип BIOS, необходимый для некоторых операционных систем и безопасной загрузки. Если значение не передано, используется значение по умолчанию из кластера. ПРИМЕЧАНИЕ. Поддерживается с oVirt 4.3. Варианты:
|
boot_devices список / элементы=строка | Список устройств загрузки, которые должны быть использованы для загрузки. Например, Значение по умолчанию задается движком oVirt/RHV. Варианты:
|
булево | True для активации меню выбора устройства загрузки, False для его отключения. По умолчанию выбирается движком oVirt/RHV. Варианты:
|
cd_iso string | ISO-файл из хранилища ISO, который должен быть подключен к виртуальной машине. Если у вас несколько ISO-дисков с одинаковым именем, используйте ID диска, чтобы указать, какой из них следует использовать, или используйте Если вы передадите пустую строку, CD будет извлечен из виртуальной машины. Если используется с Если используется с |
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 aliases: sysprep_persist boolean | Если да, параметры Варианты:
|
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 для настройки различных хуков. Custom properties — это список словарей, которые могут иметь следующие значения: |
|
name string |
Имя настраиваемого свойства. Например: hugepages, vhost, sap_agent и т. д. |
|
regexp string |
Регулярное выражение для настройки настраиваемого свойства. |
|
value string |
Значение для настройки настраиваемого свойства. |
delete_protected boolean | Если да, виртуальная машина будет защищена от удаления. Если нет, виртуальная машина не будет защищена от удаления. Если значение не указано, используется значение по умолчанию движка 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 | Если да, виртуальная машина будет настроена как высокодоступная. Если нет, виртуальная машина не будет настроена как высокодоступная. Если значение не передано, используется значение по умолчанию, установленное движком oVirt/RHV. Варианты:
|
high_availability_priority integer | Указывает приоритет виртуальной машины в очередях запуска и миграции. Виртуальные машины с более высокими приоритетами будут запускаться и мигрировать перед виртуальными машинами с более низкими приоритетами. Значение является целым числом от 0 до 100. Чем выше значение, тем выше приоритет. Если значение не передано, используется значение по умолчанию, установленное движком oVirt/RHV. |
host string | Укажите хост, на котором должна выполняться виртуальная машина. По умолчанию хост выбирается планировщиком. Этот параметр используется только при |
host_devices список / элементы=словарь | Технология Single Root I/O Virtualization, позволяющая одному устройству экспонировать несколько конечных точек, которые могут быть переданы виртуальным машинам host_devices — список, содержащий словарь с именем и состоянием устройства |
id строка | ID виртуальной машины для управления. |
initrd_path строка | Путь к начальному образу ramdisk, который будет использоваться с ядром, указанным параметром Изображение ramdisk должно храниться либо в домене ISO, либо на хранилище хоста. |
instance_type строка | Имя конфигурации аппаратного обеспечения виртуальной машины. По умолчанию тип экземпляра не используется. |
io_threads целое число | Количество потоков ввода-вывода, используемых виртуальной машиной. 0 означает отключение потоков ввода-вывода. |
kernel_params строка | Параметры командной строки ядра (в формате строки), которые будут использоваться с ядром, указанным параметром |
kernel_params_persist логическое значение | Если true, Варианты:
|
kernel_path строка | Путь к изображению ядра, используемому для загрузки виртуальной машины. Изображение ядра должно храниться либо в домене ISO, либо на хранилище хоста. |
kvm словарь | Словарь значений, которые будут использоваться для подключения к kvm и импорта виртуальной машины в oVirt. |
|
drivers_iso строка |
Имя ISO, содержащего драйверы, которые могут быть использованы во время процесса преобразования virt-v2v. |
|
name строка |
Имя виртуальной машины KVM. |
|
password строка |
Пароль для аутентификации в KVM. |
|
sparse логическое значение |
Указывает политику выделения диска для результирующей виртуальной машины. true для разреженного, false для предварительно выделенного. Варианты:
|
|
storage_domain строка |
Указывает целевой домен хранения для преобразованных дисков. Это обязательный параметр. |
|
url строка |
URL, который будет передан инструменту virt-v2v для преобразования. Например, qemu:///system. Это обязательный параметр. |
|
username строка |
Имя пользователя для аутентификации в KVM. |
lease строка | Имя домена хранения, на котором находится аренда этой виртуальной машины. Передайте пустую строку, чтобы удалить аренды. ПРИМЕЧАНИЕ: Поддерживается начиная с oVirt 4.1. |
lun_mappings список / элементы=словарь | Маппинг, который сопоставляет LUN между OVF виртуальной машины и целевым LUN, которое должна содержать эта виртуальная машина. Актуально, когда |
|
logical_unit_address строка |
Адрес хоста блочного хранилища. |
|
logical_unit_id строка |
Логический номер устройства для идентификации логического устройства. |
|
logical_unit_password) строка |
Пароль для подключения к хосту блочного хранилища. |
|
logical_unit_port строка |
Порт, используемый для подключения к диску LUN. |
|
logical_unit_portal строка |
Портал, используемый для подключения к диску LUN. |
|
logical_unit_target строка |
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, обновление не будет применено к виртуальной машине сразу и будет применено только при перезапуске виртуальной машины. ПРИМЕЧАНИЕ - Если есть несколько изменений конфигурации next run на виртуальной машине, первое изменение может быть отменено, если этот параметр не передан. Варианты:
|
nics list / elements=dictionary | Список сетевых адаптеров (NIC), которые необходимо подключить к виртуальной машине. Сетевой адаптер описывается следующим словарем. |
|
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 узла в MiB. |
|
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, он должен быть сначала включен на кластере. /dev/urandom используется для версии кластера ≥ 4.1, а /dev/random для версии кластера ≤ 4.0 |
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 обновляет ВМ, и если у ВМ есть конфигурация следующего запуска, она будет перезагружена. Пожалуйста, проверьте примечания для более подробного описания состояний. Состояние exported экспортирует ВМ в экспортный домен или как OVA. registered поддерживается начиная с версии 2.4. reboot поддерживается начиная с версии 2.10, виртуальная машина перезагружается только если она находится в рабочем состоянии. 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 added in ovirt.ovirt 2.2.0 | Указывает, что эта конфигурация запуска будет удалена даже в случае перезагрузки гостевой ОС. Варианты:
|
wait boolean |
Варианты:
|
wait_after_lease integer added in ovirt.ovirt 2.1.0 | Количество секунд, которое модуль должен ожидать после изменения аренды. По умолчанию: |
watchdog dictionary | Назначение устройства watchdog для виртуальной машины. Watchdogs — это словарь, который может содержать следующие значения: |
|
action string |
Действие watchdog, которое должно быть выполнено при срабатывании 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. ВМ может перейти в состояние UP из POWERING_DOWN, если в ВМ не запущен 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 playbook будет сообщать об этом как о изменении.
- Для использования этого модуля необходимо установить 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 по следующему адресу: http://ovirt.github.io/ovirt-engine-api-model/master/#types/vm. Кроме того, когда пользователь отправил ticket=true, этот модуль также вернёт параметр remote_vv_file в словаре vm, содержащем совместимый с remote-viewer файл для открытия консоли виртуальной машины. Обратите внимание, что этот файл содержит конфиденциальную информацию. Возвращается: При успешном выполнении, если ВМ найдена. |
Ссылки на сборку
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/ovirt/ovirt/ovirt_vm_module.html