Customer Pain Points
Partner Pain Points “Customers are asking for PowerShell and REST APIs. Microsoft is asking us to build providers for integration. Which one should do I build?” “The administrators that use our management consoles do not have any visibility into the virtualization environment. They need to see managed devices in the context of virtualization.”
Evolving Storage Management
A Fresh Perspective
Private Cloud Storage Management
Windows Server 2012 – Storage Management API Windows Storage Management API (Windows PowerShell and WMI) Pass-through API for extensibility (WMI) Storage Array Vendor-provided SMI-S provider (CIMXML or WMI) Storage Array Vendor-provided transport and/or protocol
What is thin provisioning?
File System: Used
SMB3.0 and NAS Storage
Dynamics Disks and Thin Provisioned Volumes
Hyper-V Storage Management
SAN based Rapid Provisioning
Large Scale Provisioning
Virtual Fibre Channel
$options = New-Object Microsoft.Management.Infrastructure.Options.CimOperationOptions $options.SetCustomOption("TargetServer", " $False) $options.SetCustomOption("TargetNamespace", "root/impl", $False) $options.SetCustomOption("TargetUsername", "admin", $False) $options.SetCustomOption("TargetPassword", “password", $False) $session = New-CimSession $ns = "root/microsoft/windows/storage/pt" $classes = $session.EnumerateClasses($ns, "CIM_StoragePool", $options) $classes = $classes.GetEnumerator() while ($classes.MoveNext()) { $classes.Current }
$options = New-Object Microsoft.Management.Infrastructure.Options.CimOperationOptions $options.SetCustomOption("TargetServer", " $False) $options.SetCustomOption("TargetNamespace", "root/impl", $False) $options.SetCustomOption("TargetUsername", "admin", $False) $options.SetCustomOption("TargetPassword", "!!123abc", $False) $session = New-CimSession $ns = "root/microsoft/windows/storage/pt" $instances = $session.EnumerateInstances($ns, "CIM_StoragePool", $options) $instances = $instances.GetEnumerator() while ($instances.MoveNext()) { $instances.Current }
# Find the relevant CIM_StorageConfigurationService instance $configService # Can get method signature from its class definition $method = $configService.CimClass.CimClassMethods | where Name -eq "CreateOrModifyElementFromStoragePool" $cimMethodParam = [Microsoft.Management.Infrastructure.CimMethodParameter] $cimType = [Microsoft.Management.Infrastructure.CimType] $cimFlags = [Microsoft.Management.Infrastructure.CimFlags] $inParams = New-Object Microsoft.Management.Infrastructure.CimMethodParametersCollection $inParams.Add($cimMethodParam::Create("ElementName", “DemoVolume", $cimType::String, $cimFlags::Parameter)) $inParams.Add($cimMethodParam::Create("ElementType", 2, $cimType::UInt16, $cimFlags::Parameter)) $inParams.Add($cimMethodParam::Create("Size", 10GB, $cimType::UInt64, $cimFlags::Parameter)) $inParams.Add($cimMethodParam::Create("InPool", $PTStoragePool, $cimType::Reference, $cimFlags::Parameter)) # Method invocation $result = $session.InvokeMethod($script:PTNamespace, $configService, "CreateOrModifyElementFromStoragePool", $inParams, $Options) # Handle output $createdVD = $result.OutParameters['TheElement'].Value
Windows Storage Spaces
Offloaded Data Transfer (ODX)
Hyper-V Replica
VHDX
Storage Management Initiative
Microsoft Participation
PartnerProvider TypeArrayValidationVersionAvailability NetAppSMI-SFAS 7-Mode (Block) FAS C-Mode (Block and File) Complete In Progress DataOnTap v8.1 SMI-S Agent v4 DataOnTap v8.2 SMI-S Agent v5 Now August 2013 EMC (guide)guideSMI-SVMAX 40K/VMAX SE/VMAX_e VNX Complete Enginuity 5875 and 5876 Solutions Enabler FLARE 30, OE Version 5.31 and 5.32 Solutions Enabler Now HP (matrix)matrixSMI-S3PAR StoreServ 7000/ PAR F-Class, T-Class, P10000 P6000 (EVA) StoreVirtual (LeftHand) P2000 G3 (MSA) Complete In Progress Complete OS P01 Inform OS P Command View 10 TBD TS240 Now 2H CY2013 Now HitachiSMI-SVSPComplete Now DellSMI-S SMP SMI-S Compellent Storage center EqualLogic PS 4000/6000 MD32xx / MD36xx Complete SC (or later) or EM (or later) Host Integration Toolkit 4.6 FW: Mgmt SW: G6.25 SMI-S Provider: G6.03 Now June 2013 Now
PartnerProvider Type ArrayValidationVersionAvailability IBMSMI-SXIV Storwize disk family (V7000, Flex node V7000, V3700) SVC Complete In Progress Now End of April 2013 MicrosoftSMI-SiSCSI Software TargetComplete(Ships with SC SP1 VMM)Now FujitsuSMI-SDX80 S2/DX90 S2/DX410 S2 DX440 S2/DX8100 S2/DX8700 S2 CompleteV10L40 or laterNow NexsanSMPE-SeriesCompleteQ0C Storage Tools Now NECSMI-SiStorage M300/M500/M700In ProgressRev.081E or laterNow StarwindSMI-SStarWind iSCSI SAN StarWind Native SAN Not Started April 2013 BETA (link) (link)link NimbleStorageSMI-SCS-SeriesIn ProgressTBD DataCoreSMI-SSANSymphonyNot StartedTBD
Thank you to all our customers and partners!
Resources
Complete your session evaluations today and enter to win prizes daily. Provide your feedback at a CommNet kiosk or log on at Upon submission you will receive instant notification if you have won a prize. Prize pickup is at the Information Desk located in Attendee Services in the Mandalay Bay Foyer. Entry details can be found on the MMS website.
VMM placement engine accounts for available space but limited visibility into I/O latency VMM storage classification (pool level) VMM storage discovery Windows Server 2012 SMAPI
VMware vVOL
Masking In-depth
SCSI Protocol Controller
Ports per SPC
All Ports Share Same SPC
Multiple Ports per SPC
One Port per SPC
Ports per SPC SettingImplementation NotesExamples All Ports Share Same ViewSimplicityNetApp FAS HP EVA EMC Clariion Dell Compellent Multiple Ports Per ViewFlexibility (can mimic both One Port per View and All Ports Share Same View) EMC VMAX HP 3PAR One Port Per ViewTraditionalHitachi VSP HP P2000 Hitachi AMS
One Hardware ID per SPC
SettingImplementation NotesExamples TRUETraditionalHitachi AMS HP P2000 Dell Compellent FALSEFlexibility (allows for one SPC per cluster)EMC VMAX, Clariion IBM XIV, SVC, V7000 HP EVA, 3Par NetApp FAS Hitachi VSP
SPC Creation for Clusters
SettingImplementation NotesExamples TRUEOn some arrays, unmasking operations get serialized so the time required to unmask a LUN to multiple nodes in the cluster increases (minutes) No flexibility to have a separate LUN for boot from SAN EMC VMAX Hitachi VSP SettingImplementation NotesExamples
All Ports Share Same SPC Multiple Ports Per SPC One Port Per SPC One Hardware ID Per SPC == FALSE Create SPCs per Cluster == True or False One Hardware ID Per SPC == TRUE Create SPCs per Cluster – Not Applicable Create SPCs per Cluster - Not Applicable
All/Multi Ports per SPC One Hardware ID per SPC == False Create SPCs per Cluster == True All/Multi Ports per SPC One Hardware ID per SPC == False Create SPCs per Cluster == False
One Port per SPC One Hardware ID per SPC == False Create SPCs per Cluster == True One Port per SPC One Hardware ID per SPC == False Create SPCs per Cluster == False
All/Multi Ports per SPC One Hardware ID per SPC == True Create SPCs per Cluster – N/A
One Ports per SPC One Hardware ID per SPC == True Create SPCs per Cluster – N/A