# Hitachi VSP Storage Configuration

Hitachi VSP (Virtual Storage Platform) storage systems provide enterprise-grade block storage with high availability, low latency, and robust data protection.&#x20;

Platform9 <code class="expression">space.vars.product\_name</code> integrates with Hitachi VSP arrays through the HBSD (Hitachi Block Storage Driver), supporting both iSCSI and Fibre Channel connectivity for automated volume provisioning, snapshots, cloning, and live migration.

Select a storage protocol below to view the complete configuration steps for your environment.

{% tabs %}
{% tab title="Hitachi VSP - iSCSI" %}
Hitachi VSP arrays provide block storage over IP networks through iSCSI, offering flexible connectivity using standard Ethernet infrastructure.

#### Prerequisites

Before you configure the Hitachi VSP iSCSI backend, complete these requirements:

* Administrative access to the Hitachi VSP storage array management interface.
* Create one or more storage pools on the Hitachi VSP array. Platform9 provisions volumes from the specified pools.
* Create a dedicated user account with administrative privileges on the Hitachi VSP array. This account requires permissions to create, delete, and manage volumes and host groups.
* Identify the Hitachi storage system serial number (storage ID). Platform9 uses this identifier to communicate with the array.
* Configure iSCSI target ports on the Hitachi VSP array. Target ports define the iSCSI interfaces that hosts use to access storage.
* Install required iSCSI packages on all hypervisor hosts and block-storage hosts:

```bash
  apt-get install open-iscsi multipath-tools
```

Platform9 uses these packages to discover and attach iSCSI volumes from the Hitachi VSP array.

* Verify network connectivity between Platform9 hosts and the Hitachi VSP management interface and iSCSI target ports.

#### Configuration parameters

* **san\_ip** (Required): Management IP address of the Hitachi VSP array. Used for all API communication with the storage system.
* **san\_login** (Required): Username for Hitachi VSP authentication. Must have administrative privileges.
* **san\_password** (Required): Password for Hitachi VSP authentication.
* **hitachi\_storage\_id** (Required): Serial number of the Hitachi VSP storage system. Uniquely identifies the array to the HBSD driver.
* **hitachi\_pools** (Required): Comma-separated list of pool names on the Hitachi VSP array for volume provisioning. Specify multiple pools for capacity distribution.
* **hitachi\_target\_ports** (Required): Comma-separated list of iSCSI target port identifiers on the Hitachi VSP array. Format: `CL1-A,CL2-A`.
* **hitachi\_compute\_target\_ports** (Optional): Comma-separated list of compute target port identifiers for host connectivity. Default: Empty (uses same ports as `hitachi_target_ports`).
* **hitachi\_group\_create** (Optional): Enables automatic host group creation on the Hitachi VSP array. Default: `true`.
* **hitachi\_copy\_speed** (Optional): Controls copy speed for volume operations. Valid values: `1` (slow), `2` (medium), `3` (fast). Default: `3`.
* **image\_volume\_cache\_enabled** (Optional): Enables image-volume caching to reduce image transfer time. Default: `true`.
* **image\_volume\_cache\_max\_count** (Optional): Maximum number of cached image volumes. Default: `50`.
* **image\_volume\_cache\_max\_size\_gb** (Optional): Maximum total size of cached image volumes in GB. Default: `200`.

#### Example configuration

Use the following JSON structure when adding a volume backend configuration in your cluster blueprint:

```json
{
  "<volume_type_name>": {
    "<volume_backend_name>": {
      "config": {
        "san_ip": "<hitachi_management_ip>",
        "san_login": "<username>",
        "san_password": "<password>",
        "hitachi_storage_id": "<storage_serial_number>",
        "hitachi_pools": "<pool_name>",
        "hitachi_target_ports": "<target_port_list>",
        "hitachi_compute_target_ports": "",
        "hitachi_group_create": true,
        "hitachi_copy_speed": 3,
        "image_volume_cache_enabled": true,
        "image_volume_cache_max_count": 50,
        "image_volume_cache_max_size_gb": 200
      },
      "driver": "HitachiISCSI"
    }
  }
}
```

Replace the placeholder values with your specific configuration:

* `<volume_type_name>`: A descriptive name for the volume type (for example, `hitachi-iscsi`).
* `<volume_backend_name>`: A unique identifier for this backend configuration.
* `<hitachi_management_ip>`: The IP address of your Hitachi VSP management interface.
* `<username>` and `<password>`: Credentials for the Hitachi VSP user account.
* `<storage_serial_number>`: The serial number of the Hitachi VSP storage system.
* `<pool_name>`: The name of the storage pool. Specify multiple pools as a comma-separated list.
* `<target_port_list>`: Comma-separated list of iSCSI target port identifiers (for example, `CL1-A,CL2-A`).

#### Configuration notes

* Volumes with existing snapshots cannot be extended when using the Hitachi VSP driver. Delete snapshots before extending volumes.
* Storage-assisted volume migration is only supported between volumes on the same Hitachi VSP storage system.
* Performance slowness has been observed with Hitachi iSCSI backends in testing environments. However, volume provisioning, attachment, and VM lifecycle operations remain stable with no functional failures. Monitor performance in your production environment.
* Multipath is recommended for production environments to provide redundancy and higher availability during network or port failures.
* Verify all iSCSI target ports are accessible from hypervisor hosts before configuring the backend.
  {% endtab %}

