Spec-Zone.ru › Ansible

Модуль dellemc.powerflex.volume_v2 — управление томами Dell PowerFlex

Примечание

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

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

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

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

Новое в dellemc.powerflex 3.0.0

  • Краткое описание
  • Требования
  • Параметры
  • Атрибуты
  • Примечания
  • Примеры
  • Возвращаемые значения

Краткое описание

  • Управление томами в системе хранения PowerFlex включает создание, получение подробной информации, изменение атрибутов и удаление томов.
  • Также сюда входит добавление и удаление политики моментальных снимков, подключение и отключение тома к SDC и от него, а также просмотр связанных моментальных снимков.

Требования

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

  • Система хранения Dell PowerFlex версии 5.0 или новее.
  • PyPowerFlex 2.0.0

Параметры

Параметр

Комментарии

allow_multiple_mappings

boolean

Указывает, разрешено ли использовать несколько подключений.

Если том подключен к одному SDC, для каждого нового подключения необходимо передавать значение true для allow_multiple_mappings.

Варианты:

  • false
  • true

auto_snap_remove_type

string

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

Чтобы удалить или отсоединить политику моментальных снимков, необходимо передать пустое значение snapshot_policy_id/snapshot_policy_name вместе с auto_snap_remove_type.

Если имя или идентификатор политики моментальных снимков переданы как пустое значение, для auto_snap_remove_type по умолчанию устанавливается detach.

Варианты:

  • "remove"
  • "detach"

cap_unit

string

Единица измерения размера тома. По умолчанию — «GB».

Варианты:

  • "GB"
  • "TB"

delete_snapshots

boolean

Если true, том и все зависимые от него моментальные снимки будут удалены.

Если false, будет удален только том.

Параметр можно указать, только если значение state равно absent.

Если параметр не указан, по умолчанию используется false.

Варианты:

  • false
  • true

hostname

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

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

IP-адрес или полное доменное имя узла PowerFlex.

password

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

Пароль узла PowerFlex.

port

integer

Номер порта, через который осуществляется обмен данными с узлом PowerFlex.

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

protection_domain_id

string

Идентификатор домена защиты.

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

Взаимоисключающий параметр: protection_domain_name.

protection_domain_name

string

Имя домена защиты.

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

Взаимоисключающий параметр: protection_domain_id.

refresh_src_vol_id

string

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

Необходимо указать имя или идентификатор исходного тома или моментального снимка.

Взаимоисключающий параметр: refresh_src_vol_name.

refresh_src_vol_name

string

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

Необходимо указать имя или идентификатор исходного тома или моментального снимка.

Взаимоисключающий параметр: refresh_src_vol_id.

restore_src_vol_id

string

Идентификатор исходного тома или моментального снимка, из которого выполняется восстановление.

Необходимо указать имя или идентификатор исходного тома или моментального снимка.

Взаимоисключающий параметр: restore_src_vol_name.

restore_src_vol_name

string

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

Необходимо указать имя или идентификатор исходного тома или моментального снимка.

Взаимоисключающий параметр: restore_src_vol_id.

sdc

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

Задает параметры SDC.

access_mode

string

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

Варианты:

  • "READ_WRITE"
  • "READ_ONLY"
  • "NO_ACCESS"

bandwidth_limit

integer

Ограничение пропускной способности сети для тома.

Значение необходимо указывать кратным 1024 Кбит/с.

Чтобы снять ограничение, укажите 0.

iops_limit

integer

Ограничение количества операций ввода-вывода в секунду (IOPS) для тома.

Минимальное ограничение IOPS — 11; чтобы снять ограничение, укажите 0.

sdc_id

string

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

Укажите один из параметров: sdc_name, sdc_id или sdc_ip.

Взаимоисключающий параметр с sdc_name и sdc_ip.

sdc_ip

string

IP-адрес SDC.

Укажите один из параметров: sdc_name, sdc_id или sdc_ip.

Взаимоисключающий параметр с sdc_id и sdc_ip.

sdc_name

string

Имя SDC.

Укажите один из параметров: sdc_name, sdc_id или sdc_ip.

Взаимоисключающий параметр с sdc_id и sdc_ip.

sdc_state

string

Состояние подключения SDC.

Варианты:

  • "mapped"
  • "unmapped"

size

integer

Размер тома.

Размер тома будет округлен до большего кратного 8 ГБ.

snapshot_policy_id

string

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

