ovirt_disk - Модуль для управления виртуальными машинами и плавающими дисками в oVirt/RHV
Новое в версии 2.2.
- Обзор
- Требования (к хосту, на котором выполняется модуль)
- Параметры
- Примеры
- Значения возврата
- Примечания
Обзор
- Модуль для управления виртуальными машинами и плавающими дисками в oVirt/RHV.
Требования (к хосту, на котором выполняется модуль)
- python >= 2.7
- ovirt-engine-sdk-python >= 4.0.0
Параметры
| параметр | обязателен | по умолчанию | варианты | комментарии |
|---|---|---|---|---|
| auth | да | Словарь со значениями, необходимыми для создания HTTP/HTTPS-соединения с oVirt: username[обязательно] - Имя пользователя, например admin@internal. Значение по умолчанию устанавливается переменной среды OVIRT_USERNAME.password[обязательно] - Пароль пользователя. Значение по умолчанию устанавливается переменной среды OVIRT_PASSWORD.url[обязательно] - Строка, содержащая базовый URL-адрес сервера, обычно что-то вроде `https://server.example.com/ovirt-engine/api`. Значение по умолчанию устанавливается переменной среды OVIRT_URL.token - Токен, используемый вместо входа с именем пользователя/паролем. Значение по умолчанию устанавливается переменной среды OVIRT_TOKEN.insecure - Логический флаг, указывающий, следует ли проверять сертификат TLS сервера и имя хоста.ca_file - PEM-файл, содержащий доверенные сертификаты CA. Представленный сервером сертификат будет проверен с помощью этих сертификатов CA. Если параметр `ca_file` не задан, используется системный хранилище сертификатов CA. Значение по умолчанию устанавливается переменной среды OVIRT_CAFILE.kerberos - Логический флаг, указывающий, следует ли использовать аутентификацию Kerberos вместо стандартной аутентификации.headers - Словарь HTTP-заголовков, которые необходимо добавить к каждому API-запросу. | ||
| bootable | нет |
True, если диск должен быть загрузочным. По умолчанию, когда диск создается, он не является загрузочным. | ||
| download_image_path (добавлено в 2.3)
| нет | Путь к файловой системе, куда должен быть загружен диск. Обратите внимание, что у вас должен быть действительный сертификат CA oVirt/RHV в хранилище доверенных сертификатов системы, или вы должны предоставить его в параметре ca_file. Обратите внимание, что диск не загружается, если файл уже существует, но вы можете принудительно загрузить диск при использовании параметра force (истина). | ||
| fetch_nested (добавлено в 2.3)
| нет | Если True, модуль получит дополнительные данные из API. Он получит идентификаторы дисков, снимков и т. д. виртуальных машин. Пользователь может настроить запрос других атрибутов вложенных сущностей, указав nested_attributes. | ||
| force (добавлено в 2.3)
| нет | Обратитесь к документации image_path для правильного использования этого параметра. | ||
| format | нет |
| Укажите формат диска. Если используется формат (cow), диск будет создан как разряженный, поэтому место будет выделено для тома по мере необходимости, также известный как thin provision. Если используется формат (raw), хранилище диска будет выделено сразу, также известный как preallocated. Обратите внимание, что этот параметр не идемпотентный, поскольку в настоящее время невозможно изменить формат диска через API. | |
| id | нет | Идентификатор диска для управления. Требуется либо id, либо name. | ||
| image_provider (добавлено в 2.4)
| нет | Когда state равен exported, диск экспортируется в указанный поставщик изображений Glance.**IMPORTANT**Нет надежного способа обеспечить идемпотентность, поэтому каждый раз при указании этого параметра диск экспортируется, поэтому, пожалуйста, настройте свои playbook так, чтобы не экспортировать диск все время. Этот параметр допустим только для шаблонов дисков. | ||
| interface | нет | virtio |
| Драйвер интерфейса хранения. |
| logical_unit | нет | Словарь, описывающий LUN, который необходимо подключить напрямую к виртуальной машине: address - Адрес сервера хранения. Используется iSCSI.port - Порт сервера хранения. Используется iSCSI.target - iSCSI-цель.lun_id - Идентификатор LUN.username - Имя пользователя CHAP, используемого для доступа к серверу хранения. Используется iSCSI.password - Пароль пользователя CHAP, используемого для доступа к серверу хранения. Используется iSCSI.storage_type - Тип хранилища, либо fcp, либо iscsi. | ||
| name | нет | Имя диска для управления. Требуется либо id, либо name/alias. псевдонимы: alias | ||
| nested_attributes (добавлено в 2.3)
| нет | Указывает список атрибутов, которые должны быть получены из API. Этот параметр применяется только когда fetch_nested равен true. | ||
| openstack_volume_type (добавлено в 2.4)
| нет | Имя типа объема OpenStack. Это допустимо при работе с cinder. | ||
| poll_interval | нет | 3 | Количество секунд, в течение которого модуль ждет, пока сущность не перейдет в желаемое состояние. | |
| profile | нет | Имя профиля диска, который необходимо прикрепить к диску. По умолчанию профиль выбирается движком oVirt/RHV. | ||
| shareable | нет |
True, если диск должен быть доступен для совместного использования. По умолчанию, при создании диска, он не является доступным для совместного использования. | ||
| size | нет | Размер диска. Размер должен быть указан с использованием стандартных единиц IEC. Например, 10GiB, 1024MiB и т. д. Размер может быть только увеличен, но не уменьшен. | ||
| sparsify (добавлено в 2.4)
| нет |
True, если диск должен быть сжат. Сжатие освобождает место в образе диска, которое не используется файловой системой. В результате образ займет меньше места на хранилище. Обратите внимание, что этот параметр не является идемпотентным, так как невозможно проверить, должен ли диск быть сжат или нет. | ||
| state | нет | present |
| Должен ли виртуальный диск быть present/absent/attached/detached. |
| storage_domain | нет | Имя домена хранилища, где должен быть создан диск. По умолчанию хранилище выбирается движком oVirt/RHV. | ||
| storage_domains (добавлено в 2.3)
| нет | Имена домена хранилища, куда должен быть скопирован диск. **IMPORTANT**Нет надежного способа обеспечить идемпотентность, поэтому каждый раз при указании этого параметра диски копируются. Пожалуйста, настройте свои playbook таким образом, чтобы не копировать диски все время. Это действует только для дисков виртуальных машин и плавающих дисков, шаблоны дисков работают как ожидается. | ||
| timeout | нет | 180 | Время в секундах, в течение которого модуль должен ждать, пока экземпляр не перейдет в желаемое состояние. | |
| upload_image_path (добавлено в 2.3)
| нет | Путь к изображению диска, которое должно быть загружено. Обратите внимание, что в настоящее время мы поддерживаем только совместимую версию 0.10 диска qcow. Обратите внимание, что у вас должен быть действительный сертификат CA oVirt/RHV в хранилище доверенных сертификатов системы, или вы должны предоставить его в параметре ca_file.Обратите внимание, что нет надежного способа обеспечить идемпотентность, поэтому если вы хотите загрузить диск даже если диск с id, или name уже существует, используйте force true. Если вы будете использовать force false, которое является значением по умолчанию, то образ диска не будет загружен. | ||
| vm_id | нет | Идентификатор виртуальной машины для управления. Требуется либо vm_id, либо vm_name, если state равен attached или detached. | ||
| vm_name | нет | Имя виртуальной машины для управления. Требуется либо vm_id, либо vm_name, если state равен attached или detached. | ||
| wait | нет |
True, если модуль должен ждать, пока сущность не перейдет в желаемое состояние. |
Примеры
# Examples don't contain auth parameter for simplicity,
# look at ovirt_auth module to see how to reuse authentication:
# Create and attach new disk to VM
- ovirt_disk:
name: myvm_disk
vm_name: rhel7
size: 10GiB
format: cow
interface: virtio
storage_domain: data
# Attach logical unit to VM rhel7
- ovirt_disk:
vm_name: rhel7
logical_unit:
target: iqn.2016-08-09.brq.str-01:omachace
id: 1IET_000d0001
address: 10.34.63.204
interface: virtio
# Detach disk from VM
- ovirt_disk:
state: detached
name: myvm_disk
vm_name: rhel7
size: 10GiB
format: cow
interface: virtio
# Upload local image to disk and attach it to vm:
# Since Ansible 2.3
- ovirt_disk:
name: mydisk
vm_name: myvm
interface: virtio
size: 10GiB
format: cow
image_path: /path/to/mydisk.qcow2
storage_domain: data
# Download disk to local file system:
# Since Ansible 2.3
- ovirt_disk:
id: 7de90f31-222c-436c-a1ca-7e655bd5b60c
download_image_path: /home/user/mydisk.qcow2
# Export disk as image to Glance domain
# Since Ansible 2.4
- ovirt_disks:
id: 7de90f31-222c-436c-a1ca-7e655bd5b60c
image_provider: myglance
state: exported
Значения возврата
Общие значения возврата описаны здесь Значения возврата, следующие поля уникальны для данного модуля:
| name | description | returned | type | sample |
|---|---|---|---|---|
| disk | Словарь всех атрибутов диска. Атрибуты диска можно найти на вашем экземпляре oVirt/RHV по следующему адресу: http://ovirt.github.io/ovirt-engine-api-model/master/#types/disk. | При успехе, если диск найден и не были переданы C(vm_id) или C(vm_name). | dict | |
| disk_attachment | Словарь всех атрибутов подключения диска. Атрибуты подключения диска можно найти на вашем экземпляре oVirt/RHV по следующему адресу: http://ovirt.github.io/ovirt-engine-api-model/master/#types/disk_attachment. | При успехе, если диск найден и были переданы C(vm_id) или C(vm_name), и виртуальная машина найдена. | dict | |
| id | ID управляемого диска | При успехе, если диск найден. | str | 7de90f31-222c-436c-a1ca-7e655bd5b60c |
Примечания
Примечание
- Для использования данного модуля необходимо установить oVirt Python SDK. Чтобы убедиться, что он установлен с правильной версией, можно создать следующую задачу: pip: name=ovirt-engine-sdk-python version=4.0.0
Статус
Этот модуль помечен как превью, что означает, что он не гарантирует обратную совместимость интерфейса.
Для получения помощи в разработке модулей, если вы заинтересованы, пожалуйста, прочтите Справочную информацию по сообществу и участие в разработке, Тестирование Ansible и Разработка модулей.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/ovirt_disk_module.html