Spec-Zone.ru › Ansible

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

Примечание

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

Возможно, эта коллекция уже установлена, если вы используете пакет 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

словарь / обязательный

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

ca_file

строка

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

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

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

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

compress

boolean

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

Варианты:

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

headers

словарь

Словарь HTTP-заголовков, которые будут добавлены к каждому API-запросу.

hostname

строка

Строка, содержащая имя хоста сервера, обычно что-то вроде `server.example.com`.

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

Требуется либо url, либо hostname.

insecure

boolean

Флаг булевого типа, указывающий, нужно ли проверять сертификат TLS сервера и имя хоста.

Варианты:

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

kerberos

boolean

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

Варианты:

  • false
  • true

password

строка

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

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

timeout

целое число

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

token

строка

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

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

url

строка

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

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

Требуется либо url, либо hostname.

username

строка

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

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

backup

строка

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

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

Варианты:

  • "incremental"

bootable

boolean

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

Варианты:

  • false
  • true

content_type

строка

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

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

Варианты:

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

description

строка

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

download_image_path

строка

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

Обратите внимание, что у вас должен быть действительный сертификат CA oVirt/RHV в хранилище доверия системы, или вы должны предоставить его в параметре 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 экспортируется диск в указанный поставщик изображений Glance.

При state импортируется диск из указанного поставщика изображений Glance.

**IMPORTANT**

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

interface

string

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

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

Выбор:

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

logical_unit

dictionary

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

address

string

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

lun_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

aliases: alias

string

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

nested_attributes

list / elements=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

added in ovirt.ovirt 1.2.0

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

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

Choices:

  • false
  • true

quota_id

string

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

read_only

boolean

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

Choices:

  • false
  • true

scsi_passthrough

string

added in ovirt.ovirt 1.2.0

Указывает, включена ли функция прямого доступа SCSI и ее политика.

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

Для отключения прямого доступа SCSI значение должно быть установлено в `disabled`

Choices:

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

shareable

boolean

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

Choices:

  • false
  • true

size

string

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

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

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

sparse

boolean

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

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

Choices:

  • false
  • true

sparsify

boolean

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

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

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

Choices:

  • false
  • true

state

string

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

Choices:

  • "present" ← (default)
  • "absent"
  • "attached"
  • "detached"
  • "exported"
  • "imported"

storage_domain

string

Имя хранилища, где должен быть создан диск.

storage_domains

list / elements=string

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

**IMPORTANT**

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

timeout

integer

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

Default: 180

upload_image_path

aliases: image_path

string

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

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

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

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

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

Обратите внимание, что для загрузки iso format должно быть 'raw'.

uses_scsi_reservation

boolean

added in ovirt.ovirt 1.2.0

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

Choices:

  • false
  • true

vm_id

string

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

vm_name

string

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

wait

boolean

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

Варианты:

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

wipe_after_delete

boolean

Если для диска включена опция «Очистка после удаления», диск сначала очищается.

Варианты:

  • 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

строка

ID управляемого диска

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

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

Авторы

  • Ondra Machacek (@machacekondra)
  • Martin Necas (@mnecas)

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

  • Система отслеживания ошибок
  • Главная страница
  • Репозиторий (источники)

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

Spec-Zone.ru

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