In this post I want to show step by step how to provision storage to hosts by using the IBM Storwize V3700 storage system (disk system).




Introduction

IBM Storwize V3700 Storage System for Lenovo (Machine Type 6099) is a member of the IBM Storwize family of disk systems. Storwize V3700 delivers innovation and new levels of storage efficiency with ease of use in an entry-level disk system to enable organizations to overcome their storage challenges.

Storwize V3700 Storage System features two node canisters, with 4 GB cache per canister upgradeable to 8 GB, in a compact, 2U, 19-inch rack mount enclosure. A 6 Gb SAS and 1 Gb iSCSI connectivity is standard, with an option for 8 Gb Fibre Channel (FC) or 10 iSCSI or Fibre Channel over Ethernet (FCoE) connectivity.

Storwize V3700 supports up to 240 drives with up to nine external expansion units. It also offers flexible drive configurations with the choice of 2.5-inch and 3.5-inch drive form factors, 10 K or 15 K rpm SAS and 7.2 K rpm NL SAS hard disk drives (HDDs), and SAS solid-state drives (SSDs).

Source: https://lenovopress.lenovo.com/tips1300-ibm-storwize-v3700-for-lenovo





Configure Internal Storage and Create new Storage Pools

First I will check if there are already so called pools or storage pools created on my IBM Storwize V3700 storage system (disk system).

A pool or storage pool is a collection of physical storage devices, such as hard drives or solid-state drives, that are grouped together to function as a single storage entity. This pooling of storage resources allows for more efficient management and utilization of storage capacity.

In a storage pool, data is distributed across multiple drives, which can improve performance and reliability. Additionally, storage pools often support features like data redundancy (such as RAID configurations) and data striping to enhance data protection and access speed.

Storage pools are commonly used in storage area networks (SANs) and other enterprise storage environments to provide scalable and flexible storage solutions. They can also be found in software-defined storage systems and virtualized storage environments.


Pools -> Pools


So far no Pools are created.



To create a new storage pool navigate to:

Pools -> Internal Storage and click on Configure Storage


A wizard to configure RAID arrays is shown up as shown below.

RAID (redundant array of inexpensive disks or redundant array of independent disks) is a data storage virtualization technology that combines multiple physical disk drive components into one or more logical units for the purposes of data redundancy, performance improvement, or both.

Source: https://en.wikipedia.org/wiki/RAID


I will use here for the first RAID-5 array just 7 drives. Later I will create a second RAID-5 array and using the other 7 unconfigured drives for.


I will create new pools starting with the prefix pool_. We can also extend here existing pools.


The new storage pool was created successfully.


The drives within my first RAID-5 array are now have a MDisk Name marked as mdisk0.

managed disk (MDisk) is a logical unit of physical storage. MDisks are either arrays (RAID) from internal storage or volumes from external storage systems. MDisks are not visible to host systems.

An MDisk might consist of multiple physical disks that are presented as a single logical disk to the storage area network (SAN). An MDisk always provides usable blocks of physical storage to the system even if it does not have a one-to-one correspondence with a physical disk.

Each MDisk is divided into a number of extents, which are numbered, from 0, sequentially from the start to the end of the MDisk. The extent size is a property of pools. When an MDisk is added to a pool, the size of the extents that the MDisk is divided into depends on the attribute of the pool to which was added.

Source: https://www.ibm.com/docs/en/flashsystem-7×00/8.1.x?topic=overview-mdisks


I will now check if my new storage pool is shown up under Pools -> Pools and change its name.





Next I will create a second storage pool, also an RAID-5 arrray consisting of the other so far unconfigured drives.

This time the wizard just found correctly my unconfigured 7 drives shown up on the top of the below screenshot.



Finally I have created two pools (pool_1 & pool_2) which are both RAID-5 arrays and consisting each of 7 x 558.41 GiB internal SAS drives.

The managed disk (MDisk) for these new 7 x drives within this RAID-5 array and second storage pool are now marked as mdisk1.


Finally I will have created two new storage pools on my IBM Storwize V3700 storage system (disk system).





Create Volumes and allocate them to a Storage Pool

When I will now sign in to my IBM Storwize V3700 storage system (disk system), it will show a dialog to create new volumes on my newly created storage pools as shown below.

A volume is a logical disk that is presented to a host system by the clustered system. The volumes are built from extents in the storage pools and hence the size can be increased or decreased. Creates volume of type Generic, Thin-Provision, Mirrored and Compressed volumes.

