Spec-Zone.ru › Ansible

Модуль ovirt.ovirt.ovirt_disk — управление дисками виртуальных машин и плавающими дисками в oVirt/RHV

Примечание

Этот модуль входит в коллекцию ovirt.ovirt (версия 3.2.2).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в состав ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Чтобы установить её, используйте: ansible-galaxy collection install ovirt.ovirt. Для использования этого модуля необходимы дополнительные требования; подробности см. в разделе Требования.

Чтобы использовать модуль в плейбуке, укажите: ovirt.ovirt.ovirt_disk.

Добавлено в ovirt.ovirt 1.0.0

  • Обзор
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Обзор

  • Модуль для управления дисками виртуальных машин и плавающими дисками в oVirt/RHV.
  • ВНИМАНИЕ: если вы устанавливаете коллекцию из Ansible Galaxy, необходимо установить пакет «qemu-img».

Требования

На хосте, выполняющем этот модуль, должны быть установлены следующие компоненты.

  • python >= 2.7
  • ovirt-engine-sdk-python >= 4.4.0

Параметры

Параметр

Комментарии

activate

boolean

True, если диск следует активировать.

При создании диска виртуальной машины этому параметру присваивается значение True.

Варианты:

  • false
  • true

auth

dictionary / обязательный

Словарь со значениями, необходимыми для создания HTTP/HTTPS-подключения к oVirt:

ca_file

string

PEM-файл, содержащий доверенные сертификаты центра сертификации.

Сертификат, предоставленный сервером, будет проверен с помощью этих сертификатов центра сертификации.

Если параметр ca_file не задан, используется общесистемное хранилище сертификатов центров сертификации.

Значение по умолчанию задается переменной окружения OVIRT_CAFILE.

compress

boolean

Флаг, указывающий, используется ли сжатие для подключения.

Варианты:

  • false
  • true ← (по умолчанию)

headers

dictionary

Словарь HTTP-заголовков, добавляемых к каждому вызову API.

hostname

string

Строка с именем хоста сервера, обычно в формате `server.example.com`.

Значение по умолчанию задается переменной окружения OVIRT_HOSTNAME.

Требуется указать либо url, либо hostname.

insecure

boolean

Логический флаг, указывающий, следует ли проверять сертификат TLS и имя хоста сервера.

Варианты:

  • false ← (по умолчанию)
  • true

kerberos

boolean

Логический флаг, указывающий, следует ли использовать аутентификацию Kerberos вместо стандартной базовой аутентификации.

Варианты:

  • false
  • true

password

string

Пароль пользователя.

Значение по умолчанию задается переменной окружения OVIRT_PASSWORD.

timeout

integer

Количество секунд ожидания ответа.

По умолчанию: 0

token

string

Токен, используемый вместо входа по имени пользователя и паролю.

Значение по умолчанию задается переменной окружения OVIRT_TOKEN.

url

string

Строка с URL API сервера, обычно в формате `https://server.example.com/ovirt-engine/api`.

Значение по умолчанию задается переменной окружения OVIRT_URL.

Требуется указать либо url, либо hostname.

username

string

Имя пользователя, например admin@internal.

Значение по умолчанию задается переменной окружения OVIRT_USERNAME.

backup

string

добавлено в ovirt.ovirt 1.1.0

Поддерживаемое диском поведение резервного копирования.

Варианты:

  • "incremental"

bootable

boolean

True, если диск должен быть загрузочным. По умолчанию создаваемый диск не является загрузочным.

Варианты:

  • false
  • true

content_type

string

Укажите, является ли диск диском данных, образом ISO или одним из типов дисков Hosted Engine.

Типы содержимого дисков Hosted Engine доступны в Engine 4.3+ и Ansible 2.8.

Варианты:

  • "data" ← (по умолчанию)
  • "iso"
  • "hosted_engine"
  • "hosted_engine_sanlock"
  • "hosted_engine_metadata"
  • "hosted_engine_configuration"

