Configuring an SMI-S Provider for iSCSI Target Server
Published: December 20, 2012
Updated: February 19, 2014
Applies To: System Center 2012 - Virtual Machine Manager, System Center 2012 R2 Virtual Machine Manager, System Center 2012 SP1 - Virtual Machine Manager
This topic provides information about the SMI-S provider that is required for the Microsoft iSCSI Target Server to be managed by using System Center 2012 – Virtual Machine Manager (VMM).
Microsoft iSCSI Target Server is a feature that enables a server that runs the Windows Server 2012 operating system to function as a storage device. System Center 2012 – Virtual Machine Manager (VMM) supports the use of block storage devices that are implemented by using the Storage Management Initiative Specification (SMI-S) or by using a native Windows Management Instrumentation (WMI) storage management provider (SMP). System Center 2012 – Virtual Machine Manager (VMM) introduces support for the iSCSI Target Server by using an SMI-S provider. Note that only VMM in System Center 2012 SP1 can be used to manage the SMI-S provider for iSCSI Target Server as described in this topic. For more information, see Introduction of iSCSI Target in Windows 2012.
The SMI-S provider follows an "embedded" provider model, where the provider is installed on the iSCSI Target Server computer. The following diagram shows how the SMI-S provider interacts with other components. The SMI-S provider is WMI-based and manages the iSCSI Target Server by using the iSCSI Target WMI provider.
In this release of the SMI-S provider, there are the following known issues:
iSCSI Target Server supports failover-clustering to provide high availability (HA). To be managed by the SMI-S provider, only one iSCSI Target Server resource group can be supported per cluster. This restriction is due to a limitation in the SMI-S provider, which currently can only handle one computer object. If there are multiple iSCSI Target resource groups present on the same cluster node, the SMI-S provider cannot obtain an accurate view of the objects on the computer.
Only one WMI-based SMI-S provider can be loaded on to one computer. Currently there are two WMI-based providers, and both of these providers are affected by this issue:
iSCSI Target Server SMI-S provider
LSI MegaRAID SMI-S provider
This issue affects the two scenarios that are described in the following sections. The first scenario describes two SMI-S providers that are installed on the same computer, and both of them are intended for VMM management. The second scenario describes two SMI-S providers that are installed on the same computer, and only one of them is intended for VMM management. In both of these scenarios, when two WMI-based SMI-S providers are installed on an iSCSI Target Server computer, only one of the providers is discovered by the Storage Management service.
- iSCSI Target Server SMI-S provider
Two providers for VMM management
As the following diagrams show, two SMI-S providers are installed on the same computer, and each provider is registered with the Storage Management service for VMM. Due to a known issue with the Storage Management service, only one of the providers is discovered.
Two providers for different storage management
Two WMI-based SMI-S providers are installed on the same computer. One SMI-S provider is intended for VMM management, and the other third-party SMI-S provider is intended for File Server Storage Management. Due to a known issue in the Storage Management service, both VMM and File Service Storage Management only discover one provider, which might not be the intended provider for the application.
As shown in the previous diagrams, the SMI-S provider is WMI-based and passes information from the iSCSI Target service to the Storage Management service on the VMM server. After being registered with VMM, a full discovery request is sent to retrieve all the objects and their mappings from the SMI-S provider.
In a failover cluster for iSCSI Target Server, you must register the storage device by using the network name or IP address for the iSCSI Target resource group, which is also referred as the client access point. In this way, the network name or IP address is kept the same, no matter which node receives the fail over. VMM can connect to the SMI-S provider that runs on the failed-over resource group node. After a failover event, you must perform a full discovery by using VMM.
MaskingSet maps to the iSCSI Target object—By default, the friendly name of a MaskingSet object uses the prefix string "SPC:" + 16-bit random. We recommend using a friendly name when you create the MaskingSet object. VMM uses either the virtualization server name or cluster name as the friendly name. The SMI-S provider uses the friendly name, which also becomes the Description property of the WT_Host object for iSCSI Target Server.
StorageVolume maps to WT_Disk, the virtual hard disk (VHD). When a user creates an iSCSI disk by using VMM, the SMI-S provider uses the friendly name as the VHD name. If the Virtual Disk already exists during SMI-S discovery, the provider uses its description as the friendly name. If the VHD already exists but does not have a description string, that is, the description string is empty or NULL, then the VHD friendly name uses the prefix string "VirtualDiskIndex:" + WTD as the integer of the index.
ConcretePool maps to WT_Volume—The friendly name that is displayed for the SMI-S provider is: "iSCSITarget: SubsystemName" + first mount point string. For example, if the mount point string is "C:", then its name is "iSCSITarget: SubsystemName: C:". There is a single root pool and its name is fixed as "MS iSCSITarget Primordial".
The following example shows how to install the SMI-S provider.
The previous diagram shows two computers, one computer for the VMM management server, and one computer that is running the iSCSI Target Server.The VMM management server must be in a domain. The iSCSI Target Server can be in a domain or a workgroup.
VMM requires Microsoft SQL Server and the Microsoft .NET Framework. If they are not installed, VMM setup prompts you to install them. For more information, see Upgrading System Center 2012 - Virtual Machine Manager. The Microsoft Standard-based Storage Management service is enabled during VMM installation.
Enable iSCSI Target Server and install updates
Enable and install iSCSI Target Server by using the following steps:
Use the Windows PowerShell cmdlet Add-WindowsFeature FS-IscsiTargetServer to enable iSCSI Target Server. iSCSI Target Server is included in Windows Server 2012 and later releases.
Install the update as described in Microsoft KB article 27558246: Update for Windows 8 (KB2758246). Alternatively, this update is included in the rollup as described in Microsoft KB article 2770917: Windows 8 and Windows Server 2012 cumulative update: November 2012. This update contains WMI-related changes to iSCSI Target Server that improve the VMM discovery performance.
To install the SMI-S provider, use the iSCSI Target SMI-S Provider Setup wizard.
|The SMI-S provider is included with the System Center 2012 SP1 installation. You can find the Setup file on the installation CD under \amd64\Setup\msi\iSCSITargetSMISProvider.msi, or alternatively on the VMM server under \Program Files\Microsoft System Center 2012\Virtual Machine Manager\Setup\Msi\iSCSITargetProv\iSCSITargetSMISProvider.msi. Complete the wizard to install the SMI-S provider on the iSCSI Target Server computer.|
The goal is to use VMM to manage iSCSI Target Server. The SMI-S provider supports all management tasks through VMM. This section presents examples of using Windows PowerShell cmdlets for VMM. The following examples demonstrate how to use the Windows PowerShell cmdlets. To start, open the VMM PowerShell interface by using the Windows PowerShell menu.
Add a storage provider
Obtain the iSCSI Target Server local administrative credentials that are based on user name and password as follows:
$Cred = Get-Credential
Note that any account that is part of the Local Administrators group is sufficient.
Create a Run As account in VMM as follows:
$Runas = New-SCRunAsAccount -Name "iSCSIRunas" -Credential $Cred
Add the storage provider as follows:
Add-SCStorageProvider -Name "Microsoft iSCSI Target Provider" -RunAsAccount $Runas -ComputerName "<computername>" -AddSmisWmiProvider
View storage properties
Review the storage array attributes as follows:
$array = Get-SCStorageArray -Name “<computername>”
View available storage pools as follows:
Add pools from iSCSI Target Server for VMM management
Get the specific storage pool to add as follows:
$pool = Get-SCStoragePool -Name "MS iSCSITarget Concrete: D:"
Create a storage classification, if none existed, as follows:
$class = New-SCStorageClassification -Name “gold”
Add the storage pool to VMM as follows:
Set-SCStorageArray -AddStoragePoolToManagement $pool -StorageArray $pool.StorageArray -StorageClassification $class
Allocate the storage pool to a virtualization server group as follows:
Set-SCStoragePool -StoragePool $pool -AddVMHostGroup (Get-SCVMHostGroup -Name "All Hosts")
Create a LUN
Create an iSCSI logical unit number (LUN) as follows:
$LUN = New-SCStorageLogicalUnit -Name "iSCSI1" -StoragePool $pool -DiskSizeMB 1000
Allocate the LUN to the virtualization server group as follows:
Set-SCStorageLogicalUnit -StorageLogicalUnit $LUN -VMHostGroup (Get-SCVMHostGroup -Name "All Hosts")
Assign the LUN to the host group as follows:
$host = Get-SCVMhost -ComputerName <host name>
Add the host machine to the virtualization server group as follows:
Register-SCStorageLogicalUnit -StorageLogicalUnit $LUN -VMHost $host
Delete a LUN as follows:
Remove-SCStorageLogicalUnit -StorageLogicalUnit $LUN
Remove a storage provider as follows:
Remove-SCStorageProvider -StorageProvider (Get-SCStorageProvider -Name "Microsoft iSCSI Target Provider")
This article demonstrated only a few of the tasks that you can perform with VMM by using the SMI-S provider. For information about additional Windows PowerShell cmdlets that you can use to manage storage by using the SMI-S provider, see Cmdlet Reference for System Center 2012 - Virtual Machine Manager.
For additional resources, see Information and Support for System Center 2012.
Tip: Use this query to find online documentation in the TechNet Library for System Center 2012. For instructions and examples, see Search the System Center 2012 Documentation Library.