hitachivantara.vspone_block.vsp.hv_gad_bulk module – Manages batch GAD pairs on VSP block storage systems.
Note
This module is part of the hitachivantara.vspone_block collection (version 4.8.1).
You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.
To install it, use: ansible-galaxy collection install hitachivantara.vspone_block. You need further requirements to be able to use this module, see Requirements for details.
To use it in a playbook, specify: hitachivantara.vspone_block.vsp.hv_gad_bulk.
New in hitachivantara.vspone_block 4.7.0
Synopsis
- This module allows for the batch creation of multiple GAD pairs on VSP block storage systems.
- It supports creating GAD pairs with new volumes, existing volumes, or a range of volumes.
- Enables efficient provisioning of multiple GAD pairs in a single operation.
- For examples, go to URL https://github.com/hitachi-vantara/vspone-block-ansible/blob/main/playbooks/vsp_direct/gad_pair_bulk.yml
Requirements
The below requirements are needed on the host that executes this module.
- python >= 3.9
Parameters
Parameter | Comments |
|---|---|
connection_info dictionary / required | Information required to establish a connection to the storage system. |
|
address string / required |
IP address or hostname of the storage system. |
|
api_token string |
Token used to operate on locked resources. |
|
connection_type string |
Type of connection to the storage system. Choices:
|
|
password string |
Password for authentication. This is a required field. |
|
username string |
Username for authentication. This is a required field. |
secondary_connection_info dictionary | Information required to establish a connection to the secondary storage system. |
|
address string / required |
IP address or hostname of the secondary storage. |
|
api_token string |
Value of the lock token to operate on locked resources. |
|
password string |
Password for authentication. This field is required for secondary storage connection if api_token is not provided. |
|
username string |
Username for authentication. This field is required for secondary storage connection if api_token is not provided. |
spec dictionary / required | Specification for the batch GAD pairs task. |
|
allocate_new_consistency_group boolean |
Allocate and assign a new consistency group ID. Choices:
|
|
begin_primary_volume_id integer |
Beginning primary volume ID for batch creation using existing volumes. |
|
begin_secondary_volume_id string |
Beginning LDEV ID for secondary volume range. |
|
capacity_saving string |
Capacity saving mode for new volumes (e.g., ‘compression’, ‘compression_deduplication’). |
|
consistency_group_id integer |
Consistency Group ID. |
|
copy_group_name string |
The name for the copy group. |
|
copy_pace integer |
Copy pace to be used for the GAD pair, Supports 1 to 15. Default: |
|
copy_pair_base_name string |
Base name for copy pairs. Pairs will be named with incrementing numbers appended. |
|
do_initial_copy boolean |
Whether to perform an initial copy. Choices:
|
|
end_primary_volume_id integer |
Ending primary volume ID for batch creation using existing volumes. |
|
end_secondary_volume_id string |
End LDEV ID for secondary volume range. |
|
fence_level string |
Fence level for the GAD pairs. Choices:
|
|
is_consistency_group boolean |
Specify true for consistency group. Choices:
|
|
is_data_reduction_force_copy boolean |
Whether to forcibly create a pair for data reduction volumes. Choices:
|
|
is_new_group_creation boolean |
Specify true for a new copy group name. Choices:
|
|
local_device_group_name string |
The device group name in the local storage system. Optional for the Split/Resync/Swap-Split/Swap-Resync tasks. |
|
mirror_unit_number string |
The mirror unit number. |
|
new_volume_size string |
New volume size for resize or expand operations. |
|
number_of_pairs integer |
Number of GAD pairs to create in batch. |
|
path_group_id integer |
Path group ID. |
|
primary_hostgroups list / elements=dictionary |
The list of host groups on the primary storage device. Required for the Create GAD pair with server cluster configuration task. |
|
name string / required |
Host group name. Required for the Create GAD pair with server cluster configuration /Create GAD pair with cross path server configuration tasks. |
|
port_id string / required |
Port ID. Required for the Create GAD pair with server cluster configuration /Create GAD pair with cross path server configuration tasks. |
|
primary_iscsi_targets list / elements=dictionary |
The list of iscsi targets on the primary storage device. Required for the Create GAD-ISCSI Pair task. |
|
name string / required |
ISCSI target name. Required for the Create GAD-ISCSI Pair task. |
|
port_id string / required |
Port ID. Required for the Create GAD-ISCSI Pair task. |
|
primary_nvm_subsystem dictionary |
NVM subsystem details of the primary volume. |
|
name string / required |
Name of the NVM subsystem on the primary storage system. |
|
paths list / elements=string |
Host NQN paths information on the primary storage system. |
|
primary_pool_id integer |
Pool ID for creating new primary volumes. |
|
primary_resource_group_name string |
The primary resource group name. Required for the Create GAD pair with cross path server configuration task. |
|
primary_volume_base_name string |
Base name for primary volumes when creating new volumes in batch. |
|
primary_volume_base_name_start_number integer |
Starting number for primary volume base name suffix. |
|
provisioned_secondary_volume_id string |
ID of the provisioned secondary volume for GAD pair creation. |
|
quorum_disk_id integer |
The quorum disk ID. Required for the Create tasks. |
|
remote_device_group_name string |
The device group name in the remote storage system. Optional for the Split/Resync/Swap-Split/Swap-Resync tasks. |
|
secondary_hostgroups list / elements=dictionary |
The list of host groups on the secondary storage device. Required for the Create tasks. |
|
name string / required |
Host group name. Required for the Create tasks. |
|
port_id string / required |
Port ID. Required for the Create tasks. |
|
secondary_iscsi_targets list / elements=dictionary |
The list of iscsi targets on the secondary storage device. Required for the Create GAD-ISCSI Pair task. |
|
name string / required |
ISCSI target name. Required for the Create GAD-ISCSI Pair task. |
|
port_id string / required |
Port ID. Required for the Create GAD-ISCSI Pair task. |
|
secondary_nvm_subsystem dictionary |
NVM subsystem details of the secondary volume. |
|
name string / required |
Name of the NVM subsystem on the secondary storage system. |
|
paths list / elements=string |
Host NQN paths information on the secondary storage system. |
|
secondary_pool_id integer |
Pool ID of the secondary storage system for creating secondary volumes. |
|
secondary_resource_group_name string |
The secondary resource group name. |
|
set_alua_mode boolean |
Set the ALUA mode to True for cross path server configuration. Choices:
|
|
should_match_volume_ids boolean |
Specify whether the primary volume ID and secondary volume ID should match in gad pairs. Default value is false. Choices:
|
|
virtual_storage_serial_number string |
Virtual storage serial number for GAD pair creation. |
|
volume_size string |
Size of volumes to create (e.g., ‘10GB’, ‘1TB’). |
storage_system_info dictionary | Information about the storage system. This field is an optional field. |
|
serial string |
The serial number of the storage system. |
Attributes
Attribute | Support | Description |
|---|---|---|
check_mode | Support: none | Determines if the module should run in check mode. |
Examples
- name: Batch create GAD pairs with host groups
hitachivantara.vspone_block.vsp.hv_gad_bulk:
connection_info:
address: storage1.company.com
username: "username"
password: "password"
secondary_connection_info:
address: storage2.company.com
username: "admin"
password: "secret"
spec:
number_of_pairs: 5
primary_pool_id: 0
secondary_pool_id: 0
volume_size: "10GB"
capacity_saving: "compression"
primary_volume_base_name: "gad_vol"
primary_volume_base_name_start_number: 1
copy_group_name: "batch_gad_cg"
copy_pair_base_name: "batch_pair"
quorum_disk_id: 0
is_new_group_creation: true
primary_hostgroups:
- name: "primary_hg_1"
port_id: "CL1-A"
enable_preferred_path: true
secondary_hostgroups:
- name: "secondary_hg_1"
port_id: "CL2-A"
enable_preferred_path: false
- name: Batch create GAD pairs with host groups
hitachivantara.vspone_block.vsp.hv_gad_bulk:
connection_info:
address: storage1.company.com
username: "username"
password: "password"
secondary_connection_info:
address: storage2.company.com
username: "admin"
password: "secret"
spec:
number_of_pairs: 5
should_match_volume_ids: true
primary_pool_id: 0
secondary_pool_id: 0
volume_size: "10GB"
capacity_saving: "compression"
primary_volume_base_name: "gad_vol"
primary_volume_base_name_start_number: 1
copy_group_name: "batch_gad_cg"
copy_pair_base_name: "batch_pair"
quorum_disk_id: 0
is_new_group_creation: true
primary_hostgroups:
- name: "primary_hg_1"
port_id: "CL1-A"
enable_preferred_path: true
secondary_hostgroups:
- name: "secondary_hg_1"
port_id: "CL2-A"
enable_preferred_path: false
- name: Batch create GAD pairs with NVMe subsystems
hitachivantara.vspone_block.vsp.hv_gad_bulk:
connection_info:
address: storage1.company.com
username: "username"
password: "password"
secondary_connection_info:
address: storage2.company.com
username: "admin"
password: "secret"
spec:
number_of_pairs: 3
primary_pool_id: 0
secondary_pool_id: 0
volume_size: "20GB"
copy_group_name: "nvme_gad_cg"
copy_pair_base_name: "nvme_pair"
quorum_disk_id: 0
is_new_group_creation: true
primary_nvm_subsystem:
name: "primary-nvme-subsystem"
paths:
- "nqn.2014-08.com.example:nvme:primary-host"
secondary_nvm_subsystem:
name: "secondary-nvme-subsystem"
paths:
- "nqn.2014-08.com.example:nvme:secondary-host"
- name: Batch create GAD pairs with iSCSI targets
hitachivantara.vspone_block.vsp.hv_gad_bulk:
connection_info:
address: storage1.company.com
username: "username"
password: "password"
secondary_connection_info:
address: storage2.company.com
username: "admin"
password: "secret"
spec:
number_of_pairs: 4
primary_pool_id: 0
secondary_pool_id: 0
volume_size: "50GB"
copy_group_name: "iscsi_gad_cg"
copy_pair_base_name: "iscsi_pair"
quorum_disk_id: 0
is_new_group_creation: true
primary_iscsi_targets:
- name: "iscsi_hg_primary"
port_id: "CL3-A"
secondary_iscsi_targets:
- name: "iscsi_target_secondary"
port_id: "CL4-A"
enable_preferred_path: false
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key | Description |
|---|---|
comments list / elements=string | List of comments or warnings from the batch operation. Returned: success Sample: |
gad_pairs list / elements=dictionary | List of created GAD pair objects from the batch operation. Returned: success |
|
consistency_group_id integer |
Consistency group ID. Returned: success Sample: |
|
copy_group_name string |
Copy group name. Returned: success Sample: |
|
copy_pace_track_size integer |
Deprecated. Copy pace track size. Returned: success Sample: |
|
copy_pair_name string |
Pair name. Returned: success Sample: |
|
copy_rate string |
Deprecated. Copy rate. Returned: success Sample: |
|
fence_level string |
Fence level. Returned: success Sample: |
|
is_alua_enabled boolean |
Whether ALUA is enabled or not. Returned: success Sample: |
|
local_device_group_name string |
Local device group name. Returned: success Sample: |
|
mirror_unit_id integer |
Deprecated. Use mirror_unit_number instead. Returned: success Sample: |
|
mirror_unit_number integer |
Mirror unit number. Returned: success Sample: |
|
primary_virtual_serial_number integer |
Primary virtual serial number. Returned: success Sample: |
|
primary_virtual_volume_id integer |
Primary virtual volume id. Returned: success Sample: |
|
primary_volume_id integer |
Primary volume ID. Returned: success Sample: |
|
primary_volume_id_hex string |
Primary volume ID in hexadecimal format. Returned: success Sample: |
|
primary_volume_status string |
Status of the GAD pair. Returned: success Sample: |
|
primary_volume_storage_id string |
Deprecated. Use primary_volume_storage_serial_number instead. Returned: success Sample: |
|
primary_volume_storage_serial_number string |
Primary volume storage serial number. Returned: success Sample: |
|
primary_vsm_resource_group_name string |
Primary VSM resource group name. Returned: success Sample: |
|
quorum_disk_id integer |
Quorum disk ID. Returned: success Sample: |
|
remote_device_group_name string |
Remote device group name. Returned: success Sample: |
|
remote_mirror_copy_pair_id string |
Deprecated. Remote mirror copy pair ID. Returned: success Sample: |
|
secondary_virtual_serial_number integer |
Secondary virtual storage serial number. Returned: success Sample: |
|
secondary_virtual_volume_id integer |
Secondary virtual volume ID. Returned: success Sample: |
|
secondary_volume_id integer |
Secondary volume ID. Returned: success Sample: |
|
secondary_volume_id_hex string |
Secondary volume ID in hexadecimal format. Returned: success Sample: |
|
secondary_volume_status string |
Status of the GAD pair. Returned: success Sample: |
|
secondary_volume_storage_id string |
Deprecated. Use secondary_volume_storage_serial_number instead. Returned: success Sample: |
|
secondary_volume_storage_serial_number string |
Secondary volume storage serial number. Returned: success Sample: |
|
secondary_vsm_resource_group_name string |
Secondary VSM resource group name. Returned: success Sample: |
Collection links
© 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_bulk_module.html