Чтобы удалить или отсоединить политику моментальных снимков, необходимо передать пустое значение snapshot_policy_id/snapshot_policy_name вместе с auto_snap_remove_type.

snapshot_policy_name

string

Имя политики моментальных снимков.

Чтобы удалить или отсоединить политику моментальных снимков, необходимо передать пустое значение snapshot_policy_id/snapshot_policy_name вместе с auto_snap_remove_type.

state

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

Состояние тома.

Варианты:

  • "present"
  • "absent"

storage_pool_id

string

Идентификатор пула хранения.

Для создания тома необходимо указать имя или идентификатор пула хранения.

Взаимоисключающий параметр: storage_pool_name.

storage_pool_name

string

Имя пула хранения.

Для создания тома необходимо указать имя или идентификатор пула хранения.

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

Взаимоисключающий параметр: storage_pool_id.

timeout

integer

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

Значение указывается в секундах.

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

username

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

Имя пользователя узла PowerFlex.

validate_certs

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

boolean

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

true — указывает, что сертификат SSL необходимо проверить.

false — указывает, что сертификат SSL проверять не следует.

Варианты:

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

vol_id

string

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

За исключением операции создания, все остальные операции можно выполнять с помощью vol_id.

Взаимоисключающий параметр: vol_name.

vol_name

string

Имя тома.

Обязательный параметр для операции создания.

Имя должно быть уникальным в массиве PowerFlex.

Взаимоисключающий параметр: vol_id.

vol_new_name

string

Новое имя тома. Используется для переименования тома.

vol_type

string

Тип выделения ресурсов для тома.

Варианты:

  • "THICK_PROVISIONED"
  • "THIN_PROVISIONED"

Атрибуты

Атрибут

Поддержка

Описание

check_mode

Поддержка: полная

Выполняет задачу для проверки без выполнения действий на целевой машине.

diff_mode

Поддержка: полная

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

Примечания

Примечание

  • Compression_type и use_rmcache не поддерживаются начиная с PowerFlex 5.0.0
  • Обновление и восстановление нельзя выполнять в рамках одной задачи.
  • Модули коллекции «dellemc.powerflex» предназначены для поддержки платформы хранения Dell PowerFlex.

Примеры

- name: Create a volume
  dellemc.powerflex.volume_v2:
    hostname: "{{hostname}}"
    username: "{{username}}"
    password: "{{password}}"
    validate_certs: "{{validate_certs}}"
    port: "{{port}}"
    vol_name: "sample_volume"
    storage_pool_name: "pool_1"
    protection_domain_name: "pd_1"
    vol_type: "THIN_PROVISIONED"
    size: 16
    state: "present"

- name: Map a SDC to volume
  dellemc.powerflex.volume_v2:
    hostname: "{{hostname}}"
    username: "{{username}}"
    password: "{{password}}"
    validate_certs: "{{validate_certs}}"
    port: "{{port}}"
    vol_name: "sample_volume"
    allow_multiple_mappings: true
    sdc:
      - sdc_id: "92A304DB-EFD7-44DF-A07E-D78134CC9764"
        access_mode: "READ_WRITE"
    sdc_state: "mapped"
    state: "present"

- name: Unmap a SDC to volume
  dellemc.powerflex.volume_v2:
    hostname: "{{hostname}}"
    username: "{{username}}"
    password: "{{password}}"
    validate_certs: "{{validate_certs}}"
    port: "{{port}}"
    vol_name: "sample_volume"
    sdc:
      - sdc_id: "92A304DB-EFD7-44DF-A07E-D78134CC9764"
    sdc_state: "unmapped"
    state: "present"

- name: Map multiple SDCs to a volume
  dellemc.powerflex.volume_v2:
    hostname: "{{hostname}}"
    username: "{{username}}"
    password: "{{password}}"
    validate_certs: "{{validate_certs}}"
    port: "{{port}}"
    vol_name: "sample_volume"
    protection_domain_name: "pd_1"
    sdc:
      - sdc_id: "92A304DB-EFD7-44DF-A07E-D78134CC9764"
        access_mode: "READ_WRITE"
        bandwidth_limit: 2048
        iops_limit: 20
      - sdc_ip: "198.10.xxx.xxx"
        access_mode: "READ_ONLY"
    allow_multiple_mappings: true
    sdc_state: "mapped"
    state: "present"

- name: Get the details of the volume
  dellemc.powerflex.volume_v2:
    hostname: "{{hostname}}"
    username: "{{username}}"
    password: "{{password}}"
    validate_certs: "{{validate_certs}}"
    port: "{{port}}"
    vol_id: "fe6c8b7100000005"
    state: "present"

