ovirt_disk - Модуль для управления виртуальными машинами и плавающими дисками в oVirt/RHV
Новая версия 2.2.
Описание
- Модуль для управления виртуальными машинами и плавающими дисками в oVirt/RHV.
Псевдонимы: ovirt_disks
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- python >= 2.7
- ovirt-engine-sdk-python >= 4.2.4
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| 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, если диск должен быть загрузочным. По умолчанию диск, созданный при создании, не является загрузочным. | |
| description (добавлен в 2.5) | Описание образа диска для управления. | |
| download_image_path (добавлен в 2.3) | Путь к файловой системе, куда должен быть загружен диск. Обратите внимание, что у вас должен быть действительный сертификат CA oVirt/RHV в хранилище доверенных сертификатов вашей системы, или вы должны предоставить его в параметре ca_file. Обратите внимание, что диск не загружается, если файл уже существует, но вы можете принудительно загрузить диск, используя параметр force, равный true. | |
| fetch_nested (добавлен в 2.3) | Если True, модуль извлечёт дополнительные данные из API. Он извлечёт идентификаторы дисков ВМ, снимков и т. д. Пользователь может настроить извлечение других атрибутов вложенных сущностей, указав nested_attributes. | |
| force (добавлен в 2.3) | Пожалуйста, ознакомьтесь с документацией image_path, чтобы узнать правильное использование этого параметра. | |
| format |
| Указывает формат диска. Обратите внимание, что этот параметр не идемпотентен, так как в настоящее время невозможно изменить формат диска через API. |
| id | Идентификатор диска для управления. Требуется либо id, либо name. | |
| image_provider (добавлен в 2.4) | Когда state равен exported, диск экспортируется в указанный поставщик образов Glance.**IMPORTANT**Нет надежного способа обеспечить идемпотентность, поэтому каждый раз, когда вы указываете этот параметр, диск экспортируется. Пожалуйста, настройте свою книгу задач соответствующим образом, чтобы не экспортировать диск постоянно. Этот параметр действителен только для шаблонов дисков. | |
| interface |
| Драйвер интерфейса хранения. |
| 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-движком. | |
| quota_id (добавлен в 2.5) | Идентификатор квоты диска, который должен быть использован для диска. По умолчанию квота выбирается oVirt/RHV-движком. | |
| shareable |
True, если диск должен быть доступен для совместного использования. По умолчанию диск, созданный при создании, не является доступным для совместного использования. | |
| size | Размер диска. Размер должен быть указан с использованием IEC-единиц. Например, 10GiB, 1024MiB и т.д. Размер можно только увеличить, а не уменьшить. | |
| sparse (добавлен в 2.5) |
True, если диск должен быть разреженным (также известен как тонкое выделение). Если параметр опущен, диски cow будут созданы как разреженные, а raw диски - как предопределенные Обратите внимание, что этот параметр не идемпотентен, так как в настоящее время невозможно изменить разреженность диска через API. | |
| sparsify (добавлен в 2.4) |
True, если диск должен быть разрежен.
Разрежение освобождает место в образе диска, которое не используется файловой системой. В результате образ займет меньше места на хранилище. Обратите внимание, что этот параметр не идемпотентен, так как невозможно проверить, должен ли диск быть разреженным или нет. | |
| state |
| Должен ли диск виртуальной машины быть присутствующим/отсутствующим/прикрепленным/открепленным. |
| storage_domain | Имя домена хранения, где должен быть создан диск. По умолчанию хранилище выбирается oVirt/RHV-движком. | |
| storage_domains (добавлен в 2.3) | Имена домена хранилища, куда должен быть скопирован диск. **IMPORTANT**Нет надежного способа обеспечить идемпотентность, поэтому каждый раз, когда вы указываете этот параметр, диски копируются. Пожалуйста, настройте свою книгу задач соответствующим образом, чтобы не копировать диски постоянно. Этот параметр действителен только для дисков ВМ и плавающих дисков, шаблоны дисков работают как ожидается. | |
| 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, если модуль должен ожидать, пока сущность не перейдет в нужное состояние. |
Примечания
Примечание
- Для использования данного модуля необходимо установить oVirt Python SDK. Чтобы убедиться, что он установлен с правильной версией, вы можете создать следующую задачу: pip: name=ovirt-engine-sdk-python version=4.0.0
Примеры
# 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
# Defining a specific quota while creating a disk image:
# Since Ansible 2.5
- ovirt_quotas_facts:
data_center: Default
name: myquota
- ovirt_disk:
name: mydisk
size: 10GiB
storage_domain: data
description: somedescriptionhere
quota_id: "{{ ovirt_quotas[0]['id'] }}"
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| disk dict | При успехе, если диск найден и не были переданы vm_id или vm_name. | Словарь всех атрибутов диска. Атрибуты диска можно найти на вашем экземпляре oVirt/RHV по следующему URL: http://ovirt.github.io/ovirt-engine-api-model/master/#types/disk. |
| disk_attachment dict | При успехе, если диск найден и были переданы vm_id или vm_name и была найдена ВМ. | Словарь всех атрибутов подключения диска. Атрибуты подключения диска можно найти на вашем экземпляре oVirt/RHV по следующему URL: http://ovirt.github.io/ovirt-engine-api-model/master/#types/disk_attachment. |
| id str | При успехе, если диск найден. | ID управляемого диска Пример: 7de90f31-222c-436c-a1ca-7e655bd5b60c |
Статус
Этот модуль помечен как превью, что означает, что он не гарантирует обратную совместимость интерфейса.
Автор
- 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.5/modules/ovirt_disk_module.html