powermax_volume (Resource)

Resource for managing Volumes in PowerMax array. PowerMax volumes is an identifiable unit of data storage. Storage groups are sets of volumes.

Example Usage

/*
Copyright (c) 2023 Dell Inc., or its subsidiaries. All Rights Reserved.

Licensed under the Mozilla Public License Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://mozilla.org/MPL/2.0/


Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

# Available actions: Create, Update (vol_name, mobility_id_enabled, size, cap_unit), Delete and Import an existing volume from the PowerMax Array.
# After `terraform apply` of this example file it will create a new volume with the name set in `vol_name` attribute on the PowerMax

# PowerMax volumes is an identifiable unit of data storage. Storage groups are sets of volumes.
resource "powermax_volume" "test" {

  # Attributes which are able to be modified after create (vol_name, mobility_id_enabled, size, cap_unit)

  # Required name of the volume to be created
  vol_name = "terraform_volume"

  # Required size of the volume
  size = 2.45

  # Required name of the storage group which the volume will be created with
  sg_name = "terraform_sg"

  # Optional Default Unit is GB
  # Possible units are MB, GB, TB, and CYL
  cap_unit = "GB"

  # Optional enable the mobility id 
  mobility_id_enabled = false

}

# After the execution of above resource block, a PowerMax volume has been created at PowerMax array.
# For more information about the newly created resource use the `terraform show` command to review the current state

Schema

Required

  • sg_name (String) The name of the storage group. sg_name is required while creating the volume.
  • size (Number) The size of the volume. (Update Supported)
  • vol_name (String) The name of the volume. Only alphanumeric characters, underscores ( _ ). (Update Supported)

Optional

  • cap_unit (String) The Capacity Unit corresponding to the size. (Update Supported)
  • mobility_id_enabled (Boolean) States whether mobility ID is enabled on the volume. (Update Supported)

Read-Only

  • allocated_percent (Number) The allocated percentage of the volume.
  • effective_wwn (String) Effective WWN of the volume.
  • emulation (String) The emulation of the volume Enumeration values.
  • encapsulated (Boolean) States whether the volume is encapsulated.
  • encapsulated_wwn (String) Encapsulated WWN of the volume.
  • has_effective_wwn (Boolean) States whether volume has effective WWN.
  • id (String) The ID of the volume.
  • nguid (String) The NGUID of the volume.
  • num_of_front_end_paths (Number) The number of front end paths of the volume.
  • num_of_storage_groups (Number) The number of storage groups associated with the volume.
  • oracle_instance_name (String) Oracle instance name associated with the volume.
  • pinned (Boolean) States whether the volume is pinned.
  • rdf_group_ids (Attributes List) The RDF groups associated with the volume. (see below for nested schema)
  • reserved (Boolean) States whether the volume is reserved.
  • snapvx_source (Boolean) States whether the volume is a snapvx source.
  • snapvx_target (Boolean) States whether the volume is a snapvx target.
  • ssid (String) The ssid of the volume.
  • status (String) The status of the volume.
  • storage_groups (Attributes List) List of storage groups which are associated with the volume. (see below for nested schema)
  • symmetrix_port_key (Attributes List) The symmetrix ports associated with the volume. (see below for nested schema)
  • type (String) The type of the volume.
  • unreducible_data_gb (Number) The amount of unreducible data in Gb.
  • wwn (String) The WWN of the volume.

Nested Schema for rdf_group_ids

Read-Only:

  • label (String) The label of the rdf group.
  • rdf_group_number (Number) The number of rdf group.

Nested Schema for storage_groups

Read-Only:

  • parent_storage_group_name (String) The ID of the storage group parents.
  • storage_group_name (String) The ID of the storage group.

Nested Schema for symmetrix_port_key

Read-Only:

  • director_id (String) The ID of the director.
  • port_id (String) The ID of the symmetrix port.

Import

Import is supported using the following syntax:

# Copyright (c) 2023 Dell Inc., or its subsidiaries. All Rights Reserved.

# Licensed under the Mozilla Public License Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at

#     http://mozilla.org/MPL/2.0/


# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# The command is
# terraform import powermax_volume.test <id>
# Example:
terraform import powermax_volume.test terraform_volume
# after running this command, populate the name field in the config file to start managing this resource