- name: Restore volume
  dellemc.powerflex.volume_v2:
    hostname: "{{hostname}}"
    username: "{{username}}"
    password: "{{password}}"
    validate_certs: "{{validate_certs}}"
    port: "{{port}}"
    restore_src_vol_id: "fe6c8b7100000006"
    state: "present"

- name: Refresh volume
  dellemc.powerflex.volume_v2:
    hostname: "{{hostname}}"
    username: "{{username}}"
    password: "{{password}}"
    validate_certs: "{{validate_certs}}"
    port: "{{port}}"
    refresh_src_vol_name: "example_snapshot"
    state: "present"

- name: Modify the details of the Volume
  dellemc.powerflex.volume_v2:
    hostname: "{{hostname}}"
    username: "{{username}}"
    password: "{{password}}"
    validate_certs: "{{validate_certs}}"
    port: "{{port}}"
    vol_name: "sample_volume"
    storage_pool_name: "pool_1"
    vol_new_name: "new_sample_volume"
    size: 64
    state: "present"

- name: Delete the Volume
  dellemc.powerflex.volume_v2:
    hostname: "{{hostname}}"
    username: "{{username}}"
    password: "{{password}}"
    validate_certs: "{{validate_certs}}"
    port: "{{port}}"
    vol_name: "sample_volume"
    delete_snapshots: false
    state: "absent"

- name: Delete the Volume and all its dependent snapshots
  dellemc.powerflex.volume_v2:
    hostname: "{{hostname}}"
    username: "{{username}}"
    password: "{{password}}"
    validate_certs: "{{validate_certs}}"
    port: "{{port}}"
    vol_name: "sample_volume"
    delete_snapshots: true
    state: "absent"

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

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

Ключ

Описание

changed

boolean

Был ли изменён ресурс.

Возвращается: всегда

Пример: false

volume_details

dictionary

Сведения о томе.

Возвращается: когда том существует

Пример: {"accessModeLimit": "ReadWrite", "ancestorVolumeId": null, "autoSnapshotGroupId": null, "compressionMethod": "Invalid", "consistencyGroupId": null, "creationTime": 1631618520, "dataLayout": "MediumGranularity", "genType": "EC", "id": "cdd883cf00000002", "links": [{"href": "/api/instances/Volume::cdd883cf00000002", "rel": "self"}, {"href": "/api/instances/Volume::cdd883cf00000002/relationships /Statistics", "rel": "/api/Volume/relationship/Statistics"}, {"href": "/api/instances/VTree::6e86255c00000001", "rel": "/api/parent/relationship/vtreeId"}, {"href": "/api/instances/StoragePool::e0d8f6c900000000", "rel": "/api/parent/relationship/storagePoolId"}], "lockedAutoSnapshot": false, "lockedAutoSnapshotMarkedForRemoval": false, "managedBy": "ScaleIO", "mappedSdcInfo": null, "name": "ansible-volume-1", "notGenuineSnapshot": false, "nsid": 23, "originalExpiryTime": 0, "pairIds": null, "protectionDomainId": "9300c1f900000000", "protectionDomainName": "domain1", "replicationJournalVolume": false, "replicationTimeStamp": 0, "retentionLevels": [], "secureSnapshotExpTime": 0, "sizeInGB": 16, "sizeInKb": 16777216, "snapshotPolicyId": null, "snapshotPolicyName": null, "snapshotsList": [{"accessModeLimit": "ReadOnly", "ancestorVolumeId": "cdd883cf00000002", "autoSnapshotGroupId": null, "compressionMethod": "Invalid", "consistencyGroupId": "22f1e80c00000001", "creationTime": 1631619229, "dataLayout": "MediumGranularity", "id": "cdd883d000000004", "links": [{"href": "/api/instances/Volume::cdd883d000000004", "rel": "self"}, {"href": "/api/instances/Volume::cdd883d000000004 /relationships/Statistics", "rel": "/api/Volume/relationship/Statistics"}, {"href": "/api/instances/Volume::cdd883cf00000002", "rel": "/api/parent/relationship/ancestorVolumeId"}, {"href": "/api/instances/VTree::6e86255c00000001", "rel": "/api/parent/relationship/vtreeId"}, {"href": "/api/instances/StoragePool::e0d8f6c900000000", "rel": "/api/parent/relationship/storagePoolId"}], "lockedAutoSnapshot": false, "lockedAutoSnapshotMarkedForRemoval": false, "managedBy": "ScaleIO", "mappedSdcInfo": null, "name": "ansible_vol_snap_1", "notGenuineSnapshot": false, "originalExpiryTime": 0, "pairIds": null, "replicationJournalVolume": false, "replicationTimeStamp": 0, "retentionLevels": [], "secureSnapshotExpTime": 0, "sizeInKb": 16777216, "snplIdOfAutoSnapshot": null, "snplIdOfSourceVolume": null, "storagePoolId": "e0d8f6c900000000", "timeStampIsAccurate": false, "useRmcache": false, "volumeReplicationState": "UnmarkedForReplication", "volumeType": "Snapshot", "vtreeId": "6e86255c00000001"}], "snplIdOfAutoSnapshot": null, "snplIdOfSourceVolume": null, "statistics": {"avg_host_read_latency": 0, "avg_host_trim_latency": 0, "avg_host_write_latency": 0, "host_read_bandwidth": 0, "host_read_iops": 0, "host_trim_bandwidth": 0, "host_trim_iops": 0, "host_write_bandwidth": 0, "host_write_iops": 0, "logical_provisioned": 3221225472, "logical_used": 0}, "storagePoolId": "e0d8f6c900000000", "storagePoolName": "pool1", "timeStampIsAccurate": false, "useRmcache": false, "volumeClass": "defaultclass", "volumeReplicationState": "UnmarkedForReplication", "volumeType": "ThinProvisioned", "vtreeId": "6e86255c00000001"}

