Модуль hitachivantara.vspone_block.vsp.hv_gad — управление GAD-парами в блочных системах хранения VSP.
Примечание
Этот модуль входит в коллекцию hitachivantara.vspone_block (версия 4.8.1).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Чтобы установить ее, используйте: ansible-galaxy collection install hitachivantara.vspone_block. Для использования этого модуля необходимы дополнительные требования; подробности см. в разделе Требования.
Чтобы использовать модуль в плейбуке, укажите: hitachivantara.vspone_block.vsp.hv_gad.
Добавлено в hitachivantara.vspone_block 3.1.0
Краткое описание
- Этот модуль позволяет создавать, удалять, разделять и повторно синхронизировать GAD-пары в блочных системах хранения VSP.
- Поддерживаются различные операции с GAD-парами в зависимости от указанного уровня задачи.
- Примеры см. по адресу https://github.com/hitachi-vantara/vspone-block-ansible/blob/main/playbooks/vsp_direct/gad_pair.yml
Требования
На хосте, выполняющем этот модуль, должны быть установлены следующие компоненты.
- python >= 3.9
Параметры
Параметр | Комментарии |
|---|---|
connection_info dictionary / обязательный | Информация, необходимая для установления подключения к системе хранения данных. |
|
address string / обязательный |
IP-адрес или имя хоста системы хранения данных. |
|
api_token string |
Токен для работы с заблокированными ресурсами. |
|
connection_type string |
Тип подключения к системе хранения данных. Варианты:
|
|
password string |
Пароль для аутентификации. Это обязательное поле. |
|
username string |
Имя пользователя для аутентификации. Это обязательное поле. |
secondary_connection_info dictionary | Информация, необходимая для установления подключения к вторичной системе хранения данных. |
|
address string / обязательный |
IP-адрес или имя хоста вторичной системы хранения данных. |
|
api_token string |
Значение токена блокировки для работы с заблокированными ресурсами. |
|
password string |
Пароль для аутентификации. Это поле обязательно для подключения к вторичной системе хранения данных, если не указан api_token. |
|
username string |
Имя пользователя для аутентификации. Это поле обязательно для подключения к вторичной системе хранения данных, если не указан api_token. |
spec dictionary / обязательный | Спецификация задачи с парами GAD. |
|
allocate_new_consistency_group boolean |
Выделить и назначить новый идентификатор группы согласованности. Требуется для задач создания пары GAD с конфигурацией кластера серверов и создания пары GAD с конфигурацией сервера с перекрёстными путями. Варианты:
|
|
begin_secondary_volume_id string |
Укажите начальный идентификатор LDEV для диапазона LDEV тома SVOL. Это необязательное поле при создании. Если это поле указано, необходимо также указать end_secondary_volume_id. Если поле не указано, модули Ansible попытаются создать SVOL с тем же идентификатором, что и у PVOL, если он доступен; в противном случае будет использован первый доступный идентификатор LDEV. Требуется для задачи создания пары GAD с использованием диапазона идентификаторов вторичного тома. |
|
consistency_group_id integer |
Идентификатор группы согласованности. |
|
copy_group_name string |
Имя группы копирования. Требуется для задач создания, разделения, повторной синхронизации, удаления, переключения с разделением, переключения с повторной синхронизацией и расширения. |
|
copy_pace string |
Скорость копирования для пары GAD. Поддерживаются значения “SMALL”, “MEDIUM”, “LARGE” или числа от 1 до 15. По умолчанию: |
|
copy_pair_name string |
Имя пары в группе копирования. Требуется для задач создания, разделения, повторной синхронизации, переключения с разделением, переключения с повторной синхронизацией и расширения. |
|
do_initial_copy boolean |
Выполнять ли первоначальное копирование. Варианты:
|
|
end_secondary_volume_id string |
Укажите конечный идентификатор LDEV для диапазона LDEV тома SVOL. Это необязательное поле при создании. Если это поле указано, необходимо также указать begin_secondary_volume_id. Если поле не указано, модули Ansible попытаются создать SVOL с тем же идентификатором, что и у PVOL, если он доступен; в противном случае будет использован первый доступный идентификатор LDEV. Требуется для задачи создания пары GAD с использованием диапазона идентификаторов вторичного тома. |
|
fence_level string |
Уровень fencing. Варианты:
|
|
is_consistency_group boolean |
Укажите true для группы согласованности. Варианты:
|
|
is_data_reduction_force_copy boolean |
Следует ли принудительно создавать пару. Варианты:
|
|
is_new_group_creation boolean |
Укажите true для нового имени группы копирования. Варианты:
|
|
local_device_group_name string |
Имя группы устройств в локальной системе хранения данных. Необязательно для задач разделения, повторной синхронизации, переключения с разделением и переключения с повторной синхронизацией. |
|
mirror_unit_number псевдонимы: mu_number integer |
Номер модуля зеркалирования. |
|
new_volume_size string |
Требуется для операции изменения размера или расширения. Значение должно быть больше текущего размера тома. Требуется для задачи расширения пары GAD. |
|
path_group_id integer |
Идентификатор группы путей. |
|
primary_hostgroups list / элементы=dictionary |
Список групп хостов на основном устройстве хранения данных. Требуется для задачи создания пары GAD с конфигурацией кластера серверов. |
|
enable_preferred_path boolean |
Включает предпочтительный путь для указанной группы хостов. Требуется для задач создания пары GAD с конфигурацией кластера серверов и создания пары GAD с конфигурацией сервера с перекрёстными путями. Варианты:
|
|
lun_id integer |
Идентификатор LUN. |
|
name string / обязательный |
Имя группы хостов. Требуется для задач создания пары GAD с конфигурацией кластера серверов и создания пары GAD с конфигурацией сервера с перекрёстными путями. |
|
port_id псевдонимы: port string / обязательный |
Идентификатор порта. Требуется для задач создания пары GAD с конфигурацией кластера серверов и создания пары GAD с конфигурацией сервера с перекрёстными путями. Поле port устарело; следует использовать port_id. |
|
primary_resource_group_name string |
Имя основной группы ресурсов. Требуется для задачи создания пары GAD с конфигурацией сервера с перекрёстными путями. |
|
primary_storage_serial_number string |
Серийный номер основного устройства хранения данных. |
|
primary_volume_id string |
Идентификатор основного тома. Требуется для задач создания и удаления. |
|
provisioned_secondary_volume_id string |
Идентификатор подготовленного вторичного тома, который требуется использовать для создания пары GAD. Требуется для задачи создания пары GAD с идентификатором подготовленного вторичного тома. |
|
quorum_disk_id integer |
Идентификатор диска кворума. Требуется для задач создания. |
|
remote_device_group_name string |
Имя группы устройств в удалённой системе хранения данных. Необязательно для задач разделения, повторной синхронизации, переключения с разделением и переключения с повторной синхронизацией. |
|
secondary_hostgroups list / элементы=dictionary |
Список групп хостов на вторичном устройстве хранения данных. Требуется для задач создания. |
|
enable_preferred_path boolean |
Включает предпочтительный путь для указанной группы хостов. Требуется для задач создания. Варианты:
|
|
lun_id integer |
Идентификатор LUN. Требуется для задач создания. |
|
name string / обязательный |
Имя группы хостов. Требуется для задач создания. |
|
port_id псевдонимы: port string / обязательный |
Идентификатор порта. Требуется для задач создания. Поле port устарело; следует использовать port_id. |
|
secondary_iscsi_targets list / элементы=dictionary |
Список целей iSCSI на вторичном устройстве хранения данных. Требуется для задачи создания пары GAD-ISCSI. |
|
enable_preferred_path boolean |
Включает предпочтительный путь для указанной цели iSCSI. Требуется для задачи создания пары GAD-ISCSI. Варианты:
|
|
lun_id integer |
Идентификатор LUN. Требуется для задачи создания пары GAD-ISCSI. |
|
name string / обязательный |
Имя цели iSCSI. Требуется для задачи создания пары GAD-ISCSI. |
|
port_id псевдонимы: port string / обязательный |
Идентификатор порта. Требуется для задачи создания пары GAD-ISCSI. Поле port устарело; следует использовать port_id. |
|
secondary_nvm_subsystem dictionary |
Сведения о подсистеме NVM вторичного тома. Требуется для задачи создания пары GAD-NVMe. |
|
name string / обязательный |
Имя подсистемы NVM во вторичной системе хранения данных. Требуется для задачи создания пары GAD-NVMe. |
|
paths list / элементы=string |
Информация о путях Host NQN во вторичной системе хранения данных. Требуется для задачи создания пары GAD-NVMe. |
|
secondary_pool_id integer |
Идентификатор пула вторичной системы хранения данных. Требуется для задач создания. |
|
secondary_resource_group_name string |
Имя вторичной группы ресурсов. |
|
secondary_storage_serial_number string |
Серийный номер вторичного устройства хранения данных. |
|
set_alua_mode boolean |
Установить для режима ALUA значение True. Требуется для задачи создания пары GAD с конфигурацией сервера с перекрёстными путями. Варианты:
|
|
should_delete_svol boolean |
Укажите true, чтобы удалить SVOL. Варианты:
|
state string | Уровень задачи для пар GAD. Варианты:
|
storage_system_info dictionary | Информация о системе хранения. Это необязательное поле. |
|
serial string |
Серийный номер системы хранения. |
Атрибуты
Атрибут | Поддержка | Описание |
|---|---|---|
check_mode | Поддержка: нет | Определяет, должен ли модуль работать в режиме проверки. |
Примечания
Примечание
- Тип подключения
gatewayудален начиная с версии 3.4.0. Если вам требуется этот тип подключения, используйте более раннюю версию. - Модули Ansible используют технологию, называемую группой копирования, для управления всеми типами пар удаленной репликации (GAD, TC, HUR). Поэтому пары репликации, созданные с помощью инструментов, не использующих технологию группы копирования, несовместимы с модулями Ansible. В результате модули Ansible не могут управлять парами репликации, созданными без использования технологии группы копирования.
- Этот модуль поддерживает пары GAD на основе Fibre Channel, iSCSI, NVMe Fibre Channel и NVMe TCP.
- Для конфигураций GAD с одним сервером, кластером и crosspath
-
- Прежде чем управлять парой GAD через Ansible Direct Connect, необходимо зарегистрировать (или объединить в пару) исходную и целевую системы хранения на сервере API исходной системы хранения. Этот шаг необходим, поскольку Ansible использует вызовы REST API на серверной стороне. Если пропустить этот шаг — особенно если вы не знакомы с REST API Hitachi, — при управлении парой GAD через Ansible возникнут ошибки. Инструкции см. в разделе «Управление регистрацией удаленного хранилища».
-
- После создания вторичной группы хостов необходимо вручную добавить ее в группу ресурсов VSM.
-
- В группы хостов (основную и вторичную) следует добавить допустимый WWN.
-
- Перед запуском сценария GAD убедитесь, что удаленные пути и диск кворума настроены правильно, как указано в руководстве пользователя GAD.
-
- Для GAD между VSM на основной и вторичной системах хранения необходимо создать общий VSM.
-
- Добавьте P-VOL и группу хостов в VSM. Сопоставьте P-VOL с группой хостов.
-
- После добавления P-VOL в VSM виртуальный идентификатор P-VOL становится равен «GAD Reserve» или 65534. Поэтому обновите виртуальный идентификатор P-VOL с помощью задачи Update volume with virtual ldev из сценария LDEV. Физический и виртуальный идентификаторы P-VOL должны совпадать.
-
- Добавьте вторичную группу хостов в VSM.
-
- Если P-VOL не имеет имени, S-VOL получит имя в формате smrha-[ldev_id]. Если P-VOL имеет имя, S-VOL следует присвоить такое же имя. (Здесь smrha означает Storage Module Red Hat Ansible.)
Примеры
- name: Swap-Split a GAD pair
hitachivantara.vspone_block.vsp.hv_gad:
state: "swap_split"
connection_info:
address: storage1.company.com
username: "username"
password: "password"
secondary_connection_info:
address: storage2.company.com
username: "admin"
password: "secret"
spec:
copy_group_name: "gad_copy_group_name_8"
copy_pair_name: "gad_copy_pair_name_8"
local_device_group_name: "gad_local_device_group_name_8"
remote_device_group_name: "gad_remote_device_group_name_8"
- name: Swap-Resync a GAD pair
hitachivantara.vspone_block.vsp.hv_gad:
state: "swap_resync"
connection_info:
address: storage2.company.com
username: "username"
password: "password"
secondary_connection_info:
address: storage1.company.com
username: "admin"
password: "secret"
spec:
copy_group_name: "gad_copy_group_name_8"
copy_pair_name: "gad_copy_pair_name_8"
local_device_group_name: "gad_local_device_group_name_8"
remote_device_group_name: "gad_remote_device_group_name_8"
- name: Increase size of volumes of a GAD pair
hitachivantara.vspone_block.vsp.hv_gad:
state: "resize"
connection_info:
address: storage1.company.com
username: "username"
password: "password"
secondary_connection_info:
address: storage2.company.com
username: "admin"
password: "secret"
spec:
copy_group_name: "gad_copy_group_name_9"
copy_pair_name: "gad_copy_pair_name_9"
new_volume_size: "4GB"
- name: Create a GAD-NVMe pair
hitachivantara.vspone_block.vsp.hv_gad:
state: "present"
connection_info:
address: storage1.company.com
username: "username"
password: "password"
secondary_connection_info:
address: storage2.company.com
username: "admin"
password: "secret"
spec:
copy_group_name: "copy_group_name_1"
copy_pair_name: "copy_pair_name_1"
primary_volume_id: 12
secondary_pool_id: 1
secondary_nvm_subsystem:
name: gk-nvm-sub-75
paths:
- "nqn.2014-08.com.ucpa-sc-hv:nvme:gk-test-12346"
quorum_disk_id: 1
- name: Create a GAD-ISCSI pair
hitachivantara.vspone_block.vsp.hv_gad:
state: "present"
connection_info:
address: storage1.company.com
username: "username"
password: "password"
secondary_connection_info:
address: storage2.company.com
username: "admin"
password: "secret"
spec:
copy_group_name: "copy_group_name_1"
copy_pair_name: "copy_pair_name_1"
primary_volume_id: 12
secondary_pool_id: 1
secondary_iscsi_targets:
- name: "test"
port_id: "CL1-A"
enable_preferred_path: false
lun_id: 1
quorum_disk_id: 1
Возвращаемые значения
Общие возвращаемые значения описаны здесь; ниже перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
data dictionary | Объект вновь созданной пары GAD. Возвращается: при успешном выполнении |
|
consistency_group_id integer |
Идентификатор группы согласованности. Возвращается: при успешном выполнении Пример: |
|
copy_group_name string |
Имя группы копирования. Возвращается: при успешном выполнении Пример: |
|
copy_pace_track_size integer |
Устарело. Размер дорожки темпа копирования. Возвращается: при успешном выполнении Пример: |
|
copy_pair_name string |
Имя пары. Возвращается: при успешном выполнении Пример: |
|
copy_rate string |
Устарело. Скорость копирования. Возвращается: при успешном выполнении Пример: |
|
fence_level string |
Уровень изоляции. Возвращается: при успешном выполнении Пример: |
|
is_alua_enabled boolean |
Включена ли функция ALUA. Возвращается: при успешном выполнении Пример: |
|
local_device_group_name string |
Имя локальной группы устройств. Возвращается: при успешном выполнении Пример: |
|
mirror_unit_id integer |
Устарело. Используйте mirror_unit_number. Возвращается: при успешном выполнении Пример: |
|
mirror_unit_number integer |
Номер модуля зеркалирования. Возвращается: при успешном выполнении Пример: |
|
primary_virtual_serial_number integer |
Основной виртуальный серийный номер. Возвращается: при успешном выполнении Пример: |
|
primary_virtual_volume_id integer |
Идентификатор основного виртуального тома. Возвращается: при успешном выполнении Пример: |
|
primary_volume_id integer |
Идентификатор основного тома. Возвращается: при успешном выполнении Пример: |
|
primary_volume_id_hex string |
Идентификатор основного тома в шестнадцатеричном формате. Возвращается: при успешном выполнении Пример: |
|
primary_volume_size string |
Размер основного тома. Возвращается: при успешном выполнении Пример: |
|
primary_volume_status string |
Статус пары GAD. Возвращается: при успешном выполнении Пример: |
|
primary_volume_storage_id string |
Устарело. Используйте primary_volume_storage_serial_number. Возвращается: при успешном выполнении Пример: |
|
primary_volume_storage_serial_number string |
Серийный номер системы хранения основного тома. Возвращается: при успешном выполнении Пример: |
|
primary_vsm_resource_group_name string |
Имя основной группы ресурсов VSM. Возвращается: при успешном выполнении Пример: |
|
quorum_disk_id integer |
Идентификатор диска кворума. Возвращается: при успешном выполнении Пример: |
|
remote_device_group_name string |
Имя удаленной группы устройств. Возвращается: при успешном выполнении Пример: |
|
remote_mirror_copy_pair_id string |
Устарело. Идентификатор пары копирования удаленного зеркала. Возвращается: при успешном выполнении Пример: |
|
secondary_virtual_serial_number integer |
Серийный номер вторичной виртуальной системы хранения. Возвращается: при успешном выполнении Пример: |
|
secondary_virtual_volume_id integer |
Идентификатор вторичного виртуального тома. Возвращается: при успешном выполнении Пример: |
|
secondary_volume_id integer |
Идентификатор вторичного тома. Возвращается: при успешном выполнении Пример: |
|
secondary_volume_id_hex string |
Идентификатор вторичного тома в шестнадцатеричном формате. Возвращается: при успешном выполнении Пример: |
|
secondary_volume_size string |
Размер вторичного тома. Возвращается: при успешном выполнении Пример: |
|
secondary_volume_status string |
Статус пары GAD. Возвращается: при успешном выполнении Пример: |
|
secondary_volume_storage_id string |
Устарело. Используйте secondary_volume_storage_serial_number. Возвращается: при успешном выполнении Пример: |
|
secondary_volume_storage_serial_number string |
Серийный номер системы хранения вторичного тома. Возвращается: при успешном выполнении Пример: |
|
secondary_vsm_resource_group_name string |
Имя вторичной группы ресурсов VSM. Возвращается: при успешном выполнении Пример: |
Ссылки на коллекцию
© 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/hitachivantara/vspone_block/vsp.hv_gad_module.html