description

string

Описание управляемого образа диска.

download_image_path

string

Путь в файловой системе, по которому следует загрузить диск.

Обратите внимание, что в системном хранилище сертификатов должен быть действительный сертификат центра сертификации oVirt/RHV Engine или его необходимо указать в параметре ca_file.

Обратите внимание: диск не загружается, если файл уже существует, но его можно загрузить принудительно, указав force I (true).

fetch_nested

boolean

Если значение равно True, модуль получит дополнительные данные из API.

Будут получены идентификаторы дисков виртуальных машин, снимков и т. д. Пользователь может указать, какие еще атрибуты вложенных сущностей получать, задав nested_attributes.

Варианты:

  • false ← (по умолчанию)
  • true

force

boolean

Ознакомьтесь с документацией image_path, чтобы узнать, как правильно использовать этот параметр.

Варианты:

  • false ← (по умолчанию)
  • true

format

string

Укажите формат диска.

Обратите внимание, что этот параметр не обеспечивает идемпотентность, так как в настоящее время изменить формат диска через API невозможно.

Варианты:

  • "raw"
  • "cow" ← (по умолчанию)

host

string

Если указано имя гипервизора, информация о нижележащем хранилище вновь созданного или существующего диска будет обновлена (размер диска, серийный номер, идентификатор продукта, идентификатор поставщика и т. д.). Указанный хост будет использоваться для сбора информации о хранилище. Этот параметр применим только к дискам passthrough. Для его использования необходимо указать как минимум logical_unit.id.

id

string

Идентификатор управляемого диска. Требуется указать либо id, либо name/alias.

image_provider

string

Если state имеет значение exported, диск экспортируется в указанный поставщик образов Glance.

Если state имеет значение imported, диск импортируется из указанного поставщика образов Glance.

**IMPORTANT**

Надежного способа обеспечить идемпотентность нет, поэтому при каждом указании этого параметра диск экспортируется. Настройте плейбук так, чтобы диск не экспортировался при каждом запуске. Этот параметр применим только к дискам шаблонов.

interface

string

Драйвер интерфейса хранилища.

Этот параметр обязателен при создании нового диска.

Варианты:

  • "virtio"
  • "ide"
  • "sata"
  • "virtio_scsi"

logical_unit

dictionary

Словарь с описанием LUN, который будет напрямую подключен к виртуальной машине:

address

string

Адрес сервера хранилища. Используется iSCSI.

id

string

Идентификатор LUN.

password

string

Пароль CHAP пользователя, используемый для доступа к серверу хранилища. Используется iSCSI.

port

string

Порт сервера хранилища. Используется iSCSI.

storage_type

string

Тип хранилища: fcp или iscsi.

target

string

Цель iSCSI.

username

string

Имя пользователя CHAP, используемое для доступа к серверу хранилища. Используется iSCSI.

max_workers

integer

добавлено в ovirt.ovirt 1.7.0

Количество рабочих процессов, используемых для загрузки или скачивания образа.

Использование нескольких рабочих процессов может ускорить выполнение операции.

name

псевдонимы: alias

string

Имя управляемого диска. Требуется указать либо id, либо name/alias.

nested_attributes

list / элементы=string

Задает список атрибутов, которые следует получить из API.

Этот параметр применяется только, если fetch_nested имеет значение true.

По умолчанию: []

openstack_volume_type

string

Имя типа тома OpenStack. Применяется при работе с Cinder.

pass_discard

boolean

добавлено в ovirt.ovirt 1.2.0

Определяет, передает ли виртуальная машина команды discard в хранилище.

Варианты:

  • false
  • true

poll_interval

integer

Количество секунд, по истечении которых модуль отправляет очередной запрос для проверки состояния сущности.

По умолчанию: 3

profile

string

Имя профиля диска, назначаемого диску. По умолчанию профиль выбирает механизм oVirt/RHV.

