apex_navigator_block_clones (Resource)

This Terraform resource is used to manage clones on Apex Navigator. We can create, read, update and delete the Clones using this resource.We can also import an existing clone from Apex Navigator.

Example Usage

/*
Copyright (c) 2024 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.
*/

resource "apex_navigator_block_clones" "example" {
  # Name of the clone
  name = "CloneTerraformName"
  # Description of the clone
  description = "consulente autem dictum est, altum videtur esse ius potest"
  # Mobility target ID
  mobility_target_id = "POWERFLEX-ABCD1234567890__DATAMOBILITYGROUP__12345678-1234-1234-1234-123456789012"
  # System ID
  system_id = "POWERFLEX-ELMSIOENG10015"
  # List of host ids you want to add to the clone
  host_mappings = [
    {
      host_id = "POWERFLEX-ABCD1234567890__HOST__12345678901234"
    }
  ]
  # Note: PowerFlex credentials are required to activate the system for clones related operations.
  powerflex {
    username = "example-username"
    password = "example-pass"
  }
}

output "examples_clones" {
  value     = apex_navigator_block_clones.example
  sensitive = true
}

Schema

Required

  • mobility_target_id (String) Target ID
  • system_id (String)

Optional

  • description (String) Description of the clone
  • host_mappings (Attributes List) This represents the mapping of a repurposed (clone) storage object to a host (presumably using the clone for some analytical workload) (see below for nested schema)
  • id (String) The ID of the clone
  • name (String) Name of the clone
  • powerflex (Block, Optional) (see below for nested schema)

Read-Only

  • clone_volumes (Attributes List) A clone mobility member provides details of clone volume (see below for nested schema)
  • creation_timestamp (String) When the clone was created
  • image_timestamp (String) Image timestamp
  • refresh_timestamp (String) When the clone was last updated

Nested Schema for host_mappings

Required:

  • host_id (String) Identifier of the host

Read-Only:

  • host_initiator_protocol (String) Type of the host
  • host_ip (String) IP address of host
  • host_name (String) Name of host/SDC to be mapped to the clone
  • id (String) This is a host mappings id generated by APEX Navigator for Multicloud Storage
  • nqn (String) NVMe qualified name. Only applicable if host_initiator_protocol is NVMe

Nested Schema for powerflex

Required:

  • password (String, Sensitive) Password of the powerflex
  • username (String) Username of the powerflex

Optional:

  • host (String) Host, ip or hostname of the powerflex. If left empty we will attempt to get the ip through Apex from the ID
  • insecure (Boolean) Validated the certificate when connecting to the powerflex, defaults if unset to true
  • scheme (String) Scheme of the powerflex, defaults if unset to https

Nested Schema for clone_volumes

Read-Only:

  • id (String) ID of the member
  • name (String) Name of the member
  • parent_id (String) Identifier of the related mobility member
  • size (String) Size of the member

Import

Import is supported using the following syntax:

/*
Copyright (c) 2021-2024 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.
*/

terraform import apex_navigator_block_clones.example "{\"id\":\"<clone-id>\",\"system_id\":\"<system-id>\",\"username\":\"<powerflex-username>\",\"password\":\"<powerflex-password>\",\"host\":\"<powerflex-host>\",\"insecure\":<insecure>,\"scheme\":\"<powerflex-scheme>\"}"