hitachivantara.vspone_block.vsp.hv_truecopy_bulk module – Manages bulk TrueCopy 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_truecopy_bulk.
New in hitachivantara.vspone_block 4.7.0
Synopsis
- This module allows for the bulk creation of TrueCopy pairs n VSP block storage systems
- Enables efficient provisioning of multiple TrueCopy pairs in a single operation.
- For examples, go to URL https://github.com/hitachi-vantara/vspone-block-ansible/blob/main/playbooks/vsp_direct/truecopy_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 Hitachi storage system. |
|
api_token string |
This field is used to pass the value of the lock token of the secondary storage to operate on locked resources. |
|
password string |
Password for authentication.This is a required field if api_token is not provided. |
|
username string |
Username for authentication. This is a required field if api_token is not provided. |
spec dictionary / required | Specification for the bulk TrueCopy pairs task. |
|
begin_primary_volume_id string |
Beginning primary volume ID for batch creation using existing volumes. |
|
begin_secondary_volume_id string |
Begin LDEV ID for secondary volume range. |
|
capacity_saving string |
Capacity saving mode for new volumes (e.g., ‘compression’, ‘deduplication_compression’). |
|
consistency_group_id integer |
Consistency Group ID, 0 to 255. This is an optional field. |
|
copy_group_name string / required |
Name of 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 / required |
Prefix for the copy pairs names. Actual copy pair names will be <copy_pair_base_name>_<primary_volume_id>_<secondary_volume_id> |
|
boolean |
Specify whether to create a data reduction shared volume. This value is set to true for Thin Image Advance. Choices:
|
|
do_initial_copy boolean |
Perform initial copy. This is an optional field during create operation. Choices:
|
|
end_primary_volume_id string |
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 |
Specifies the primary volume fence level setting and determines if the host is denied access or continues to access the primary volume when the pair is suspended because of an error. This is an optional field. Choices:
|
|
is_consistency_group boolean |
This is an optional field during create operation. Depending on the value, this attribute specifies whether to register the new pair in a consistency group. If true, the new pair is registered in a consistency group. If false, the new pair is not registered in a consistency group. Choices:
|
|
is_data_reduction_force_copy boolean |
Force copy for data reduction. This is an optional field during create operation. Choices:
|
|
is_new_group_creation boolean |
Create a new copy group. This is an optional field during create operation. Choices:
|
|
local_device_group_name string |
Name of the local device group. This is an optional field. |
|
number_of_pairs integer / required |
Number of GAD pairs to create in batch. |
|
path_group_id integer |
This is an optional field during create operation. Specify the path group ID in the range from 0 to 255. If you are unsure don’t use this parameter. If you omit this value or specify 0, the lowest path group ID in the specified path group is used. |
|
primary_hostgroups list / elements=dictionary |
List of hostgroup objects for the primary volumes. |
|
lun_id integer |
LUN ID of the host group on the secondary storage system. This is not required for create operation. |
|
name string / required |
Name of the host group on the secondary storage system. This is required for create operation. |
|
port_id string / required |
Port of the host group on the secondary storage system. This is required for create operation. |
|
primary_iscsi_targets list / elements=dictionary |
The list of iscsi targets on the primary storage device. |
|
lun_id integer |
LUN ID. |
|
name string / required |
ISCSI target name. |
|
port_id string / required |
Port ID. |
|
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 / required |
ID of the dynamic pool where the primary volumes will be created. |
|
primary_volume_base_name string |
Prefix for primary volume names when creating new volumes in bulk. |
|
primary_volume_base_name_number_of_digits integer |
Number of digits to use for the suffix of primary volume names during bulk creation. Choices:
|
|
primary_volume_base_name_start_number integer |
The starting number that will be appended to primary_volume_base_name to generate the first volume name during bulk creation. |
|
remote_device_group_name string |
Name of the remote device group. This is an optional field. |
|
secondary_hostgroups list / elements=dictionary |
List of hostgroup objects for the secondary volumes. |
|
lun_id integer |
LUN ID of the host group on the secondary storage system. This is not required for create operation. |
|
name string / required |
Name of the host group on the secondary storage system. This is required for create operation. |
|
port_id string / required |
Port of the host group on the secondary storage system. This is required for create operation. |
|
secondary_iscsi_targets list / elements=dictionary |
The list of iscsi targets on the secondary storage device. |
|
lun_id integer |
LUN ID. |
|
name string / required |
ISCSI target name for the secondary storage system. |
|
port_id string / required |
Port ID. |
|
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 / required |
ID of the dynamic pool where the secondary volumes will be created. |
|
volume_size string / required |
Size of volumes to create (e.g., ‘10GB’, ‘1TB’) to create TrueCopy pairs. |
state string | Set state to Choices:
|
Attributes
Attribute | Support | Description |
|---|---|---|
check_mode | Support: none | Determines if the module should run in check mode. |
Examples
- name: Create a TrueCopy pairs in bulk mode
hitachivantara.vspone_block.vsp.hv_truecopy_bulk:
connection_info:
address: storage1.company.com
username: "admin"
password: "secret"
secondary_connection_info:
address: storage2.company.com
username: "admin"
password: "secret"
spec:
number_of_pairs: 2
copy_group_name: "rd_tc_cg_123"
copy_pair_base_name: "rd_tc_cp_123_"
primary_pool_id: 0
secondary_pool_id: 0
volume_size: "1GB"
primary_hostgroups:
- name: "snewar-common-hg-01"
port_id: "CL2-A"
- name: "snewar-common-hg-01"
port_id: "CL2-B"
secondary_hostgroups:
- name: "snewar-common-hg-01"
port_id: "CL2-A"
- name: "snewar-common-hg-01"
port_id: "CL2-B"
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key | Description |
|---|---|
truecopy_info list / elements=dictionary | List of TrueCopy pair objects returned by the module. Returned: success |
|
consistency_group_id integer |
Consistency Group ID. Returned: success Sample: |
|
copy_group_name string |
Name of the copy group. Returned: success Sample: |
|
copy_pair_name string |
Name of the copy pair. Returned: success Sample: |
|
copy_progress_rate integer |
Deprecated.Copy progress rate. Returned: success Sample: |
|
fence_level string |
Fence level. Returned: success Sample: |
|
local_device_group_name string |
Name of the local device group to retrieve TrueCopy pair information for. Returned: success Sample: |
|
primary_volume_id integer |
Primary volume ID. Returned: success Sample: |
|
primary_volume_id_hex string |
Primary volume ID in hex format. Returned: success Sample: |
|
primary_volume_size string |
Size of the primary volume. Returned: success Sample: |
|
primary_volume_status string |
Primary volume status. Returned: success Sample: |
|
primary_volume_storage_serial_number string |
Storage serial number of the primary volume. Returned: success Sample: |
|
pvol_status string |
Deprecated. Use primary_volume_status instead. Returned: success Sample: |
|
pvol_storage_device_id string |
Deprecated. PVOL storage device ID. Returned: success Sample: |
|
remote_device_group_name string |
Name of the remote device group to retrieve TrueCopy pair information for. Returned: success Sample: |
|
remote_mirror_copy_pair_id string |
Remote mirror copy pair ID. Returned: success Sample: |
|
secondary_volume_id integer |
Secondary volume ID. Returned: success Sample: |
|
secondary_volume_id_hex string |
Secondary volume ID in hex format. Returned: success Sample: |
|
secondary_volume_size string |
Size of the secondary volume. Returned: success Sample: |
|
secondary_volume_status string |
Secondary volume status. Returned: success Sample: |
|
secondary_volume_storage_serial_number string |
Storage serial number of the secondary volume. Returned: success Sample: |
|
storage_serial_number string |
Deprecated. Use primary_volume_storage_serial_number instead. Returned: success Sample: |
|
svol_status string |
Deprecated. Use secondary_volume_status instead. Returned: success Sample: |
|
svol_storage_device_id string |
Deprecated. SVOL storage device ID. 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_truecopy_bulk_module.html