{% tab title="Hitachi VSP - Fibre Channel" %}

Hitachi VSP arrays provide high-performance block storage through Fibre Channel connectivity, offering low latency and high throughput for enterprise workloads.

#### Prerequisites

Before you configure the Hitachi VSP Fibre Channel backend, complete these requirements:

* Administrative access to the Hitachi VSP storage array management interface.
* Install Fibre Channel HBAs on all hypervisor hosts.
* Create one or more storage pools on the Hitachi VSP array. Platform9 provisions volumes from the specified pools.
* Create a dedicated user account with administrative privileges on the Hitachi VSP array. This account requires permissions to create, delete, and manage volumes and host groups.
* Identify the Hitachi storage system serial number (storage ID). Platform9 uses this identifier to communicate with the array.
* Configure FC zoning between hosts and the Hitachi VSP array. Proper zoning ensures hosts can discover and access storage LUNs.
* Identify Fibre Channel target port WWNs on the Hitachi VSP array. Target ports define the FC interfaces that hosts use to access storage.
* Install required packages on all hypervisor hosts and block-storage hosts:

```bash
  apt-get install multipath-tools
```

Platform9 uses these packages for Fibre Channel volume discovery and management.

* Verify network connectivity between Platform9 hosts and the Hitachi VSP management interface.

#### Configuration parameters

* **san\_ip** (Required): Management IP address of the Hitachi VSP array. Used for all API communication with the storage system.
* **san\_login** (Required): Username for Hitachi VSP authentication. The account must have administrative privileges.
* **san\_password** (Required): Password for Hitachi VSP authentication.
* **hitachi\_storage\_id** (Required): Serial number of the Hitachi VSP storage system, uniquely identifying the array to the HBSD driver.
* **hitachi\_pools** (Required): Comma-separated list of pool names on the Hitachi VSP array for volume provisioning. Allows for capacity distribution across storage tiers.
* **hitachi\_target\_ports** (Required): Comma-separated list of Fibre Channel target port identifiers on the Hitachi VSP array. Format: `CL1-A,CL2-A`.
* **hitachi\_compute\_target\_ports** (Optional): Comma-separated list of compute target port identifiers for host connectivity, differing from storage host connections if specified. Default is empty.
* **hitachi\_group\_create** (Optional): Enables automatic host group creation on the Hitachi VSP array. Default is `true`.
* **hitachi\_copy\_speed** (Optional): Controls copy speed for operations like snapshots and clones. Values: `1` (slow), `2` (medium), `3` (fast). Default is `3`.
* **use\_multipath\_for\_image\_xfer** (Optional): Enables multipath for image transfers, improving reliability. Default is `true`.
* **image\_volume\_cache\_enabled** (Optional): Enable image-volume caching to reduce transfer time for subsequent requests. Default is `true`.
* **image\_volume\_cache\_max\_count** (Optional): Maximum number of cached image volumes. Default is `50`.
* **image\_volume\_cache\_max\_size\_gb** (Optional): Maximum total size of cached image volumes in GB. Default is `200`.

#### Example configuration

Use the following JSON structure when adding a volume backend configuration in your cluster blueprint:

```json
{
  "<volume_type_name>": {
    "<volume_backend_name>": {
      "config": {
        "san_ip": "<hitachi_management_ip>",
        "san_login": "<username>",
        "san_password": "<password>",
        "hitachi_storage_id": "<storage_serial_number>",
        "hitachi_pools": "<pool_name>",
        "hitachi_target_ports": "<target_port_list>",
        "hitachi_compute_target_ports": "",
        "hitachi_group_create": true,
        "hitachi_copy_speed": 3,
        "use_multipath_for_image_xfer": true,
        "image_volume_cache_enabled": true,
        "image_volume_cache_max_count": 50,
        "image_volume_cache_max_size_gb": 200
      },
      "driver": "HitachiFC"
    }
  }
}
```

Replace the placeholder values with your specific configuration:

* `<volume_type_name>`: A descriptive name for the volume type (for example, `hitachi-fc`).
* `<volume_backend_name>`: A unique identifier for this backend configuration.
* `<hitachi_management_ip>`: The IP address of your Hitachi VSP management interface.
* `<username>` and `<password>`: Credentials for the Hitachi VSP user account.
* `<storage_serial_number>`: The serial number of the Hitachi VSP storage system.
* `<pool_name>`: The name of the storage pool. Specify multiple pools as a comma-separated list.
* `<target_port_list>`: Comma-separated list of FC target port identifiers (for example, `CL1-A,CL2-A`).

#### Configuration notes

* Volumes with existing snapshots cannot be extended when using the Hitachi VSP driver. Delete snapshots before extending volumes.
* Storage-assisted volume migration is only supported between volumes on the same Hitachi VSP storage system.
* Performance slowness has been observed with Hitachi FC backends in testing environments. However, volume provisioning, attachment, and VM lifecycle operations remain stable with no functional failures. Monitor performance in your production environment.
* Multipath is strongly recommended for production environments to provide redundancy and higher availability during HBA or port failures.
* Verify FC zoning configuration before attempting volume operations to ensure proper LUN visibility.
  {% endtab %}
  {% endtabs %}