Source: https://www.cisco.com/c/en/us/td/docs/unified_computing/ucs/ucs-director/task-library-reference/6-7/cisco_ucs_director_task_library_reference_6700/cisco_ucs_director_task_library_reference_6700_chapter_01110100.pdf


For now I will click on Cancel to show how to navigate to create new volumes the normal way.


Navigate to Volumes as shown below.


So far no volumes are created and allocated to a storage pool.


Click on Create Volumes.

I will create a Generic volume which finally creates a striped volume of the specified size in the specified storage pool, I will select below the first pool_01 to allocate the new volume to.

Generic
Creates a striped volume of the specified size in the specified storage pool.

Thin provision
Creates a thin-provisioned volume of the specified size with the autoexpand feature enabled in the specified storage pool. Sets the volume and the storage pool warning size to 80%. Only the specified percentage of the capacity of the volume is allocated to the volume at the time of creation. The default value is 2% of the volume capacity.

Mirror
Creates a volume with two copies of the data in two storage pools to protect against storage pool failures.

Thin mirror
Creates a volume with two thin-provisioned copies of the data in two storage pools to protect against storage pool failures. For details about how the thin-provisioned copies are configured, see the thin-provision preset information in this table.

Compressed
Creates a thin-provisioned volume where data is compressed when it is written and stored on the volume. Only the specified percentage of the capacity of the volume is allocated to the volume at the time of creation. The default value is 2% of the volume capacity.

Source: https://www.ibm.com/docs/de/flashsystem-v7000u/1.5.2?topic=gui-presets


Below I need to enter a size and name for the volume and can then click on Create.


The volume is created successfully.



The same steps I will execute to create a second volume and allocate it to my second storage pool, finally I will have two new volumes allocated to my storage pools as shown below.


You can also list the volumes by Pool as shown below.





Provision Storage to a Host (aka Host Mapping)

In order to provision storage from our IBM Storwize V3700 storage system (disk system) and making it available to a host, we need to configure a host mapping which will map volumes to a host as shown below.

Mapping is the process of controlling which hosts or host clusters have access to specific volumes within the system.

Host mapping is similar in concept to logical unit number (LUN) mapping or masking. LUN mapping is the process of controlling which hosts have access to specific logical units (LUs) within the disk controllers. LUN mapping is typically done at the storage system levelHost mapping is done at the software level.

The act of mapping a volume to a host makes the volume accessible to the WWPNs or iSCSI names such as iSCSI qualified names (IQNs) or extended-unique identifiers (EUIs) that are configured in the host object.

More about you will find in the following article by IBM.

Source: https://www.ibm.com/docs/en/v3700/7.8.1?topic=overview-host-mapping


Navigate to:

Hosts -> Ports by Host


Because the IBM Storwize V3700 storage system (disk system) is connected to my host by using a SAS HBA, I will select below the SAS Host.

Storwize V3700 offers hybrid block storage connectivity with support for 6 Gb SAS, 1 Gb iSCSI, and 10 Gb iSCSI or FCoE or 8 Gb FC at the same time.

Source: https://lenovopress.lenovo.com/tips1300-ibm-storwize-v3700-for-lenovo

Add Host -> SAS Host


So far just one host is connected to the IBM Storwize V3700, therefore I don’t have to select between different SAS ports below to connect to.

In case you have multiple hosts connected to your IBM Storwize V3700 and have to choose here between different SAS ports and their corresponding World Wide Name (WWN), you can use the Get-Initiator PowerShell command on Windows hosts to determine the World Wide Name (WWN) of each SAS HBA port as shown further down to distinguish between different hosts.

World Wide Name (WWN) or World Wide Identifier (WWID) is a unique identifier used in storage technologies including Fibre ChannelParallel ATASerial ATASCSI and Serial Attached SCSI (SAS).

WWN addresses are similar to Ethernet’s MAC addresses.


The port above is from my Windows Server (IBM x3650 M4) on which I get the port address from above when executing the Get-Initiator PowerShell command as shown below.


I will select for my IBM x3650 M4 server the generic host type and click finally on Add Host.



When we now navigate to Hosts -> Ports by Host we can see our connected host the IBM x3650 M4 Windows Server 2019.


When we navigate to Volumes by host we see so far no volumes which are provisioned to our host.

Hosts -> Volumes by Host


To provision volumes to our host, we can either create here new volumes or we can map already created and existing volumes to our host.

To map existing volumes to a host there are also multiple options available within the web GUI of the IBM Storwize V3700.

We can either select an existing volume under Volumes -> Volumes, then right click on it and select Map to Host as shown below.



