hitachivantara.vspone_block.vsp.hv_nvm_subsystems module – Manages NVM subsystems on Hitachi VSP storage systems.

Note

This module is part of the hitachivantara.vspone_block collection (version 3.4.0).

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_nvm_subsystems.

New in hitachivantara.vspone_block 3.2.0

Synopsis

Requirements

The below requirements are needed on the host that executes this module.

  • python >= 3.8

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

This field is used to pass the value of the lock token to operate on locked resources.

password

string

Password for authentication. This is a required field.

username

string

Username for authentication. This is a required field.

spec

dictionary / required

Specification for the NVM subsystems to be used.

enable_namespace_security

boolean

Namespace security settings.

Choices:

  • false

  • true ← (default)

force

boolean

This flag is used to force the operation.

Choices:

  • false ← (default)

  • true

host_mode

string

The host mode of the NVM subsystem.

host_nqns

list / elements=dictionary

The host NQNs of the NVM subsystem.

id

integer

The ID of the NVM subsystem.

name

string

The name of the NVM subsystem.If not given, it assigns the name of the NVM subsytem to “smrha-<10 digit random number>”.

namespaces

list / elements=dictionary

The namespaces of the NVM subsystem.

ldev_id

integer / required

The LDEV ID of the namespace.

nickname

string

The nickname of the namespace.

paths

list / elements=string

The paths of the namespace.

ports

list / elements=string

The ports of the NVM subsystem.

state

string

The specific operation to perform on the NVM subsystem.

add_port - Add ports to the NVM subsystem.

remove_port - Remove ports from the NVM subsystem.

add_host_nqn - Add host NQNs to the NVM subsystem.

remove_host_nqn - Remove host NQNs from the NVM subsystem.

add_namespace - Add namespaces to the NVM subsystem.

remove_namespace - Remove namespaces from the NVM subsystem.

add_namespace_path - Add paths to the namespace.

remove_namespace_path - Remove paths from the namespace.

Choices:

  • "add_port"

  • "remove_port"

  • "add_host_nqn"

  • "remove_host_nqn"

  • "add_namespace"

  • "remove_namespace"

  • "add_namespace_path"

  • "remove_namespace_path"

state

string

The desired state of the NVM subsystem.

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.

Examples

- name: Create an NVM Subsystem
  hitachivantara.vspone_block.vsp.hv_nvm_subsystems:
    connection_info:
      address: storage1.company.com
      username: "admin"
      password: "secret"
    state: "present"
    spec:
      name: "nvm_tcp_01"
      id: 1000
      host_mode: "VMWARE_EX"
      enable_namespace_security: true
      ports: ["CL1-D"]
      host_nqns:
        - nqn: "nqn.2014-08.org.example:uuid:4b73e622-ddc1-449a-99f7-412c0d3baa40"
          nickname: "my_host_nqn_40"
      namespaces:
        - ldev_id: 11101
          nickname: "nickname"
          paths: ["nqn.2014-08.org.example:uuid:4b73e622-ddc1-449a-99f7-412c0d3baa40"]

- name: Add host NQNs to an NVM Subsystem with a specific ID
  hitachivantara.vspone_block.vsp.hv_nvm_subsystems:
    connection_info:
      address: storage1.company.com
      username: "admin"
      password: "secret"
    spec:
      id: 1000
      state: "add_host_nqn"
      host_nqns:
        - nqn: "nqn.2014-08.org.example:uuid:4b73e622-ddc1-449a-99f7-412c0d3baa41"
          nickname: "my_host_nqn_41"

- name: Remove host NQNs from an NVM Subsystem with a specific ID
  hitachivantara.vspone_block.vsp.hv_nvm_subsystems:
    connection_info:
      address: storage1.company.com
      username: "admin"
      password: "secret"
    spec:
      id: 1000
      state: "remove_host_nqn"
      host_nqns:
        - nqn: "nqn.2014-08.org.example:uuid:4b73e622-ddc1-449a-99f7-412c0d3baa41"
          nickname: "my_host_nqn_41"

- name: Delete an NVM Subsystem with a specific Id forcefully
  hitachivantara.vspone_block.vsp.hv_nvm_subsystems:
    connection_info:
      address: storage1.company.com
      username: "admin"
      password: "secret"
    state: "absent"
    spec:
      id: "nvm_subsystems_id_18"
      force: true

Return Values

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

Key

Description

nvm_subsystems

list / elements=dictionary

The NVM subsystem information.

Returned: always

host_nqn_info

list / elements=dictionary

List of host NQNs and their nicknames.

Returned: success

host_nqn

string

The host NQN.

Returned: success

Sample: "nqn.2014-08.org.example:uuid:4b73e622-ddc1-449a-99f7-412c0d3baa40"

host_nqn_nickname

string

The nickname of the host NQN.

Returned: success

Sample: "my_host_nqn_40"

namespace_paths_info

list / elements=dictionary

List of namespace paths information.

Returned: success

host_nqn

string

The host NQN.

Returned: success

Sample: "nqn.2014-08.org.example:uuid:4b73e622-ddc1-449a-99f7-412c0d3baa40"

ldev_hex_id

string

The hexadecimal ID of the LDEV.

Returned: success

Sample: "00:2b:5c"

ldev_id

integer

The LDEV ID of the namespace.

Returned: success

Sample: 11101

namespace_id

integer

The ID of the namespace.

Returned: success

Sample: 3

namespaces_info

list / elements=dictionary

List of namespaces information.

Returned: success

block_capacity

integer

The block capacity of the namespace.

Returned: success

Sample: 23068672

capacity_in_unit

string

The capacity of the namespace in human-readable format.

Returned: success

Sample: "11.00 G"

ldev_hex_id

string

The hexadecimal ID of the LDEV.

Returned: success

Sample: "00:2b:5c"

ldev_id

integer

The LDEV ID of the namespace.

Returned: success

Sample: 11101

namespace_id

integer

The ID of the namespace.

Returned: success

Sample: 3

namespace_nickname

string

The nickname of the namespace.

Returned: success

Sample: "nickname"

nvm_subsystem_info

dictionary

Information about the NVM subsystem.

Returned: success

host_mode

string

The host mode of the NVM subsystem.

Returned: success

Sample: "VMWARE_EX"

namespace_security_setting

string

The namespace security setting.

Returned: success

Sample: "Enable"

nvm_subsystem_id

integer

The ID of the NVM subsystem.

Returned: success

Sample: 1000

nvm_subsystem_name

string

The name of the NVM subsystem.

Returned: success

Sample: "nvm_tcp_01"

resource_group_id

integer

The resource group ID of the NVM subsystem.

Returned: success

Sample: 0

t10pi_mode

string

The T10PI mode of the NVM subsystem.

Returned: success

Sample: "Disable"

port

list / elements=dictionary

List of ports of the NVM subsystem.

Returned: success

port_id

string

The ID of the port.

Returned: success

Sample: "CL1-D"

port_type

string

The type of the port.

Returned: success

Sample: "NVME_TCP"

storage_serial_number

string

The serial number of the storage system.

Returned: success

Sample: "810005"

Authors

  • Hitachi Vantara LTD (@hitachi-vantara)