propagate_errors

boolean

добавлено в ovirt.ovirt 1.2.0

Указывает, должны ли ошибки диска приводить к приостановке виртуальной машины или же ошибки диска должны

передаваться гостевой операционной системе.

Варианты:

  • false
  • true

quota_id

string

Идентификатор квоты диска, используемой для диска. По умолчанию квоту выбирает механизм oVirt/RHV.

read_only

boolean

True, если диск должен быть доступен только для чтения. По умолчанию создаваемый диск не доступен только для чтения.

Варианты:

  • false
  • true

scsi_passthrough

string

добавлено в ovirt.ovirt 1.2.0

Указывает, включен ли проброс SCSI и какая политика используется.

Значения `filtered`/`unfiltered` включают проброс SCSI для диска LUN с непривилегированным/привилегированным вводом-выводом SCSI.

Чтобы отключить проброс SCSI, задайте значение `disabled`.

Варианты:

  • "disabled"
  • "filtered"
  • "unfiltered"

shareable

boolean

True, если диск должен быть общим. По умолчанию создаваемый диск не является общим.

Варианты:

  • false
  • true

size

string

Размер диска. Размер следует указывать в единицах стандарта IEC, например 10GiB, 1024MiB и т. д.

Размер можно только увеличить, но не уменьшить.

Если на диск ссылается name и он подключен к виртуальной машине, обязательно укажите vm_name/vm_id, чтобы не увеличить другой диск, не подключенный к виртуальной машине.

sparse

boolean

True, если диск должен быть разреженным (также известным как тонкое выделение ресурсов). Если параметр не указан, диски cow создаются разреженными, а диски raw — с предварительным выделением ресурсов.

Обратите внимание, что этот параметр не обеспечивает идемпотентность, так как в настоящее время изменить разреженность диска через API невозможно.

Варианты:

  • false
  • true

sparsify

boolean

True, если диск следует сделать разреженным.

Операция разрежения освобождает место в образе диска, не используемое файловой системой. В результате образ занимает меньше места в хранилище.

Обратите внимание, что этот параметр не обеспечивает идемпотентность, поскольку невозможно проверить, следует ли делать диск разреженным.

Варианты:

  • false
  • true

state

string

Должен ли диск виртуальной машины присутствовать/отсутствовать/быть подключен/отключен/экспортирован/импортирован.

Варианты:

  • "present" ← (по умолчанию)
  • "absent"
  • "attached"
  • "detached"
  • "exported"
  • "imported"

storage_domain

string

Имя домена хранилища, в котором следует создать диск.

storage_domains

list / элементы=string

Имена доменов хранилища, в которые следует скопировать диск.

**IMPORTANT**

Надежного способа обеспечить идемпотентность нет, поэтому при каждом указании этого параметра диски копируются. Настройте плейбук так, чтобы диски не копировались при каждом запуске. Это применимо только к дискам виртуальных машин и плавающим дискам; с дисками шаблонов параметр работает ожидаемым образом.

timeout

integer

Время в секундах, в течение которого модуль должен ожидать перехода экземпляра в требуемое состояние.

По умолчанию: 180

upload_image_path

псевдонимы: image_path

строка

Путь к образу диска, который необходимо загрузить.

Обратите внимание: если size не указано, размер диска будет определяться размером указанного образа.

Обратите внимание: в настоящее время поддерживается только версия совместимости 0.10 диска qcow.

Обратите внимание: в хранилище доверенных сертификатов вашей системы должен быть действительный центр сертификации oVirt/RHV, либо его необходимо указать в параметре ca_file.

Обратите внимание: надежного способа обеспечить идемпотентность нет. Поэтому, если вы хотите загрузить диск, даже если диск с id или name уже существует, задайте для force значение true. Если задать для force значение false (по умолчанию), образ диска загружен не будет.