Or we can navigate to Hosts -> Ports by Host and click on Actions.


Then select Modify Mappings.


Here we can map all available volumes to the selected host.


Below I will select both new volumes I created previously and map them to my host by finally click on Apply.


Finally the new volumes are mapped and provisioned to my host.


We can see this also under Hosts -> Volumes by Host.


When I will now check if I can see already the new volumes on my Windows Server (IBM x3650 M4) by using the Disk Management Snap-in, I can’t see them so far.


In order to seem them, we first need to execute a rescan of the disks by clicking within the Disk Management tool on Action -> Rescan Disks as shown below.


After a rescan of the disks on the host my two new volumes appears as new disks on the host (Disk 7 & Disk 8) as shown below.




To determine the WWN or WWPN of a host bus adapter (HBA) in Windows, you can use the following PowerShell command.

Get-InitiatorPort

ConnectionType -> can be FibreChannel, iSCSI, and SAS.

Source: https://learn.microsoft.com/en-us/powershell/module/storage/get-initiatorport?view=windowsserver2022-ps





This section contains information about the worldwide node name (WWNN) and worldwide port name (WWPN) to help determine host port numbers on adapters that are connected to a storage system.

A WWNN is used to uniquely identify a device in a storage area network (SAN). Each IBM storage device has its own unique WWNN. Each system has a unique WWNN. A WWPN is a unique identifier for each Fibre Channel port that is presented to a storage area network (SAN). Each port on an IBM storage device has a unique and persistent WWPN.

IBM System Storage devices use persistent WWPN. This means if a host adapter (HA) in an IBM System Storage device is replaced, the new HA presents the same WWPN as the old HA. IBM System Storage uses a methodology whereby each WWPN is a subset of the WWNN. This means that if you know the WWPN of a port, you can easily match it to the WWNN of the storage device that owns that port.

Source: https://www.ibm.com/docs/ru/ds8870/7.5.0?topic=considerations-system-adapter-identification



WWPN is a World Wide Port Name; a unique identifier for each Fibre Channel port presented to a Storage Area Network (SAN). Each port on a Storage Device has a unique and persistent WWPN.

World Wide Node Name (WWNN) is a World Wide Name assigned to a node (an endpoint, a device) in a Fibre Channel fabric.

Source: https://en.wikipedia.org/wiki/World_Wide_Port_Name


Worldwide name (WWN)

All FC devices have a unique identity that is called a worldwide name (WWN). This identification can be compared with Ethernet cards and MAC addresses. Each Node Port has its own WWN, but it is also possible for a device with more than one Fibre Channel adapted to have its own WWN as well. WWN is 64-bit address, and if two WWN addresses are put into the frame header, this leave 16 bytes of data just for identifying the destination and source address. So 64-bit addresses can affect routing performance. Each device in the SAN is identified by a unique WWN. The WWN contains vendor identifier field, which is defined and maintained by the IEEE.

Source: https://www.storagefreak.net/2014/10/fibre-channel-addressing


WWNN vs WWPN

A worldwide node name (WWNN) is a globally unique 64-bit identifier that is assigned to each Fibre Channel node or device. For servers and hosts, WWNN is unique for each HBA (host bus adapter), and in a case of a server with two HBAs, they have two WWNNs. For a SAN switch, the WWNN is a common for the chassis. For storage, the WWNN is common for each controller unit of midrage storage. In case of high-end enterprise storage, the WWNN is unique for the entire array.

A worldwide port number (WWPN) is unique identifier for each FC port of any Fibre Channel device. For server, we have a WWPN for each port of the HBA. For a SAN switch, the WWPN is available for each port in the chassis. For Storage, each host port has an individual WWPN.

Source: https://www.storagefreak.net/2014/10/fibre-channel-addressing



About how to provision storage by the IBM Storwize V3700 storage system (disk system) to a Linux Host you can also read my following post.





Links

IBM Storwize V3700 overview
https://www.ibm.com/docs/en/v3700/7.8.1?topic=overview-storwize-v3700b

IBM Storwize V3700 Quick Installation Guide
https://www.ibm.com/docs/en/STLM5A_7.8.1/com.ibm.storwize.v3700.781.doc/v3700_bkmap_quickinstbk.pdf

IBM Storwize V3700 for Lenovo
https://lenovopress.lenovo.com/tips1300-ibm-storwize-v3700-for-lenovo

MDisks
https://www.ibm.com/docs/en/flashsystem-7×00/8.1.x?topic=overview-mdisks

World Wide Name (WWN)
https://en.wikipedia.org/wiki/World_Wide_Name