ovirt_vms — Модуль управления виртуальными машинами в oVirt/RHV
Новый в версии 2.2.
Описание
- Этот модуль управляет полным жизненным циклом виртуальной машины (ВМ) в oVirt/RHV.
- Так как ВМ может иметь множество состояний в oVirt/RHV, см. примечания, чтобы узнать, как обрабатываются состояния ВМ.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- python >= 2.7
- ovirt-engine-sdk-python >= 4.2.4
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| affinity_group_mappings (добавлено в 2.5) | Маппер, который сопоставляет имя группы соответствия между OVF виртуальной машины и целевой группой соответствия, к которой должна быть зарегистрирована эта виртуальная машина, актуально, когда регистрируется state. | |
| affinity_label_mappings (добавлено в 2.5) | Маппер, который сопоставляет имя метки соответствия между OVF виртуальной машины и целевой меткой, к которой должна быть зарегистрирована эта виртуальная машина, актуально, когда регистрируется state. | |
| allow_partial_import (добавлено в 2.4) | Булево значение, указывающее, разрешить ли частичную регистрацию виртуальной машины, когда регистрируется state. | |
| auth обязательно | Словарь со значениями, необходимыми для создания HTTP/HTTPS соединения с oVirt: username[обязательно] - Имя пользователя, например, admin@internal. Значение по умолчанию устанавливается переменной среды OVIRT_USERNAME.password[обязательно] - Пароль пользователя. Значение по умолчанию устанавливается переменной среды OVIRT_PASSWORD.url - Строка, содержащая URL API сервера, обычно что-то вроде `https://server.example.com/ovirt-engine/api`. Значение по умолчанию устанавливается переменной среды OVIRT_URL. Необходимо указать либо url, либо hostname. hostname - Строка, содержащая имя хоста сервера, обычно что-то вроде `server.example.com`. Значение по умолчанию устанавливается переменной среды OVIRT_HOSTNAME. Необходимо указать либо url, либо hostname. token - Токен, который будет использоваться вместо входа с именем пользователя/паролем. Значение по умолчанию устанавливается переменной среды OVIRT_TOKEN.insecure - Булево значение, указывающее, следует ли проверять сертификат TLS сервера и имя хоста.ca_file - PEM-файл, содержащий доверенные корневые сертификаты. Сертификат, представленный сервером, будет проверен с использованием этих корневых сертификатов. Если параметр `ca_file` не установлен, используется системный хранилище корневых сертификатов. Значение по умолчанию устанавливается переменной среды OVIRT_CAFILE.kerberos - Булево значение, указывающее, следует ли использовать аутентификацию Kerberos вместо стандартной базовой аутентификации.headers - Словарь HTTP-заголовков, которые будут добавляться к каждому вызову API. | |
| ballooning_enabled (добавлено в 2.5) | Если true, использовать memory ballooning. Memory balloon - это устройство гостевой системы, которое может использоваться для перераспределения/освобождения памяти хоста в зависимости от потребностей виртуальной машины динамическим способом. Таким образом, можно создавать состояния перегрузки памяти. | |
| boot_devices |
| Список загрузочных устройств, которые должны использоваться для загрузки. Например, [ cdrom, hd ]. Значение по умолчанию устанавливается ядром oVirt/RHV. |
| boot_menu (добавлено в 2.5) |
True включает меню выбора загрузочного устройства, False - отключает его. По умолчанию выбирается ядром oVirt/RHV. | |
| cd_iso | ISO-файл из хранилища ISO, который должен быть подключен к виртуальной машине. Если передать пустую строку, CD-диск будет извлечен из виртуальной машины. Если используется с state running или present и виртуальная машина работает, CD-диск будет подключен к виртуальной машине.Если используется с state running или present и виртуальная машина выключена, CD-диск будет постоянно подключен к виртуальной машине. | |
| clone bool |
| Если yes, то диски созданной виртуальной машины будут клонированы и независимы от шаблона. Этот параметр используется только тогда, когда state имеет значение running или present, и виртуальная машина не существовала ранее. |
| clone_permissions bool |
| Если yes, то права доступа шаблона (только прямые, а не унаследованные) будут скопированы в созданную виртуальную машину. Этот параметр используется только тогда, когда state имеет значение running или present, и виртуальная машина не существовала ранее. |
| cloud_init | Словарь со значениями для инициализации виртуальной машины, подобной Unix, с помощью cloud-init. host_name - Имя хоста, которое будет установлено для виртуальной машины при развертывании.timezone - Часовой пояс, который будет установлен для виртуальной машины при развертывании.user_name - Имя пользователя, которое будет использоваться для установки пароля для виртуальной машины при развертывании.root_password - Пароль, который будет установлен для пользователя, указанного параметром user_name. authorized_ssh_keys - Используйте эти SSH-ключи для входа в виртуальную машину.regenerate_ssh_keys - Если True, SSH-ключи будут перегенерированы на виртуальной машине.custom_script - Скрипт cloud-init, который будет выполнен на виртуальной машине при развертывании. Он добавляется в конец скрипта cloud-init, сгенерированного другими параметрами.dns_servers - DNS-серверы, которые будут настроены на виртуальной машине.dns_search - DNS-домены поиска, которые будут настроены на виртуальной машине.nic_boot_protocol - Установите протокол загрузки сетевого интерфейса виртуальной машины. Может быть одним из none, dhcp или static. nic_ip_address - Если протокол загрузки статический, установите этот IP-адрес для сетевого интерфейса виртуальной машины.nic_netmask - Если протокол загрузки статический, установите эту маску сети для сетевого интерфейса виртуальной машины.nic_gateway - Если протокол загрузки статический, установите этот шлюз для сетевого интерфейса виртуальной машины.nic_name - Установите имя сетевого интерфейса виртуальной машины.nic_on_boot - Если True, сетевой интерфейс будет настроен на запуск при загрузке. | |
| cloud_init_nics (добавлено в 2.3) | Список словарей, представляющих сетевые интерфейсы, которые должны быть настроены с помощью cloud-init. Этот параметр используется, когда пользователю нужно настроить несколько сетевых интерфейсов через cloud-init. Если достаточно одного сетевого интерфейса, пользователь должен использовать параметры cloud_init nic_*. Параметры cloud_init nic_* объединяются с параметрами cloud_init_nics. Словарь может содержать следующие значения. nic_boot_protocol - Установите протокол загрузки сетевого интерфейса виртуальной машины. Может быть одним из none, dhcp или static. nic_ip_address - Если протокол загрузки статический, установите этот IP-адрес для сетевого интерфейса виртуальной машины.nic_netmask - Если протокол загрузки статический, установите эту маску сети для сетевого интерфейса виртуальной машины.nic_gateway - Если протокол загрузки статический, установите этот шлюз для сетевого интерфейса виртуальной машины.nic_name - Установите имя сетевого интерфейса виртуальной машины.nic_on_boot - Если True, сетевой интерфейс будет настроен на запуск при загрузке. | |
| cloud_init_persist (добавлено в 2.5) | Если true, параметры cloud_init или sysprep будут сохранены для виртуальной машины, и виртуальная машина не будет запускаться как одноразовая.псевдонимы: sysprep_persist | |
| cluster | Имя кластера, в котором должна быть создана виртуальная машина. Обязательно при создании виртуальной машины. | |
| cluster_mappings (добавлено в 2.5) | Маппер, который сопоставляет имя кластера между OVF виртуальной машины и целевым кластером, к которому должна быть зарегистрирована эта виртуальная машина, актуально, когда регистрируется state. Сопоставление кластеров описывается следующим словарем:source_name: Имя исходного кластера.dest_name: Имя целевого кластера. | |
| comment (добавлено в 2.3) | Комментарий к виртуальной машине. | |
| cpu_cores | Количество ядер виртуальных процессоров виртуальной машины. Значение по умолчанию устанавливается ядром oVirt/RHV. | |
| cpu_mode (добавлено в 2.5) | Режим ЦП виртуальной машины. Это может быть один из следующих: host_passthrough, host_model или custom. Для режима ЦП host_passthrough необходимо установить placement_policy в pinned.Если значение не передано, значение по умолчанию устанавливается ядром oVirt/RHV. | |
| cpu_pinning (добавлено в 2.5) | Топология привязки ЦП для сопоставления ЦП виртуальной машины с ЦП хоста. Топология привязки ЦП - это список словарей, которые могут иметь следующие значения: cpu - Номер ЦП хоста.vcpu - Номер ЦП виртуальной машины. | |
| cpu_shares | Установите доли ЦП для этой виртуальной машины. Значение по умолчанию устанавливается ядром oVirt/RHV. | |
| cpu_sockets | Количество сокетов виртуальных процессоров виртуальной машины. Значение по умолчанию устанавливается ядром oVirt/RHV. |
| cpu_threads (added in 2.5) | Количество виртуальных процессорных сокетов виртуальной машины. Значение по умолчанию устанавливается движком oVirt/RHV. | |
| custom_properties (added in 2.5) | Свойства, отправляемые в VDSM для настройки различных хуков. Пользовательские свойства представляют собой список словарей, которые могут содержать следующие значения: name - Название пользовательского свойства. Например: hugepages, vhost, sap_agent и т. д.regexp - Регулярное выражение для настройки пользовательского свойства.value - Значение для настройки пользовательского свойства. | |
| delete_protected | Если yes, виртуальная машина будет защищена от удаления. Если no, виртуальная машина не будет защищена от удаления. Если значение не передано, используется значение по умолчанию, установленное движком oVirt/RHV. | |
| description (added in 2.3) | Описание виртуальной машины. | |
| disk_format (added in 2.4) |
| Укажите формат диска. Если используется формат cow, диск будет создан как разреженный, поэтому место на диске будет выделено по мере необходимости, также известный как thin provision.Если используется формат raw, место на диске будет выделено сразу, также известный как preallocated.Обратите внимание, что этот параметр не идемпотентен, так как в настоящее время изменить формат диска через API нельзя. Этот параметр учитывается только при указании template и storage domain. |
| disks | Список дисков, которые должны быть подключены к виртуальной машине. Диск описывается следующим словарем. name - Название диска. Требуется указать либо name, либо id. id - Идентификатор диска. Требуется указать либо name, либо id. interface - Интерфейс диска, либо virtio, либо IDE, по умолчанию virtio.bootable - True, если диск должен быть загрузочным, по умолчанию не загрузочный.activate - True, если диск должен быть активирован, по умолчанию активирован.ПРИМЕЧАНИЕ. Этот параметр используется только при state running или present и позволяет только подключать диски. Для более глубокой настройки дисков ВМ используйте модуль ovirt_disks вместо этого. | |
| domain_mappings (added in 2.5) | Сопоставление доменов, отображающее имя домена aaa виртуальной машины OVF с целевым именем домена aaa, к которому должна быть зарегистрирована эта виртуальная машина. Актуально, когда state зарегистрирован. Отображение имен доменов aaa описывается следующим словарем:source_name: Название исходного домена aaa.dest_name: Название целевого домена aaa. | |
| fetch_nested (added in 2.3) | Если True, модуль получит дополнительные данные из API. Он получит идентификаторы дисков ВМ, снимков и т. д. Пользователь может настроить получение других атрибутов вложенных сущностей, указав nested_attributes. | |
| force bool |
| Подробное описание параметра force см. в разделе Synopsis. Он может вести себя по-разному в разных ситуациях. |
| graphical_console (added in 2.5) | Присвоить виртуальной машине графический консоль. Графический консоль — это словарь, который может содержать следующие значения: headless_mode - Если true, отключить графический консоль для этой виртуальной машины.protocol - Графический протокол, список spice, vnc или оба. | |
| high_availability bool |
| Если yes, виртуальная машина будет настроена как высокодоступная. Если no, виртуальная машина не будет настроена как высокодоступная. Если значение не передано, используется значение по умолчанию, установленное движком oVirt/RHV. |
| high_availability_priority (added in 2.5) | Указывает приоритет виртуальной машины в очередях выполнения и миграции. Виртуальные машины с более высоким приоритетом будут запускаться и мигрироваться раньше виртуальных машин с более низким приоритетом. Значение — целое число от 0 до 100. Чем выше значение, тем выше приоритет. Если значение не передано, используется значение по умолчанию, установленное движком oVirt/RHV. | |
| host | Укажите хост, на котором должна выполняться виртуальная машина. По умолчанию хост выбирается планировщиком движка. Этот параметр используется только при state running или present. | |
| id | Идентификатор виртуальной машины для управления. | |
| initrd_path (added in 2.3) | Путь к начальному образы оперативной памяти для использования с ядром, указанным параметром kernel_path. Изображение образов оперативной памяти должно храниться либо в домене ISO, либо в хранилище хоста. | |
| instance_type (added in 2.3) | Имя конфигурации аппаратного обеспечения виртуальной машины. По умолчанию тип экземпляра не используется. | |
| io_threads (added in 2.5) | Количество потоков ввода-вывода, используемых виртуальной машиной. 0 означает отключение многопоточности ввода-вывода. | |
| kernel_params (added in 2.3) | Параметры командной строки ядра (в формате строки) для использования с ядром, указанным параметром kernel_path. | |
| kernel_path (added in 2.3) | Путь к изображению ядра, используемому для загрузки виртуальной машины. Изображение ядра должно храниться либо в домене ISO, либо в хранилище хоста. | |
| kvm (added in 2.3) | Словарь значений для подключения к KVM и импорта виртуальной машины в oVirt. Словарь может содержать следующие значения: name - Имя виртуальной машины KVM.username - Имя пользователя для аутентификации в KVM.password - Пароль для аутентификации в KVM.url - URL, который необходимо передать инструменту virt-v2v для преобразования. Например, qemu:///system. Этот параметр обязателен.drivers_iso - Имя ISO, содержащего драйверы, которые могут использоваться во время процесса преобразования virt-v2v.sparse - Указывает политику выделения места на диске для результирующей виртуальной машины. true для разреженного, false для выделенного. Значение по умолчанию — true.storage_domain - Указывает целевой домен хранения для преобразованных дисков. Этот параметр обязателен. | |
| lease (added in 2.4) | Имя домена хранения, на котором находится аренда виртуальной машины. ПРИМЕЧАНИЕ. Поддерживается с oVirt 4.1. | |
| lun_mappings (added in 2.5) | Сопоставление LUN, которое отображает LUN виртуальной машины OVF с целевым LUN, которое должна содержать эта виртуальная машина. Актуально, когда state зарегистрирован. lun_mappings описывается следующим словарем: - logical_unit_id: Логический номер устройства для идентификации логического устройства, - logical_unit_port: Порт, используемый для подключения к диску LUN, - logical_unit_portal: Портал, используемый для подключения к диску LUN, - logical_unit_address: Адрес хоста хранения блочных данных, - logical_unit_target: Спецификация iSCSI, расположенная на сервере iSCSI, - logical_unit_username: Имя пользователя для подключения к хосту хранения блочных данных, - logical_unit_password: Пароль для подключения к хосту хранения блочных данных, - storage_type: Тип хранилища, на котором находится LUN (iscsi или fcp). | |
| memory | Объем оперативной памяти виртуальной машины. Префикс использует стандарт IEC 60027-2 (например, 1GiB, 1024MiB). Значение по умолчанию устанавливается движком. | |
| memory_guaranteed | Минимальный гарантированный объем оперативной памяти виртуальной машины. Префикс использует стандарт IEC 60027-2 (например, 1GiB, 1024MiB). memory_guaranteed параметр не может быть меньше memory параметра.Значение по умолчанию устанавливается движком. | |
| memory_max (added in 2.5) | Верхняя граница оперативной памяти виртуальной машины, до которой может быть выполнено горячее подключение оперативной памяти. Префикс использует стандарт IEC 60027-2 (например, 1GiB, 1024MiB). Значение по умолчанию устанавливается движком. | |
| name | Имя виртуальной машины для управления. Если виртуальная машина не существует, требуется name. В противном случае можно использовать id или name. | |
| nested_attributes (added in 2.3) | Указывает список атрибутов, которые должны быть получены из API. Этот параметр применим только если fetch_nested равно true. |
| nics | Список сетевых адаптеров (NIC), которые должны быть подключены к виртуальной машине. NIC описывается следующим словарем. name - Название сетевого адаптера.profile_name - Имя профиля, к которому должен быть подключен сетевой адаптер.interface - Тип сетевого интерфейса. Один из следующих: virtio, e1000, rtl8139, по умолчанию virtio.mac_address - Пользовательский MAC-адрес сетевого интерфейса, по умолчанию он извлекается из пула MAC-адресов.ПРИМЕЧАНИЕ - Этот параметр используется только в том случае, когда state находится в состоянии running или present и может создавать только сетевые адаптеры. Для более глубокого управления сетевыми адаптерами ВМ используйте модуль ovirt_nics вместо этого. | |
| numa_nodes (добавлено в 2.6) | Список узлов vNUMA, которые нужно задать для данной ВМ и привязать их к физическому узлу NUMA назначенного хоста. Каждый узел vNUMA описывается следующим словарем: index - Индекс этого узла NUMA (обязательно).memory - Размер памяти узла NUMA в MiB (обязательно).cores - Список индексов ядер процессора ВМ, которые следует включить в этот узел NUMA (обязательно).numa_node_pins - Список индексов физических узлов NUMA, к которым нужно привязать этот виртуальный узел NUMA. | |
| numa_tune_mode (добавлено в 2.6) | Указывает, как применяется распределение памяти для узлов NUMA этой ВМ (актуально, если для этой ВМ заданы узлы NUMA). Может принимать одно из следующих значений: interleave, preferred или strict. Если значение не указано, используется значение по умолчанию, заданное движком oVirt/RHV. | |
| operating_system |
| Операционная система виртуальной машины. Значение по умолчанию устанавливается движком oVirt/RHV. |
| placement_policy (добавлено в 2.5) | Настройка политики размещения виртуальной машины. Политика размещения может иметь следующие значения: migratable - Разрешить ручную и автоматическую миграцию.pinned - Не разрешать миграцию.user_migratable - Разрешить только ручную миграцию.Если значение не указано, используется значение по умолчанию, заданное движком oVirt/RHV. | |
| poll_interval | По умолчанию: 3 | Количество секунд, которое модуль ожидает, прежде чем отправить запрос на получение состояния сущности. |
| quota_id (добавлено в 2.5) | Идентификатор квоты виртуальной машины, который будет использоваться для диска. По умолчанию квота выбирается движком oVirt/RHV. | |
| reassign_bad_macs (добавлено в 2.5) | Булево значение, указывающее, следует ли переназначать некорректные MAC-адреса при регистрации state. | |
| rng_device (добавлено в 2.5) | Генератор случайных чисел (RNG). Можно выбрать один из следующих устройств: urandom, random или hwrng. Для выбора hwrng необходимо сначала включить его в кластере. /dev/urandom используется для версии кластера ≥ 4.1, а /dev/random для версии кластера ≤ 4.0. | |
| role_mappings (добавлено в 2.5) | Маппер, который отображает имя роли между OVF виртуальной машины и целевой ролью, к которой эта виртуальная машина должна быть зарегистрирована, актуально, когда state зарегистрирована. Отображение роли описывается следующим словарем:source_name: Имя исходной роли.dest_name: Имя целевой роли. | |
| serial_console (добавлено в 2.5) |
True включает виртуальную консоль VirtIO, False - отключает ее. По умолчанию выбирается движком oVirt/RHV. | |
| serial_policy (добавлено в 2.3) | Указывает политику для серийного номера виртуальной машины. Поддерживаются следующие варианты. vm - Устанавливает UUID виртуальной машины в качестве ее серийного номера.host - Устанавливает UUID хоста в качестве серийного номера виртуальной машины.custom - Позволяет указать пользовательский серийный номер в serial_policy_value. | |
| serial_policy_value (добавлено в 2.3) | Позволяет указать пользовательский серийный номер. Этот параметр используется только при serial_policy - custom. | |
| smartcard_enabled (добавлено в 2.5) | Если true, использовать аутентификацию с помощью смарт-карты. | |
| soundcard_enabled (добавлено в 2.5) | Если true, звуковая карта добавляется к виртуальной машине. | |
| sso (добавлено в 2.5) |
True включает однозначный вход (SSO) с помощью Guest Agent, False - отключает его. По умолчанию выбирается движком oVirt/RHV. | |
| state |
| Должна ли виртуальная машина работать/останавливаться/быть представленной/отсутствовать/приостановленной/следующая_запуск/зарегистрированной. Когда state — registered, и имя незарегистрированной ВМ принадлежит уже зарегистрированной в движке ВМ в том же ЦОД, то регистрация незарегистрированного шаблона завершается неудачно.Состояние present создаст/обновит ВМ и не изменит ее состояние, если она уже существует. Состояние running создаст/обновит ВМ и запустит ее. Состояние next_run обновляет ВМ, и если у ВМ есть конфигурация следующего запуска, она будет перезагружена. Для более подробного описания состояний см. раздел Примечания.
Состояние registered поддерживается начиная с версии 2.4. |
| stateless | Если yes, виртуальная машина будет установлена как бессостоятельная. Если no, виртуальная машина будет снята с бессостоятельного режима. Если значение не указано, используется значение по умолчанию, заданное движком oVirt/RHV. | |
| storage_domain (добавлено в 2.4) | Имя хранилища, в котором должны быть созданы все диски шаблона. Этот параметр учитывается только при наличии template. ВАЖНО - Этот параметр не идемпотентен, если ВМ существует, и вы задаете другой домен хранения, диск не переместится. | |
| sysprep | Словарь со значениями для инициализации виртуальной машины Windows с помощью sysprep. host_name - Имя хоста, которое будет установлено для виртуальной машины при развертывании.active_directory_ou - Организационная единица Active Directory, которая будет использоваться для входа пользователя.org_name - Название организации, которое будет установлено для виртуальной машины Windows.domain - Домен, который будет установлен для виртуальной машины Windows.timezone - Часовой пояс, который будет установлен для виртуальной машины Windows.ui_language - Язык пользовательского интерфейса виртуальной машины Windows.system_locale - Локализация системы виртуальной машины Windows.input_locale - Локализация ввода виртуальной машины Windows.windows_license_key - Ключ лицензии, который будет установлен для виртуальной машины Windows.user_name - Имя пользователя, которое будет использоваться для установки пароля виртуальной машины Windows.root_password - Пароль, который будет установлен для имени пользователя виртуальной машины Windows. | |
| template | Имя шаблона, которое следует использовать для создания виртуальной машины. Требуется при создании ВМ. Если шаблон не указан и ВМ не существует, ВМ будет создана из шаблона Blank. | |
| template_version (добавлено в 2.3) | Номер версии шаблона, который следует использовать для ВМ. По умолчанию используется последняя доступная версия шаблона. | |
| timeout | По умолчанию: 180 | Время в секундах, которое модуль должен ожидать, пока экземпляр не перейдет в желаемое состояние. |
| timezone (добавлено в 2.3) | Устанавливает смещение часового пояса системных часов гостевой операционной системы. Например, Etc/GMT.
| |
| type |
| Тип виртуальной машины. Значение по умолчанию устанавливается движком oVirt/RHV.
high_performance поддерживается с Ansible 2.5 и oVirt/RHV 4.2. |
| usb_support (добавлено в 2.5) |
True включает поддержку USB, False - отключает ее. По умолчанию выбирается движком oVirt/RHV. |
| use_latest_template_version bool (added in 2.3) |
| Указать, следует ли использовать последнюю версию шаблона при запуске бессостоятельного виртуального машины. Если этот параметр установлен в да, создается бессостоятельная виртуальная машина. |
| vmware (added in 2.3) | Словарь значений, используемых для подключения к VMware и импорта виртуальной машины в oVirt. Словарь может содержать следующие значения. username - Имя пользователя для аутентификации в VMware.password - Пароль для аутентификации в VMware.url - URL, который необходимо передать инструменту virt-v2v для преобразования. Например, vpx://wmware_user@vcenter-host/DataCenter/Cluster/esxi-host?no_verify=1
drivers_iso - Имя ISO, содержащего драйверы, которые можно использовать во время процесса преобразования virt-v2v.sparse - Указывает политику распределения диска для результирующей виртуальной машины. true для разряженного, false для предварительно выделенного. Значение по умолчанию — true.storage_domain - Указывает целевой домен хранения для преобразованных дисков. Это обязательный параметр. | |
| vnic_profile_mappings (added in 2.5) | Преобразователь, который сопоставляет внешний профиль виртуальной сетевой карты с профилем, существующим в модуле, когда state зарегистрирован. Профиль vnic описывается следующим словарем:source_network_name: Имя сети источника.source_profile_name: Имя профиля, связанное с сетью источника.target_profile_id: Идентификатор целевого профиля, подлежащего сопоставлению в модуле. | |
| wait |
True, если модуль должен ожидать, пока сущность не перейдет в нужное состояние. | |
| watchdog (added in 2.5) | Назначить устройство отслеживания для виртуальной машины. Отслеживание — это словарь, который может содержать следующие значения: model - Модель устройства отслеживания. Например: i6300esb, diag288 или null.action - Действие отслеживания, которое должно быть выполнено при срабатывании отслеживания. Например: none, reset, poweroff, pause или dump. | |
| xen (added in 2.3) | Словарь значений, используемых для подключения к XEN и импорта виртуальной машины в oVirt. Словарь может содержать следующие значения. url - URL, который необходимо передать инструменту virt-v2v для преобразования. Например, xen+ssh://root@zen.server. Это обязательный параметр.drivers_iso - Имя ISO, содержащего драйверы, которые можно использовать во время процесса преобразования virt-v2v.sparse - Указывает политику распределения диска для результирующей виртуальной машины. true для разряженного, false для предварительно выделенного. Значение по умолчанию — true.storage_domain - Указывает целевой домен хранения для преобразованных дисков. Это обязательный параметр. |
Примечания
Примечание
- Если виртуальная машина находится в состоянии НЕ ПРИСВОЕНА или НЕИЗВЕСТНО перед любой операцией, модуль завершится ошибкой. Если виртуальная машина находится в состоянии ЗАКЛЮЧЕННЫЙ_ОБРАЗ перед любой операцией, мы пытаемся подождать, пока виртуальная машина не станет ВЫКЛЮЧЕНА. Если виртуальная машина находится в состоянии СОХРАНЯЕТСЯ перед любой операцией, мы пытаемся подождать, пока виртуальная машина не станет ПРИОСТАНОВЛЕНА. Если виртуальная машина находится в состоянии ВЫКЛЮЧАЕТСЯ перед любой операцией, мы пытаемся подождать, пока виртуальная машина не станет ВКЛЮЧЕНА или ВЫКЛЮЧЕНА. Виртуальная машина может перейти в состояние ВКЛЮЧЕНА из состояния ВЫКЛЮЧАЕТСЯ, если в виртуальной машине не работает ACPI или гостевой агент, или если операция завершения работы завершилась неудачно. Когда пользователь указывает ВКЛЮЧЕНА
state, мы всегда ждем, пока виртуальная машина не станет в состоянии ВКЛЮЧЕНА, если виртуальная машина ПЕРЕМЕЩАЕТСЯ, ПЕРЕЗАПУСКАЕТСЯ, ВКЛЮЧАЕТСЯ, ВОССТАНОВЛЕНИЕ_СОСТОЯНИЯ, ОЖИДАНИЕ_ЗАПУСКА. В других состояниях мы запускаем операцию запуска виртуальной машины. Когда пользователь указывает остановленаstate, и если пользователь передает параметрforceсо значением true, мы принудительно останавливаем виртуальную машину в любом состоянии. Если пользователь не передает параметрforce, мы всегда ждем, пока виртуальная машина не станет в состоянии ВКЛЮЧЕНА, если виртуальная машина ПЕРЕМЕЩАЕТСЯ, ПЕРЕЗАПУСКАЕТСЯ, ВКЛЮЧАЕТСЯ, ВОССТАНОВЛЕНИЕ_СОСТОЯНИЯ, ОЖИДАНИЕ_ЗАПУСКА. Если виртуальная машина находится в состоянии ПАУЗА или ПРИОСТАНОВЛЕНА, мы запускаем виртуальную машину. Затем мы аккуратно выключаем виртуальную машину. Когда пользователь указывает приостановленаstate, мы всегда ждем, пока виртуальная машина не станет в состоянии ВКЛЮЧЕНА, если виртуальная машина ПЕРЕМЕЩАЕТСЯ, ПЕРЕЗАПУСКАЕТСЯ, ВКЛЮЧАЕТСЯ, ВОССТАНОВЛЕНИЕ_СОСТОЯНИЯ, ОЖИДАНИЕ_ЗАПУСКА. Если виртуальная машина находится в состоянии ПАУЗА или ВЫКЛЮЧЕНА, мы запускаем виртуальную машину. Затем мы приостанавливаем виртуальную машину. Когда пользователь указывает отсутствуетstate, мы принудительно останавливаем виртуальную машину в любом состоянии и удаляем ее. - Для использования этого модуля необходимо установить oVirt Python SDK. Чтобы убедиться, что он установлен с правильной версией, можно создать следующую задачу: pip: name=ovirt-engine-sdk-python version=4.2.4
Примеры
# Examples don't contain auth parameter for simplicity,
# look at ovirt_auth module to see how to reuse authentication:
- name: Creates a new Virtual Machine from template named 'rhel7_template'
ovirt_vms:
state: present
name: myvm
template: rhel7_template
cluster: mycluster
- name: Register VM
ovirt_vms:
state: registered
storage_domain: mystorage
cluster: mycluster
name: myvm
- name: Register VM using id
ovirt_vms:
state: registered
storage_domain: mystorage
cluster: mycluster
id: 1111-1111-1111-1111
- name: Register VM, allowing partial import
ovirt_vms:
state: registered
storage_domain: mystorage
allow_partial_import: "True"
cluster: mycluster
id: 1111-1111-1111-1111
- name: Register VM with vnic profile mappings and reassign bad macs
ovirt_vms:
state: registered
storage_domain: mystorage
cluster: mycluster
id: 1111-1111-1111-1111
vnic_profile_mappings:
- source_network_name: mynetwork
source_profile_name: mynetwork
target_profile_id: 3333-3333-3333-3333
- source_network_name: mynetwork2
source_profile_name: mynetwork2
target_profile_id: 4444-4444-4444-4444
reassign_bad_macs: "True"
- name: Register VM with mappings
ovirt_vms:
state: registered
storage_domain: mystorage
cluster: mycluster
id: 1111-1111-1111-1111
role_mappings:
- source_name: Role_A
dest_name: Role_B
domain_mappings:
- source_name: Domain_A
dest_name: Domain_B
lun_mappings:
- source_storage_type: iscsi
source_logical_unit_id: 1IET_000d0001
source_logical_unit_port: 3260
source_logical_unit_portal: 1
source_logical_unit_address: 10.34.63.203
source_logical_unit_target: iqn.2016-08-09.brq.str-01:omachace
dest_storage_type: iscsi
dest_logical_unit_id: 1IET_000d0002
dest_logical_unit_port: 3260
dest_logical_unit_portal: 1
dest_logical_unit_address: 10.34.63.204
dest_logical_unit_target: iqn.2016-08-09.brq.str-02:omachace
affinity_group_mappings:
- source_name: Affinity_A
dest_name: Affinity_B
affinity_label_mappings:
- source_name: Label_A
dest_name: Label_B
cluster_mappings:
- source_name: cluster_A
dest_name: cluster_B
- name: Creates a stateless VM which will always use latest template version
ovirt_vms:
name: myvm
template: rhel7
cluster: mycluster
use_latest_template_version: true
# Creates a new server rhel7 Virtual Machine from Blank template
# on brq01 cluster with 2GiB memory and 2 vcpu cores/sockets
# and attach bootable disk with name rhel7_disk and attach virtio NIC
- ovirt_vms:
state: present
cluster: brq01
name: myvm
memory: 2GiB
cpu_cores: 2
cpu_sockets: 2
cpu_shares: 1024
type: server
operating_system: rhel_7x64
disks:
- name: rhel7_disk
bootable: True
nics:
- name: nic1
- name: Run VM with cloud init
ovirt_vms:
name: rhel7
template: rhel7
cluster: Default
memory: 1GiB
high_availability: true
high_availability_priority: 50 # Available from Ansible 2.5
cloud_init:
nic_boot_protocol: static
nic_ip_address: 10.34.60.86
nic_netmask: 255.255.252.0
nic_gateway: 10.34.63.254
nic_name: eth1
nic_on_boot: true
host_name: example.com
custom_script: |
write_files:
- content: |
Hello, world!
path: /tmp/greeting.txt
permissions: '0644'
user_name: root
root_password: super_password
- name: Run VM with cloud init, with multiple network interfaces
ovirt_vms:
name: rhel7_4
template: rhel7
cluster: mycluster
cloud_init_nics:
- nic_name: eth0
nic_boot_protocol: dhcp
nic_on_boot: true
- nic_name: eth1
nic_boot_protocol: static
nic_ip_address: 10.34.60.86
nic_netmask: 255.255.252.0
nic_gateway: 10.34.63.254
nic_on_boot: true
- name: Run VM with sysprep
ovirt_vms:
name: windows2012R2_AD
template: windows2012R2
cluster: Default
memory: 3GiB
high_availability: true
sysprep:
host_name: windowsad.example.com
user_name: Administrator
root_password: SuperPassword123
- name: Migrate/Run VM to/on host named 'host1'
ovirt_vms:
state: running
name: myvm
host: host1
- name: Change VMs CD
ovirt_vms:
name: myvm
cd_iso: drivers.iso
- name: Eject VMs CD
ovirt_vms:
name: myvm
cd_iso: ''
- name: Boot VM from CD
ovirt_vms:
name: myvm
cd_iso: centos7_x64.iso
boot_devices:
- cdrom
- name: Stop vm
ovirt_vms:
state: stopped
name: myvm
- name: Upgrade memory to already created VM
ovirt_vms:
name: myvm
memory: 4GiB
- name: Hot plug memory to already created and running VM (VM won't be restarted)
ovirt_vms:
name: myvm
memory: 4GiB
# Create/update a VM to run with two vNUMA nodes and pin them to physical NUMA nodes as follows:
# vnuma index 0-> numa index 0, vnuma index 1-> numa index 1
- name: Create a VM to run with two vNUMA nodes
ovirt_vms:
name: myvm
cluster: mycluster
numa_tune_mode: "interleave"
numa_nodes:
- index: 0
cores: [0]
memory: 20
numa_node_pins: [0]
- index: 1
cores: [1]
memory: 30
numa_node_pins: [1]
- name: Update an existing VM to run without previously created vNUMA nodes (i.e. remove all vNUMA nodes+NUMA pinning setting)
ovirt_vms:
name: myvm
cluster: mycluster
state: "present"
numa_tune_mode: "interleave"
numa_nodes:
- index: -1
# When change on the VM needs restart of the VM, use next_run state,
# The VM will be updated and rebooted if there are any changes.
# If present state would be used, VM won't be restarted.
- ovirt_vms:
state: next_run
name: myvm
boot_devices:
- network
- name: Import virtual machine from VMware
ovirt_vms:
state: stopped
cluster: mycluster
name: vmware_win10
timeout: 1800
poll_interval: 30
vmware:
url: vpx://user@1.2.3.4/Folder1/Cluster1/2.3.4.5?no_verify=1
name: windows10
storage_domain: mynfs
username: user
password: password
- name: Create vm from template and create all disks on specific storage domain
ovirt_vms:
name: vm_test
cluster: mycluster
template: mytemplate
storage_domain: mynfs
nics:
- name: nic1
- name: Remove VM, if VM is running it will be stopped
ovirt_vms:
state: absent
name: myvm
# Defining a specific quota for a VM:
# Since Ansible 2.5
- ovirt_quotas_facts:
data_center: Default
name: myquota
- ovirt_vms:
name: myvm
sso: False
boot_menu: True
usb_support: True
serial_console: True
quota_id: "{{ ovirt_quotas[0]['id'] }}"
- name: Create a VM that has the console configured for both Spice and VNC
ovirt_vms:
name: myvm
template: mytemplate
cluster: mycluster
graphical_console:
protocol:
- spice
- vnc
Значения возврата
Общие значения возврата описаны здесь, следующие — это поля, уникальные для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| id str | При успехе, если виртуальная машина найдена. | Идентификатор виртуальной машины, которая управляется Пример: 7de90f31-222c-436c-a1ca-7e655bd5b60c |
| vm dict | При успехе, если виртуальная машина найдена. | Словарь всех атрибутов виртуальной машины. Атрибуты виртуальной машины можно найти на вашем экземпляре oVirt/RHV по следующему URL-адресу: http://ovirt.github.io/ovirt-engine-api-model/master/#types/vm. |
Статус
Этот модуль помечен как предварительный, что означает, что он не гарантирует обратную совместимость интерфейса.
Техническое обслуживание
Этот модуль помечен как сообщество, что означает, что он поддерживается сообществом Ansible. См. Поддержка и обслуживание модулей для получения дополнительной информации.
Список других модулей, которые также поддерживаются сообществом Ansible, см. здесь.
Автор
- Ondra Machacek (@machacekondra)
Подсказка
Если вы заметите какие-либо проблемы в этой документации, вы можете изменить этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.6/modules/ovirt_vms_module.html