ovirt_instance_type – Модуль для управления типами экземпляров в oVirt/RHV
Новая версия с 2.8.
Обзор
- Этот модуль управляет всем жизненным циклом типа экземпляра в oVirt/RHV.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- python >= 2.7
- ovirt-engine-sdk-python >= 4.3.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| auth словарь / обязательно | Словарь со значениями, необходимыми для создания HTTP/HTTPS-соединения с oVirt: | ||
| ca_file строка | Файл PEM, содержащий доверенные сертификаты CA. Представленный сервером сертификат будет проверен с помощью этих сертификатов CA. Если параметр ca_file не задан, используется системное хранилище сертификатов CA.Значение по умолчанию устанавливается переменной среды OVIRT_CAFILE. | ||
| headers словарь | Словарь HTTP-заголовков, которые должны быть добавлены к каждому API-запросу. | ||
| hostname строка | Строка, содержащая имя хоста сервера, обычно что-то вроде `server.example.com`. Значение по умолчанию устанавливается переменной среды OVIRT_HOSTNAME. Требуется либо url, либо hostname. | ||
| insecure булево |
| Флаг булевого типа, указывающий, нужно ли проверять сертификат TLS сервера и имя хоста. | |
| kerberos булево |
| Флаг булевого типа, указывающий, нужно ли использовать аутентификацию Kerberos вместо стандартной аутентификации. | |
| password строка / обязательно | Пароль пользователя. Значение по умолчанию устанавливается переменной среды OVIRT_PASSWORD. | ||
| token строка | Токен, используемый вместо входа с именем пользователя/паролем. Значение по умолчанию устанавливается переменной среды OVIRT_TOKEN. | ||
| url строка | Строка, содержащая URL API сервера, обычно что-то вроде `https://server.example.com/ovirt-engine/api`. Значение по умолчанию устанавливается переменной среды OVIRT_URL. Требуется либо url, либо hostname. | ||
| username строка / обязательно | Имя пользователя, например admin@internal. Значение по умолчанию устанавливается переменной среды OVIRT_USERNAME. | ||
| ballooning_enabled булево |
| Если истина, использовать раздутие памяти. Раздутие памяти — это виртуальное устройство гостевой ОС, которое может использоваться для динамического перераспределения/возвращения памяти хоста в зависимости от потребностей типа виртуальной машины. Это позволяет создавать состояния с избытком памяти. | |
| boot_devices - |
| Список устройств загрузки, которые должны быть использованы для загрузки. Например, [ cdrom, hd ]. Значение по умолчанию устанавливается движком oVirt/RHV. | |
| cpu_cores - | Количество виртуальных ядер процессора типа виртуальной машины. Значение по умолчанию устанавливается движком oVirt/RHV. | ||
| cpu_mode - | Режим процессора типа виртуальной машины. Может быть одним из следующих: host_passthrough, host_model или custom. Для типа процессора host_passthrough необходимо установить placement_policy в pinned.Если значение не передано, значение по умолчанию устанавливается движком oVirt/RHV. | ||
| cpu_pinning - | Топология привязки процессора для сопоставления процессора типа виртуальной машины с процессором хоста. Топология привязки процессора — это список словарей, которые могут содержать следующие значения: cpu - Номер процессора хоста.vcpu - Номер процессора типа виртуальной машины. | ||
| cpu_sockets - | Количество виртуальных сокетов процессора типа виртуальной машины. Значение по умолчанию устанавливается движком oVirt/RHV. | ||
| cpu_threads - | Количество виртуальных потоков процессора типа виртуальной машины. Значение по умолчанию устанавливается движком oVirt/RHV. | ||
| description - | Описание типа виртуальной машины. | ||
| fetch_nested булево добавлен в 2.3 |
| Если истина, модуль извлечёт дополнительные данные из API. Будут извлечены идентификаторы дисков, снимков и т.д. ВМ. Пользователь может настроить извлечение других атрибутов вложенных сущностей, указав nested_attributes. | |
| graphical_console - | Назначить графический консоль типу виртуальной машины. Графический консоль - словарь, который может содержать следующие значения: headless_mode - Если истина, отключить графический консоль для данного типа виртуальной машины.protocol - Графический протокол, список spice, vnc или обоих. | ||
| high_availability булево |
| Если да, тип виртуальной машины будет настроен как высокодоступный. Если нет, тип виртуальной машины не будет настроен как высокодоступный. Если значение не передано, значение по умолчанию устанавливается движком oVirt/RHV. | |
| high_availability_priority - | Указывает приоритет типа виртуальной машины в очередях запуска и миграции. Тип виртуальной машины с более высоким приоритетом будет запущен и мигрирован раньше типов виртуальных машин с более низким приоритетом. Значение — целое число от 0 до 100. Чем выше значение, тем выше приоритет. Если значение не передано, значение по умолчанию устанавливается движком oVirt/RHV. | ||
| host - | Указать хост, на котором должен выполняться тип виртуальной машины. По умолчанию хост выбирается планировщиком движка. Этот параметр используется только когда state равен running или present. | ||
| id - | ID типа виртуальной машины для управления. | ||
| io_threads - | Количество потоков ввода-вывода, используемых типом виртуальной машины. 0 означает отключение потоков ввода-вывода. | ||
| memory - | Объем памяти типа виртуальной машины. Префикс использует стандарт IEC 60027-2 (например, 1GiB, 1024MiB). Значение по умолчанию устанавливается движком. | ||
| memory_guaranteed - | Минимальный гарантированный объем памяти типа виртуальной машины. Префикс использует стандарт IEC 60027-2 (например, 1GiB, 1024MiB). memory_guaranteed параметр не может быть меньше параметра memory. Значение по умолчанию устанавливается движком. | ||
| memory_max - | Верхний предел памяти типа виртуальной машины, до которого может быть выполнено горячее подключение памяти. Префикс использует стандарт IEC 60027-2 (например, 1GiB, 1024MiB). Значение по умолчанию устанавливается движком. | ||
| name - | Имя типа виртуальной машины для управления. Если тип виртуальной машины не существует, name требуется. В противном случае, id или name могут быть использованы. | ||
| nested_attributes список добавлен в 2.3 | Указывает список атрибутов, которые должны быть извлечены из API. Этот параметр применяется только если fetch_nested равен истина. | ||
| nics - | Список сетевых адаптеров (NIC), которые должны быть подключены к виртуальной машине. NIC описывается следующим словарем. name - Имя сетевого адаптера.profile_name - Имя профиля, к которому должен быть подключен сетевой адаптер.interface - Тип сетевого интерфейса. Один из следующих: virtio, e1000, rtl8139, по умолчанию virtio.mac_address - Пользовательский MAC-адрес сетевого интерфейса, по умолчанию он берется из пула MAC-адресов.ПРИМЕЧАНИЕ - Этот параметр используется только в том случае, если state имеет значение running или present и может создавать только сетевые адаптеры. Для более глубокой настройки сетевых адаптеров типа экземпляра используйте модуль ovirt_nics вместо этого. | ||
| operating_system - | Операционная система типа экземпляра. Значение по умолчанию устанавливается движком oVirt/RHV. Возможные значения: debian_7, freebsd, freebsdx64, other, other_linux, other_linux_ppc64, other_ppc64, rhel_3, rhel_4, rhel_4x64, rhel_5, rhel_5x64, rhel_6, rhel_6x64, rhel_6_ppc64, rhel_7x64, rhel_7_ppc64, sles_11, sles_11_ppc64, ubuntu_12_04, ubuntu_12_10, ubuntu_13_04, ubuntu_13_10, ubuntu_14_04, ubuntu_14_04_ppc64, windows_10, windows_10x64, windows_2003, windows_2003x64, windows_2008, windows_2008x64, windows_2008r2x64, windows_2008R2x64, windows_2012x64, windows_2012R2x64, windows_7, windows_7x64, windows_8, windows_8x64, windows_xp | ||
| placement_policy - | Настройка политики размещения типа экземпляра. Политика размещения может иметь следующие значения: migratable - Разрешить ручную и автоматическую миграцию.pinned - Не разрешать миграцию.user_migratable - Разрешить только ручную миграцию.Если значение не указано, используется значение по умолчанию, заданное движком oVirt/RHV. | ||
| poll_interval целое число | По умолчанию: 3 | Количество секунд, которое модуль ожидает, прежде чем отправить другой запрос опроса состояния сущности. | |
| rng_bytes - | Количество байтов, разрешенных к потреблению за период. | ||
| rng_device - | Генератор случайных чисел (RNG). Вы можете выбрать один из следующих устройств: urandom, random или hwrng. Для выбора hwrng необходимо сначала включить его в кластере. /dev/urandom используется для версий кластера ≥ 4.1, а /dev/random для версий кластера ≤ 4.0 | ||
| rng_period - | Продолжительность одного периода в миллисекундах. | ||
| serial_console логическое значение |
|
True — включить виртуальную последовательную консоль, False — отключить её. По умолчанию выбирается движком oVirt/RHV. | |
| smartcard_enabled логическое значение |
| Если true, использовать аутентификацию с помощью смарт-карты. | |
| soundcard_enabled логическое значение |
| Если true, звуковая карта добавляется к типу экземпляра. | |
| state - |
| Тип экземпляра должен быть present/absent.
Состояние present создаст/обновит тип экземпляра и не изменит его состояние, если он уже существует. | |
| timeout целое число | По умолчанию: 180 | Количество секунд, в течение которого модуль должен ждать, пока экземпляр не перейдет в нужное состояние. | |
| usb_support логическое значение |
|
True — включить поддержку USB, False — отключить её. По умолчанию выбирается движком oVirt/RHV. | |
| virtio_scsi логическое значение |
| Если true, будет включен virtio scsi. | |
| wait логическое значение |
| yes если модуль должен ждать, пока сущность перейдет в нужное состояние. | |
| watchdog - | Назначение устройства watchdog для типа экземпляра. Watchdog — словарь, который может содержать следующие значения: model - Модель устройства watchdog. Например: i6300esb, diag288 или null.action - Действие watchdog, которое должно быть выполнено при срабатывании watchdog. Например: none, reset, poweroff, pause или dump. | ||
Примечания
Примечание
- Для использования этого модуля необходимо установить oVirt Python SDK. Чтобы убедиться, что он установлен с правильной версией, можно создать следующую задачу: pip: name=ovirt-engine-sdk-python version=4.3.0
Примеры
# Examples don't contain auth parameter for simplicity,
# look at ovirt_auth module to see how to reuse authentication:
# Create instance type
- name: Create instance type
ovirt_instance_type:
state: present
name: myit
rng_device: hwrng
rng_bytes: 200
rng_period: 200
soundcard_enabled: true
virtio_scsi: true
boot_devices:
- network
# Remove instance type
- ovirt_instance_type:
state: absent
name: myit
# Create instance type with predefined memory and cpu limits.
- ovirt_instance_type:
state: present
name: myit
memory: 2GiB
cpu_cores: 2
cpu_sockets: 2
nics:
- name: nic1
# Enable usb support and serial console
- ovirt_instance_type:
name: myit
usb_support: True
serial_console: True
# Use graphical console with spice and vnc
- name: Create a instance type that has the console configured for both Spice and VNC
ovirt_instance_type:
name: myit
graphical_console:
protocol:
- spice
- vnc
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| id строка | При успехе, если тип экземпляра найден. | ID типа экземпляра, который управляется Пример: 7de90f31-222c-436c-a1ca-7e655bd5b60c |
| instancetype словарь | При успехе, если тип экземпляра найден. | Словарь всех атрибутов типа экземпляра. Атрибуты типа экземпляра можно найти на вашем экземпляре oVirt/RHV по следующему URL-адресу: http://ovirt.github.io/ovirt-engine-api-model/master/#types/instance_type. |
Состояние
- Этот модуль не гарантирует обратную совместимость интерфейса. [preview]
- Этот модуль поддерживается сообществом Ansible. [community]
Авторы
- Martin Necas (@mnecas)
- Ondra Machacek (@machacekondra)
Подсказка
Если вы заметите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.8/modules/ovirt_instance_type_module.html