Archive for September, 2015

Connecting StorSimple 8k series to a physical server


Scenario A – Connecting Data 4 from Controller 0 and Controller 1 to 2 NICs on the server directly, using MPIO:

iSCSI-2

Direct device to device connectivity requires cross-over cables.

When Controller 0 is active, you can plot a logical path between .10 to .100 but you cannot plot a logical path between .10 to .101 in the iSCSI initiator since it’s connected to Controller 1 (Passive). The iSCSI initiator software will not permit adding a path to a down link.

When the device fails Controller 0 to Controller 1, there will be no logical path between any iSCSI NIC on the server to .10 on the StorSimple device. As a result of a controller failover the iSCSI volumes will drop on the file server. In 2008 R2 SP1 this will cause the server to blue screen.

This is not a working scenario.


Scenario B – Connecting Data 4 from Controller 0 and Controller 1 to 2 NICs on the server directly, using NIC teaming:

iSCSI-7

In this scenario, a NIC team is setup on this 2008 R2 SP1 physical server using the HP tool. A single logical path is plotted in iSCSI initiator between .10 and .110 when Controller 0 is active.

Upon controller failover, the server has been observed to blue screen. This error has been tracked down to the NIC teaming software not accepting this configuration.

This is not a working scenario.


Scenario C – Connecting Data 4 and 5 from Controller 0 and Controller 1 to 4 NICs on the server directly:

iSCSI-3

Similarly, when Controller 0 is active, you can plot a logical path between .10 to .100 and .11 to .102 but you cannot plot a logical path between .10 to .101 or .11 to .103 in the iSCSI initiator since it’s connected to Controller 1 (Passive). The iSCSI initiator software will not permit adding a path to a down link.

When the device fails Controller 0 to Controller 1, there will be no logical path between any iSCSI NIC on the server to any iSCSI NIC on the StorSimple device. As a result, a controller failover will result in iSCSI volumes dropping on the file server. In 2008 R2 SP1 this will cause the server to blue screen.

This is not a working scenario.


Scenario D – Connecting Data 4 from Controller 0 and Controller 1 to 2 NICs on the server via 1 switch:

iSCSI-4

In this scenario, we can plot a logical path in iSCSI initiator between .10 to .100 and .10 to .101 when Controller 0 is active since the switch in the middle provides that physical path between the 2 NICs on the file server to Data 4 on Controller 0.

When a controller failover occurs, we still have a logical and physical path between .10 to .100 and .10 to .101. Again the switch in the middle makes that possible.

This is a working but not recommended scenario. Its disadvantages are

  • The switch is a single point of failure
  • A single iSCSI NIC on the StorSimple device is a single point of failure
  • Only 1 Mbps total bandwidth is available on the iSCSI side since a single iSCSI NIC is used on the active controller. This uses about 3k IOPS out of the 13k IOPS in the box.

Scenario E – Connecting Data 4 and 5 from Controller 0 and Controller 1 to 2 NICs on the server over a switch:

iSCSI-5

In this scenario, we can plot 4 logical paths in iSCSI initiator between:

  • .10 to .100 and
  • .10 to .101 and
  • .11 to .100 and
  • .11 to .101

when Controller 0 is active since the switch in the middle provides that physical paths between the 2 NICs on the file server to Data 4 and Data 5 on Controller 0.

When a controller failover occurs, we still have 4 logical and physical paths. Again the switch in the middle makes that possible.

This is a working but not recommended scenario. Its disadvantage is that the switch is a single point of failure.


Scenario F – Connecting Data 4 and 5 from Controller 0 and Controller 1 to 2 NICs on the server over 2 switches:

iSCSI-6

In this scenario, we can plot 4 logical paths in iSCSI initiator between:

  • .10 to .100 and
  • .10 to .101 and
  • .11 to .100 and
  • .11 to .101

when Controller 0 is active since the switch in the middle provides that physical paths between the 2 NICs on the file server to Data 4 and Data 5 on Controller 0.

When a controller failover occurs, we still have 4 logical and physical paths. Again the switch in the middle makes that possible. It is important that the 2 switches be cross connected as shown.

This is a working and the recommended scenario. It survives a single controller/wire/switch/NIC failure and has no single point of failure.


Conclusion:

  • At a minimum one switch is required to connect StorSimple to one or more servers on the iSCSI side
  • MPIO is recommended not NIC teaming for link aggregation, link fault tolerance, and load balancing
  • 2 switches are recommended on the iSCSI side as shown in scenario F
Advertisements

StorSimple 8k Device Software Version 1.0 (17491)


StorSimple device software version 1.0 was released on 9/15/2015. In this post I will go over the changes in Powershell cmdlets made available in this update.

To connect to StorSimple Powershell you can use the script in this post.

First, I identify the software version running on the device by using the Get-HcsSystem cmdlet:

V1.0-01

Next, I get a list of available cmdlets:

V1.0-02

Obviously, there are many more cmdlets in the Powershell Core, Utility, Management, HCS, and other PS modules. However, Microsoft has locked down the available cmdlets on this device since it’s a Microsoft-managed device. This limits the ability of Microsoft Partners, clients, and IT providers to troubleshoot the device.

Next, using this script I collected the commands’ information in an XML file, primarily for comparison with future versions of the software to be able to identify added/removed/changed cmdlets

$SSCommands = Invoke-Command -Session $SSSession { Get-Command }
$SSCommandDetails = @()
$SSCommands | % {
    $SSCommandDetails += Invoke-Command -Session $SSSession { 
        Get-Help $using:_.name -Full 
    }
}
$SSCommandDetails | Export-Csv '.\StorSimplev1-0_commands.csv' -NoTypeInformation
$SSCommandDetails | Export-Clixml '.\StorSimplev1-0_commands.xml'

65 cmdlets were identified. Their properties look like:

V1.0-03

This is also nice for offline review of available cmdlets. So, the array object can be reloaded later using import-clixml cmdlet, making cmdlet details available when a StorSimple device is not.

For example, here’s the first cmdlets in this array:

V1.0-04