Configuring an SMI-S Provider for iSCSI Target Server
Published: December 20, 2012
Updated: January 15, 2013
Applies To: System Center 2012 - Virtual Machine Manager, System Center 2012 SP1 - Virtual Machine Manager
This topic provides information about the SMI-S provider required in order for the Microsoft iSCSI Target Server to be managed using Virtual Machine Manager (VMM) in System Center 2012 Service Pack 1 (SP1).
Microsoft iSCSI Target Server is a feature that enables a Windows Server 2012 server to function as a storage device. VMM 2012 supports the use of block storage devices implemented using the Storage Management Initiative Specification (SMI-S), or using a native WMI storage management provider (SMP). VMM in System Center 2012 SP1 introduces support for the iSCSI Target Server 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 described in this topic. For more information, see Introduction of iSCI 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 diagram below shows how the SMI-S provider interacts with other components. The SMI-S provider is WMI-based, and manages the iSCSI Target Server using the iSCSI Target WMI provider.
In this release of the SMI-S provider, there are a few known issues, as follows:
iSCSI Target Server supports failover-clustering to provide high availability (HA). In order to be managed by the SMI-S provider, only one iSCSI Target Server resource group (VCO) can be supported per cluster. This 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 (VCOs) present on the same cluster node, the SMI-S provider will not be able to obtain an accurate view of the objects on the computer.
Only one WMI based SMI-S provider can be loaded on to one machine. Currently there are two WMI-based providers, and both of these will be affected by this issue:
iSCSI Target Server SMI-S provider
LSI MegaRAID SMI-S provider
This issue will affect the two scenarios described in the following sections. The first scenario is where two SMI-S providers are installed on the same computer and both of them are intended for VMM management. The second is where two SMI-S providers 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 will be discovered by the Storage Management Service.
- iSCSI Target Server SMI-S provider
Two providers intended for VMM management
As shown below, two SMI-S providers are installed on the same computer, and each is registered with the Storage Management service for VMM. Due to a known issue with the Storage Management service, only one of the providers will be discovered.
Two providers intended 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 will only discover one provider, and it might not be the intended provider for the application.
As shown in the previous architecture 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 will need to register the storage device using the network name or IP address for the iSCSI Target resource group (also referred as the client access point). In this way, the network name or IP address will be kept the same no matter which node is failed-over to, and VMM will be able to connect to the SMI-S provider that is running on the failed-over resource group node. After a failover event, you will need to perform a full discovery using VMM.
MaskingSet maps to the iSCSI Target object—The friendly name of a MaskingSet by default uses the prefix string “SPC:” + 16-bit random. It is recommended to use a friendly name when creating the MaskingSet. VMM uses either the hostname or cluster name as the friendly name. The SMI-S provider will use the friendly name and this also becomes the “Description” property of the WT_Host object for iSCSI Target Server.
StorageVolume maps to WT_Disk (fixed Virtual Disk)—When a user creates an iSCSI disk 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 Virtual Disk already exists but does not have a description string (is empty or NULL), then the Virtual Disk friendly name uses the prefix string “VirtualDiskIndex:” + WTD (integer of the index).
ConcretePool maps to WT_Volume—The friendly name 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 PrimordialPool and its name is fixed as “MS iSCSITarget Primordial”
The following example shows how to install the SMI-S provider:
The diagram above shows two computers; one for the management server running VMM, and one running iSCSI Target Server.The VMM server needs to be in a domain. The iSCSI Target server can be in a domain or a workgroup.
VMM in System Center 2012 SP1 requires Microsoft SQL Server and Microsoft .NET Framework 3.5 - if you do not have these installed, VMM setup will prompt you to install them. For more information, see Upgrading to VMM in System Center 2012 SP1. 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 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.
Install the update described in Microsoft KB article 27558246: Update for Windows 8 (KB2758246). Alternatively, this update is included in the rollup described in Microsoft KB article 2770917: Windows 8 and Windows Server 2012 cumulative update: November 2012 installed. This update contains WMI-related changes to iSCSI Target Server that improve VMM discovery performance.
Install the SMI-S provider, using the iSCSI Target SMI-S Provider Setup wizard.
|The SMI-S provider is included with System Center 2012 SP1 installation. You can find the setup file on the installation CD under the path:\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 using the Windows PowerShell menu.
Add a storage provider
Obtain the iSCSI Target Server local administrator credentials as follows:
$Cred = Get-Credential
Note that any account that is part of the Local Administrators group is sufficient.
Create a RunAs 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 host 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 host 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 host 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 you can perform with VMM using the SMI-S provider. For information about additional Windows PowerShell cmdlets you can use to manage storage 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.