hitachivantara.vspone_block.vsp.hv_hg module – Manages host group on Hitachi VSP storage system.

Note

This module is part of the hitachivantara.vspone_block collection (version 4.5.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_hg.

New in hitachivantara.vspone_block 3.0.0

Synopsis

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:

  • "direct" ← (default)

password

string

Password for authentication. This is a required field.

username

string

Username for authentication. This is a required field.

spec

dictionary

Specification for hostgroup operation.

asymmetric_access_priority

string

Asymmetric access priority level for ALUA host group. Required for the Asymmetric access priority level for ALUA host group task.

Choices:

  • "low"

  • "high"

host_group_number

integer

The host group number. Required for the Asymmetric access priority level for ALUA host group /Release the host reservation status by specifying a host group /Release the host reservation status by specifying the LU path tasks.

host_mode

string

Host mode of host group. Optional for the Create a host group task. Required for the Update host mode and host mode options task.

Choices:

  • "LINUX"

  • "VMWARE"

  • "HP"

  • "OPEN_VMS"

  • "TRU64"

  • "SOLARIS"

  • "NETWARE"

  • "WINDOWS"

  • "HI_UX"

  • "AIX"

  • "VMWARE_EXTENSION"

  • "WINDOWS_EXTENSION"

  • "UVM"

  • "HP_XP"

  • "DYNIX"

host_mode_options

list / elements=integer

List of host group host mode option numbers. Optional for the Create a host group task. Required for the Update host mode and host mode options task.

0 # RESERVED

2 # VERITAS_DB_EDITION_ADV_CLUSTER

6 # TPRLO

7 # AUTO_LUN_RECOGNITION

12 # NO_DISPLAY_FOR_GHOST_LUN

13 # SIM_REPORT_AT_LINK_FAILURE

14 # HP_TRUECLUSTER_WITH_TRUECOPY

15 # RAID_HACMP

22 # VERITAS_CLUSTER_SERVER

23 # REC_COMMAND_SUPPORT

25 # SUPPORT_SPC_3_PERSISTENT_RESERVATION

33 # SET_REPORT_DEVICE_ID_ENABLE

39 # CHANGE_NEXUS_SPECIFIED_IN_SCSI_TARGET_RESET

40 # VVOL_EXPANSION

41 # PRIORITIZED_DEVICE_RECOGNITION

42 # PREVENT_OHUB_PCI_RETRY

43 # QUEUE_FULL_RESPONSE

48 # HAM_SVOL_READ

49 # BB_CREDIT_SETUP_1

50 # BB_CREDIT_SETUP_2

51 # ROUND_TRIP_SETUP

52 # HAM_AND_CLUSTER_SW_FOR_SCSI_2

54 # EXTENDED_COPY

57 # HAM_RESPONSE_CHANGE

60 # LUN0_CHANGE_GUARD

61 # EXPANDED_PERSISTENT_RESERVE_KEY

63 # VSTORAGE_APIS_ON_T10_STANDARDS

65 # ROUND_TRIP_EXTENDED_SETUP

67 # CHANGE_OF_ED_TOV_VALUE

68 # PAGE_RECLAMATION_LINUX

69 # ONLINE_LUSE_EXPANSION

71 # CHANGE_UNIT_ATTENTION_FOR_BLOCKED_POOL_VOLS

72 # AIX_GPFS

73 # WS2012

78 # NON_PREFERRED_PATH

91 # DISABLE_IO_WAIT_FOR_OPEN_STACK

95 # CHANGE_SCSI_LU_RESET_NEXUS_VSP_HUS_VM

96 # CHANGE_SCSI_LU_RESET_NEXUS

97 # PROPRIETARY_ANCHOR_COMMAND_SUPPORT

100 # HITACHI_HBA_EMULATION_CONNECTION_OPTION

102 # GAD_STANDARD_INQURY_EXPANSION_HCS

105 # TASK_SET_FULL_RESPONSE_FOR_IO_OVERLOAD

110 # ODX Support for WS2012

113 # iSCSI CHAP Authentication Log

114 # Auto Asynchronous Reclamation on ESXi 6.5+

122 # TASK_SET_FULL_RESPONSE_AFTER_QOS_UPPER_LIMIT

124 # GUARANTEED_RESPONSE_DURING_CONTROLLER_FAILURE

131 # WCE_BIT_OFF_MODE

ldevs

list / elements=string

LDEVs to be mapped/unmapped with the host group. Supported format can be decimal or HEX. Optional for the Create a host group task. Required for the Present LDEVS/Unpresent LDEVS tasks.

lun

integer

LUN ID to be releases the host reservation status of the LU mapped to a specified LU path. Required for the Release the host reservation status by specifying the LU path task.

name

string

Name of the host group. If not given, it will create the name with prefix “smrha-” and add 10 digit random number at the end, for example “smrha-0806262996”. Optional for the Create a host group task. Required for the Update host mode and host mode options/Add WWNs to a host group /Remove WWNs from a host group/Present LDEVS/Unpresent LDEVS/Delete/Change or unset nick name of a WWN tasks.

port

string / required

FC Port. Required for the Create a host group/Update host mode and host mode options/Add WWNs to a host group /Remove WWNs from a host group/Present LDEVS/Unpresent LDEVS/Delete/Change or unset nick name of a WWN /Asymmetric access priority level for ALUA host group/Release the host reservation status by specifying a host group /Release the host reservation status by specifying the LU path tasks.

should_delete_all_ldevs

boolean

If the value is true, destroy the logical devices that are no longer attached to any host group or iSCSI target.

Choices:

  • false

  • true

should_release_host_reserve

boolean

If the value is true, release the host reserve. Required for the Release the host reservation status by specifying a host group /Release the host reservation status by specifying the LU path tasks.

Choices:

  • false

  • true

state

string

Subtask operation.

Choices:

  • "present_ldev"

  • "unpresent_ldev"

  • "add_wwn"

  • "remove_wwn"

  • "set_host_mode_and_hmo"

  • "present" ← (default)

wwns

list / elements=dictionary

List of host WWN to add or remove. Required for the Create a host group/Add WWNs to a host group /Remove WWNs from a host group tasks.

nick_name

string

Nickname of the host. Optional for the Create a host group/Add WWNs to a host group /Remove WWNs from a host group tasks. Required for the Change or unset nick name of a WWN task.

wwn

string / required

WWN of the host. Required for the Create a host group/Add WWNs to a host group /Remove WWNs from a host group/Change or unset nick name of a WWN tasks.

state

string

Set state to present for create and update host group

Set state to absent for delete host group

Choices:

  • "present" ← (default)

  • "absent"

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.

Notes

Note

  • The output parameters entitlement_status, subscriber_id and partner_id were removed in version 3.4.0. They were also deprecated due to internal API simplification and are no longer supported.

  • Connection type gateway was removed starting from version 3.4.0. Please use an earlier version if you require this connection type.

Examples

- name: Create host group with LDEVs and WWNs
  hitachivantara.vspone_block.vsp.hv_hg:
    state: present
    connection_info:
      address: storage1.company.com
      username: "dummy_user"
      password: "dummy_password"
    spec:
      name: 'testhg26dec'
      port: 'CL1-A'
      host_mode: 'VMWARE_EXTENSION'
      host_mode_options: [40]
      wwns:
        - wwn: '100000109B583B2D'
          nick_name: 'test1'
        - wwn: '100000109B583B2C'
          nick_name: 'test2'
      ldevs: [393, 851]

- name: Delete host group
  hitachivantara.vspone_block.vsp.hv_hg:
    state: absent
    connection_info:
      address: storage1.company.com
      username: "dummy_user"
      password: "dummy_password"
    spec:
      name: 'testhg26dec'
      port: 'CL1-A'

- name: Present LDEVs to hostgroup
  hitachivantara.vspone_block.vsp.hv_hg:
    state: present
    connection_info:
      address: storage1.company.com
      username: "dummy_user"
      password: "dummy_password"
    spec:
      state: present_ldev
      name: 'testhg26dec'
      port: 'CL1-A'
      ldevs: [300, 400]

- name: Unpresent LDEVs from hostgroup
  hitachivantara.vspone_block.vsp.hv_hg:
    state: present
    connection_info:
      address: storage1.company.com
      username: "dummy_user"
      password: "dummy_password"
    spec:
      state: unpresent_ldev
      name: 'testhg26dec'
      port: 'CL1-A'
      ldevs: [800, 801]

- name: Add WWNs to hostgroup
  hitachivantara.vspone_block.vsp.hv_hg:
    state: present
    connection_info:
      address: storage1.company.com
      username: "dummy_user"
      password: "dummy_password"
    spec:
      state: add_wwn
      name: 'testhg26dec'
      port: 'CL1-A'
      wwns:
        - wwn: '200000109B3C0FD3'
          nick_name: 'test1'
        - wwn: '200000109B3C0FD4'
        - wwn: '200000109B3C0FD5'

- name: Remove WWNs from hostgroup
  hitachivantara.vspone_block.vsp.hv_hg:
    state: present
    connection_info:
      address: storage1.company.com
      username: "dummy_user"
      password: "dummy_password"
    spec:
      state: remove_wwn
      name: 'testhg26dec'
      port: 'CL1-A'
      wwns:
        - wwn: '200000109B3C0FD3'

- name: Update host group
  hitachivantara.vspone_block.vsp.hv_hg:
    state: present
    connection_info:
      address: storage1.company.com
      username: "dummy_user"
      password: "dummy_password"
    spec:
      state: set_host_mode_and_hmo
      name: 'testhg26dec'
      port: 'CL1-A'
      host_mode: 'VMWARE_EXTENSION'
      host_mode_options: [54, 63]

- name: Asymmetric access priority level for ALUA host group.
  hitachivantara.vspone_block.vsp.hv_hg:
    state: present
    connection_info:
      address: storage1.company.com
      username: "dummy_user"
      password: "dummy_password"
    spec:
      host_group_number: 208
      port: 'CL1-A'
      asymmetric_access_priority: 'high'

- name: Release the host reservation status by specifying the LU path.
  hitachivantara.vspone_block.vsp.hv_hg:
    state: present
    connection_info:
      address: storage1.company.com
      username: "dummy_user"
      password: "dummy_password"
    spec:
      host_group_number: 150
      port: 'CL1-A'
      should_release_host_reserve: true
      lun: 0

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key

Description

host_group

dictionary

Detailed information about the host group on the storage system.

Returned: always

host_group_id

integer

ID of the host group (internal identifier used by the storage system).

Returned: success

Sample: 33

host_group_name

string

Human readable name of the host group.

Returned: success

Sample: "AutoAnsibleHurPri01"

host_mode

string

Configured host mode for the host group (OS type or special mode).

Returned: success

Sample: "LINUX"

host_mode_options

list / elements=integer

List of host mode option identifiers currently set for the host group.

Returned: success

Sample: []

lun_paths

list / elements=dictionary

List of LUN path entries associated with this host group. Each entry describes an LDEV mapping and path metadata.

Returned: success

asymmetric_access_state

string

Asymmetric access state for the path (for ALUA-capable devices).

Returned: success

Sample: "Active/Optimized"

host_group_number

integer

Numeric host group identifier as exposed via the path.

Returned: success

Sample: 33

host_mode

string

Host mode string reported for the path (may include extra qualifiers).

Returned: success

Sample: "LINUX/IRIX"

host_mode_options

list / elements=integer

Host mode option identifiers reported for the path.

Returned: success

Sample: []

is_alua_enabled

boolean

Whether ALUA is enabled for the path.

Returned: success

Sample: false

is_command_device

boolean

Whether the LDEV is marked as a command device.

Returned: success

Sample: false

ldev_id

integer

Logical device ID (decimal).

Returned: success

Sample: 3694

ldev_id_hex

string

Logical device ID formatted in hex (colon separated).

Returned: success

Sample: "00:0E:6E"

lu_host_reserve

dictionary

Host reservation information for the LU path, presented as booleans for reservation types and keys.

Returned: success

aca_reserve

boolean

Whether ACA (Auto Contingent Allegiance) reserve is set.

Returned: success

Sample: false

mainframe

boolean

Whether mainframe-style reserve is set.

Returned: success

Sample: false

open_system

boolean

Whether open system (standard SCSI-based) reserve is set.

Returned: success

Sample: false

persistent

boolean

Whether persistent reservation is active.

Returned: success

Sample: false

pgr_key

boolean

Presence of a persistent group reservation key.

Returned: success

Sample: false

lun

integer

LUN number assigned to this path.

Returned: success

Sample: 17

lun_id

string

Identifier string for the LU path, typically combining port, hostgroup number and LUN.

Returned: success

Sample: "CL4-B,33,17"

port_id

string

Port identifier associated with this path entry.

Returned: success

Sample: "CL4-B"

port_id

string

Default or requested port associated with the host group operations (e.g., CLx-A).

Returned: success

Sample: "CL4-B"

resource_group_id

integer

Resource group ID associated with the host group (if applicable).

Returned: success

Sample: 0

wwns

list / elements=dictionary

List of WWN entries (host HBA identifiers) that belong to the host group.

Returned: success

Sample: []

nick_name

string

Optional human readable nickname assigned to the WWN.

Returned: success

Sample: "app-server-1"

wwn

string

World Wide Name string for the host HBA.

Returned: success

Sample: "100000109B583B2D"

Authors

  • Hitachi Vantara LTD (@hitachi-vantara)