id

string

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

Возвращается: при успешном выполнении

mappedSdcInfo

dictionary

Сведения о сопоставленном SDC.

Возвращается: при успешном выполнении

accessMode

string

Режим доступа при сопоставлении для указанного тома.

Возвращается: при успешном выполнении

limitBwInMbps

integer

Ограничение пропускной способности для SDC.

Возвращается: при успешном выполнении

limitIops

integer

Ограничение IOPS для SDC.

Возвращается: при успешном выполнении

sdcId

string

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

Возвращается: при успешном выполнении

sdcIp

string

IP-адрес SDC.

Возвращается: при успешном выполнении

sdcName

string

Имя SDC.

Возвращается: при успешном выполнении

name

string

Имя тома.

Возвращается: при успешном выполнении

protectionDomainId

string

Идентификатор домена защиты, в котором находится том.

Возвращается: при успешном выполнении

protectionDomainName

string

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

Возвращается: при успешном выполнении

sizeInGb

integer

Размер тома в ГБ.

Возвращается: при успешном выполнении

sizeInKb

integer

Размер тома в КБ.

Возвращается: при успешном выполнении

snapshotPolicyId

string

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

Возвращается: при успешном выполнении

snapshotPolicyName

string

Имя политики моментальных снимков, связанной с томом.

Возвращается: при успешном выполнении

snapshotsList

string

Список моментальных снимков, связанных с томом.

Возвращается: при успешном выполнении

statistics

dictionary

Статистика тома.

Возвращается: при успешном выполнении

avg_host_read_latency

integer

Средняя задержка чтения с хоста.

Возвращается: при успешном выполнении

avg_host_trim_latency

integer

Средняя задержка операции trim с хоста.

Возвращается: при успешном выполнении

avg_host_write_latency

integer

Средняя задержка записи с хоста.

Возвращается: при успешном выполнении

host_read_bandwidth

integer

Пропускная способность чтения с хоста.

Возвращается: при успешном выполнении

host_read_iops

integer

IOPS чтения с хоста.

Возвращается: при успешном выполнении

host_trim_bandwidth

integer

Пропускная способность операций trim с хоста.

Возвращается: при успешном выполнении

host_trim_iops

integer

IOPS операций trim с хоста.

Возвращается: при успешном выполнении

host_write_bandwidth

integer

Пропускная способность записи с хоста.

Возвращается: при успешном выполнении

host_write_iops

integer

IOPS записи с хоста.

Возвращается: при успешном выполнении

logical_provisioned

integer

Логически выделенный размер.

Возвращается: при успешном выполнении

logical_used

integer

Логически использованный размер.

Возвращается: при успешном выполнении

storagePoolId

string

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

Возвращается: при успешном выполнении

storagePoolName

string

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

Возвращается: при успешном выполнении

Авторы

  • Yuhao Liu (@RayLiu7)

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

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

© 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/dellemc/powerflex/volume_v2_module.html

Spec-Zone.ru

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