Обратите внимание: чтобы загрузить ISO, для format необходимо задать значение ‘raw’.

uses_scsi_reservation

логическое значение

добавлено в ovirt.ovirt 1.2.0

Определяет, включено ли резервирование SCSI для этого диска.

Варианты:

  • false
  • true

vm_id

строка

Идентификатор управляемой виртуальной машины. Если для state задано значение attached или detached, необходимо указать либо vm_id, либо vm_name.

vm_name

строка

Имя управляемой виртуальной машины. Если для state задано значение attached или detached, необходимо указать либо vm_id, либо vm_name.

wait

логическое значение

yes, должен ли модуль ожидать перехода объекта в требуемое состояние.

Варианты:

  • false
  • true ← (по умолчанию)

wipe_after_delete

логическое значение

Если для диска включен параметр «Очистка после удаления», сначала будет выполнена очистка диска.

Варианты:

  • false
  • true

Примечания

Примечание

  • Для использования этого модуля необходимо установить 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:

# Create and attach new disk to VM
- ovirt.ovirt.ovirt_disk:
    name: myvm_disk
    vm_name: rhel7
    size: 10GiB
    format: cow
    interface: virtio
    storage_domain: data

# Attach logical unit to VM rhel7
- ovirt.ovirt.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.ovirt.ovirt_disk:
    state: detached
    name: myvm_disk
    vm_name: rhel7
    size: 10GiB
    format: cow
    interface: virtio

# Change Disk Name
- ovirt.ovirt.ovirt_disk:
    id: 00000000-0000-0000-0000-000000000000
    storage_domain: data
    name: "new_disk_name"
    vm_name: rhel7

# Upload local image to disk and attach it to vm:
# Since Ansible 2.3
- ovirt.ovirt.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.ovirt.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.ovirt.ovirt_disk:
    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.ovirt.ovirt_quotas_info:
    data_center: Default
    name: myquota
  register: quota
- ovirt.ovirt.ovirt_disk:
    name: mydisk
    size: 10GiB
    storage_domain: data
    description: somedescriptionhere
    quota_id: "{{ quota.ovirt_quotas[0]['id'] }}"

# Upload an ISO image
# Since Ansible 2.8
- ovirt.ovirt.ovirt_disk:
    name: myiso
    upload_image_path: /path/to/iso/image
    storage_domain: data
    size: 4 GiB
    wait: true
    bootable: true
    format: raw
    content_type: iso

# Add fiber chanel disk
- name: Create disk
  ovirt.ovirt.ovirt_disk:
    name: fcp_disk
    host: my_host
    logical_unit:
      id: 3600a09803830447a4f244c4657597777
      storage_type: fcp

Возвращаемые значения

Общие возвращаемые значения описаны здесь; ниже перечислены поля, уникальные для этого модуля:

Ключ

Описание

disk

словарь

Словарь со всеми атрибутами диска. Атрибуты диска можно найти в экземпляре oVirt/RHV по следующему URL: http://ovirt.github.io/ovirt-engine-api-model/master/#types/disk.

Возвращается: При успешном выполнении, если диск найден и vm_id или vm_name не переданы.

disk_attachment

словарь

Словарь со всеми атрибутами подключения диска. Атрибуты подключения диска можно найти в экземпляре oVirt/RHV по следующему URL: http://ovirt.github.io/ovirt-engine-api-model/master/#types/disk_attachment.

Возвращается: При успешном выполнении, если диск найден, передан vm_id или vm_name и найдена виртуальная машина.

id

строка

Идентификатор управляемого диска

Возвращается: При успешном выполнении, если диск найден.

Пример: "7de90f31-222c-436c-a1ca-7e655bd5b60c"

Авторы

  • Разработчики oVirt (@oVirt)

Ссылки на коллекцию

  • Отслеживание проблем
  • Главная страница
  • Репозиторий (исходный код)

© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/ovirt/ovirt/ovirt_disk_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API