Getting Started with DataCore Storage Management Provider
In this topic:
About DataCore Storage Management Provider
Configuring DataCore Storage Management Provider
Allocating Storage to Host Groups
Provisioning Logical Units Through Windows File and Storage Services
Creating a SAN Copy-Capable Template
Rapid Provisioning of Virtual Machines
Known Issues in DataCore Storage Management Provider
About DataCore Storage Management Provider
Microsoft System Center Virtual Machine Manager (SCVMM) is a management solution for the virtualized datacenter that manages large amounts of compute, network, and storage resources, as well as creates and manages public and private clouds. Microsoft System Center 2012 SP1 Virtual Machine Manager introduced support of a new Windows Storage Management API (SMAPI) used to manage external storage by using either Storage Management Provider (SMP) or SMAPI together with a standards-based Storage Management Service to communicate with storage that is compliant with the Storage Management Initiative Specification (SMI-S). (SMAPI supersedes the Virtual Disk Service (VDS) application programming interface (API) in Windows Server 2012.)
DataCore Storage Management Provider (SMP) is a WMI-based provider which was designed to support integration and automation between Microsoft System Center Virtual Machine Manager (SCVMM) and the DataCore SANsymphony Software-defined Storage Platform. SMP enables administrators to easily add DataCore SANsymphony server group storage resources to the provider, create logical units (virtual disks), and allocate storage for virtual machines.
In SCVMM, DataCore SANsymphony virtual disks are served to Hyper-V hosts where applications are running. Virtual disks are used by applications with different levels of service (such as gold, silver, bronze). SMP communicates to DataCore SANsymphony software through the public API. In this manner, users can remain focused on what matters most—deploying an application instead of being concerned about storage.
SMP also allows administrators to provision logical units through Windows File and Storage Services.
- Refer to SMP Configuration and Installation Notes for important prerequisites and installation information.
- This topic contains brief instructions for provisioning DataCore SANsymphony storage in Microsoft System Center Virtual Machine Manager (SCVMM) and Windows File and Storage Services. Instructions are provided only to facilitate and expedite storage provisioning and are not intended to replace Microsoft Windows documentation. These instructions are applicable to System Center 2012 SP1. Refer to Microsoft Windows documentation for additional information or later versions of the software.
- After virtual machines are created, snapshots can be created in SCVMM. It is also possible to create snapshots, enable Continuous Data Protection and create rollbacks in DataCore SANsymphony software, but SCVMM will not be aware of them.
Configuration and Installation Notes
System Requirements
- Microsoft System Center Virtual Machine Manager (SCVMM)
- SCVMM 2012 R2 Update Rollup 7 (2015, July 28) – 3.2.8071.0 in the standalone and high available (SCVMM HA) configurations.
- Microsoft System Center
- System requirements for Microsoft System Center 2012 R2 are located at: https://docs.microsoft.com/en-us/previous-versions/system-center/system-center-2012-R2/dn281925(v=sc.12).
- DataCore Windows Integration Kit (DataCore WIK 3.1)
- The Integration Kit must be installed on SCVMM and Hyper-V servers. SCVMM and Hyper-V servers need to have access to the same DataCore SANsymphony storage resources.
- Automatic registration of DataCore SANsymphony storage arrays in DataCore SMP
- An installed and configured DataCore SANsymphony Server Group must exist before DataCore SMP installation.
- DataCore Servers
- SANsymphony 10.0 PSP5 or greater
Installation and Configuration
The DataCore Deployment Wizard simplifies installation and configuration of DataCore Storage Management Provider.
To install DataCore Storage Management Provider:
- Select Application and Server Tools category.
- Next, select the Install Storage Management Provider deployment scenario.
- Enter the name of the machine where DataCore Storage Management Provider will be installed.
DataCore SMP must be installed on the System Center.
VMM management (SCVMM) server (or on each SCVMM HA management node in the case of a cluster).
- Next, enter the location where the DataCore Storage Management Provider configuration is to be stored. The System Center VVM HA configuration requires an SMB share to be specified as a location for the DataCore SMP configuration. In other cases, a local directory can be specified.
If the specified host where DataCore Storage Management Provider will be installed is different from the one where DataCore Deployment Wizard is running, you can only specify a folder that is local for the DataCore Storage Management Provider host, because the DataCore Deployment Wizard cannot impersonate the account when it accesses resources on other hosts.
If no path is entered, a default location will be used (%PROGRAMFILES%\ DataCore\SC-VMM Integration Share\)
DataCore Storage Management Provider accesses the configuration folder by the Network Service system account. Grant permissions for the Network Service system account to access the configuration folder.
In a case of an SMB share, permissions for the Network Service belonging to the host where DataCore Storage Management Provider was installed should be granted.
After successful installation of the DataCore Storage Management Provider, the wizard will register the DataCore storage array for management by the DataCore SMP. This step requires an already installed and configured DataCoreDataCore SANsymphony 10.0 PSP5 (or higher) server.
The DataCore Deployment Wizard provides a way to register a DataCore SANsymphony-V storage array to be managed by an existing DataCore Storage Management Provider server. To register a storage array, select the Application and Server Tools category, and then Add an additional storage array to be managed by the Storage Management Provider (SMP) deployment scenario and follow the wizard steps.
Getting Started
Step | Process |
---|---|
1 |
In SCVMM, add storage devices and import the SMP. See Configuring DataCore Storage Management Provider for more information. |
2 |
In SCVMM, allocate storage to host groups. See Allocating Storage to Host Groups for more information. |
3 |
In SCVMM, create logical units for host storage and format the logical unit and configure a mount point. See Provisioning Logical Units for more information. Logical units may also be created and shared through Windows File and Storage Services. See Provisioning Logical Units Through Windows File and Storage Services for more information. |
4 |
(Optional step) SAN copy-capable implies the use of the SAN Subsystem to provision the target virtual machine through a process known as rapid virtual machine provisioning. See Creating a SAN Copy-capable Template for more information. |
5 |
(Optional step) Virtual machines templates that are SAN copy-capable will use the SAN transfer method as opposed to network transfer improving performance and efficiency. See Rapid Provisioning of Virtual Machines for more information. |
Configuring DataCore Storage Management Provider
In order to access DataCore SANsymphony storage resources from SCVMM, import DataCore Storage Management Provider and add the disk pools in SCVMM. This process is equivalent to importing a DataCore SANsymphony disk pool to SCVMM.
Important Notes:
- The storage devices listed under the DataCore SANsymphony server group in SCVMM correspond to virtual disk templates in DataCore SANsymphony software. Virtual disk templates identify the disk pools to use in DataCore SANsymphony software. Templates should be configured in the DataCore SANsymphony server group before adding storage devices in SCVMM. See Virtual Disk Templates for more information.
- To recognize new templates created in DataCore SANsymphony software after this process is initially run, run the Add Storage Devices wizard in SCVMM again.
To import SMP and add storage devices:
- In SCVMM, click Fabric Resources in the Home tab to navigate to the Fabric workspace.
- Under Storage, right-click on Providers and select Add Storage Devices from the context menu.
- In the Select Provider Type dialog box, select SAN devices managed by a native SMP provider, and click Next.
- In the Specify Discovery Scope dialog box, click Import and then select DataCore Storage Management Provider from the drop-down list. Click Next to continue.
- In the Gather Information dialog box, click Scan Provider. The wizard will scan for the connected DataCore SANsymphony server group containing storage devices. Ensure that the storage device for DataCore Software is found. When the server group is listed in the table, click Next to continue.
- In the Select Storage Devices dialog box, select the storage devices (storage pools identified by DataCore SANsymphony virtual disk templates) that should be managed by Virtual Machine Manager and select the classification. Click Next to continue.
The storage classification is a user-defined way to categorize different properties of discovered storage pools on criteria such as Quality of Service (QoS), use case or the identification of a storage pool. If desired, a separate classification may be created for each discovered storage device. See https://docs.microsoft.com/en-us/previous-versions/system-center/system-center-2012-R2/gg610685(v=sc.12) for more information.
The storage device and matching virtual disk template (following) are provided as an example.
- In the Summary page, confirm the settings and click Finish to complete the process.
- Monitor the completion of the process in History>Recent Jobs in the Jobs workspace.
- DataCore Storage Management Provider will be displayed in Fabric Resources under the Storage folder. Details about the DataCore SANsymphony server group and imported disk pools can be viewed in Fabric Resources>Arrays.
Allocating Storage to Host Groups
Storage may be allocated by pools or logical units to host groups (Hyper-V hosts managed by SCVMM) in order to allow the creation and assignment of logical units to use as virtual machine workloads.
Allocating a storage pool to a host group allows administrators to do either of the following:
- Create logical units from servers that are running Hyper-V in the host group that can access the storage array where the storage pool resides.
- Use the storage pool for rapid provisioning of virtual machines. See https://docs.microsoft.com/en-us/previous-versions/system-center/system-center-2012-R2/gg610635(v=sc.12) for more information.
Allocating logical units to a host group allows administrators to assign the logical units to servers running Hyper-V that can access the storage, as well as host clusters that reside in the host group. See https://docs.microsoft.com/en-us/previous-versions/system-center/system-center-2012-R2/gg610686(v=sc.12) for more information.
- The logical unit in SCVMM corresponds to a virtual disk in DataCore SANsymphony software.
- For rapid provisioning of VMs, storage pools are requiredto be allocated to host groups. During the rapid provisioning process, SCVMM will create a new logical unit from the storage pool and therefore logical units should not be allocated beforehand.
To allocate storage pools to host groups:
- Navigate to the Fabric workspace.
- Right-click All Hosts and then select Properties from the context menu.
- In the All Hosts Properties dialog box, select Storage, click Allocate Storage Pools and click OK.
- In the Allocate Storage Pools dialog box, select the pool with the appropriate classification to assign to the host group and click Add.
To allocate a logical unit to a host group:
Do not allocate logical units for rapid provisioning of virtual machines.
- Navigate to the Fabric workspace.
- Right-click All Hosts and then select Properties from the context menu.
- In the All Hosts Properties dialog box, select Storage, click Allocate Logical Unit and click OK.
- In the Allocate Logical Unit dialog box, select the logical unit with the appropriate classification to assign to the host group and click Add.
Provisioning Logical Units
DataCore Storage Management Provider allows administrators to create logical units and assign them to managed servers running Hyper-V software in a host group to which storage pools were allocated. This process simplifies the management of logical units because all actions can be performed in SCVMM, instead of switching between multiple user interfaces such as the Microsoft iSCSI Initiator tool, Windows Disk Manager, and the DataCore Management Console.
The logical unit in SCVMM corresponds to a virtual disk in DataCore SANsymphony software.
To create and assign a logical unit to a Hyper-V host:
- Navigate to the Fabric workspace.
- Click All Hosts to display hosts, then right-click on the desired host and select Properties from the context menu.
- In the All Hosts Properties dialog box, select Storage. Under Storage, select Add and choose Add Disk from the drop-down menu.
- In the Disk area, click Create Logical Unit.
- In the Create Logical Unit dialog box, specify the settings for the logical unit.
- Format the logical unit and configure a mount point without a drive letter or drive path.
- Monitor the status for the logical unit completion and assignment in History>Recent Jobs in the Jobs workspace.
- The Properties dialog box for the logical unit, under Logical Unit Assignment indicates the initiator addresses assigned to the logical unit.
Provisioning Logical Units Through Windows File and Storage Services
In some situations it is useful to create and assign a logical unit to a server which is not managed by a Hyper-V host (for example, assignment to a dedicated SCVMM Library Server). However, storage automation with SCVMM is only supported for servers that are running Hyper-V software and therefore is not supported in the SCVMM Console. In such cases, DataCore Storage Management Provider allows you to use Windows File and Storage Services to create logical units (virtual disks).
To create a logical unit in File and Storage Services:
- Open File and Storage Services in Server Manager and select Storage Pools, then choose the appropriate DataCore SANsymphony storage resource under the server group. (The virtual disk created is based on the selected DataCore SANsymphony virtual disk template.)
- In the Virtual Disks box, select New Virtual Disk under Tasks.
- In the New Virtual Disk Wizard, follow the steps to create a virtual disk.
- Ensure that the check box Create a volume when this wizard closes is selected and click Close.
This process creates a SANsymphony virtual disk based on the selected virtual disk template. The volume from the File and Storage Services perspective is the storage that is visible to the operating system and application.
- In the New Volume Wizard, follow the steps to create a volume.
In order to access a virtual hard disk from the SCVMM Library Server and create a virtual machine template, the volume should be shared for the SCVMM Library Server. For other cases, sharing the volume may be optional.
To share the volume:
- File and Storage Services in Server Manager and select Volumes.
- In the Shares box, select >New Share under Tasks.
- In the New Share Wizard, verify the volume location and click Next.
By default, the location of the file share will be a new folder under the \Shares directory on the volume.
- Customize permissions on the share to allow access for the SCVMM Library Server.
- Follow the steps in the wizard to create a file share.
(This file share will be added later to the SCVMM Library Server for SAN Copy-Capable virtual machine templates.)
- In SCVMM, open the Library Servers in the Library workspace, then right-click the library server to which to add the share and select Add Library Shares from the context menu.
- In the Add Library Shares dialog box, select the check box next to the share representing the DataCore SANsymphony virtual disk and click Next.
- In the Properties for the Library Server, ensure that the Library Server has All Hosts selected for the Host group.
Creating SAN Copy-capable Virtual Machine Templates
Virtual machine templates provides an efficient way to deploy standardized virtual machines according to the organization policies and compliance criteria. The ability to create a copy of an operating system with predefined hardware and guest operating system profile settings, and then provision that copy throughout the infrastructure enables the efficiencies, availability, and performance offered by intelligent storage subsystems.
SCVMM has the ability to create both network copy and SAN copy-capable virtual machine templates. SAN copy-capable implies the use of the SAN Subsystem to provision the target virtual machine through a process known as rapid virtual machine provisioning. For more information on rapid virtual machine provisioning, see https://docs.microsoft.com/en-us/previous-versions/system-center/system-center-2012-R2/gg610594(v=sc.12).
To create a SAN copy-capable template from a SAN copy-capable virtual hard disk:
- After a logical unit is added to the SCVMM Library Server as a library share, copy the virtual hard disk to use to the library share.
- In SCVMM, open the Library Servers in the Library workspace, select the library share, then right-click the virtual hard disk and select Create Virtual Machine from the context menu.
- Follow the steps in the wizard to create a SAN copy-capable template. After the template is created, view the template in the Library workspace Templates > VM Templates.
Rapid Provisioning of Virtual Machines
When a virtual hard disk (.vhd or .vhdx) for a virtual machine template is residing on a DataCore SANsymphony virtual disk, SCVMM identifies the template as SAN copy-capable. Virtual machines templates that are SAN copy-capable will use the SAN transfer method as opposed to network transfer improving performance and efficiency. On a DataCore SANsymphony storage array, the SAN transfer method will communicate through the DataCore Storage Management Provider to create a clone of the DataCore SANsymphony virtual disk.
To create a virtual machine through rapid provisioning:
- Navigate to the Fabric workspace, expand the Storage node, select Arrays.
- In the Arrays area, right-click on the DataCore SANsymphony storage array that is intended to store the virtual machines and select Properties.
- In the Properties dialog box, under Settings, ensure that the provisioning method for the storage array is set to Clone logical units.
- Navigate to the VM Templates. Select the SAN copy-capable template and click Create Virtual Machine in the Template Ribbon.
- Follow the steps in the wizard to complete the virtual machine creation. In Select Destination, select Place the virtual machine on a host and choose All Hosts.
- In Select Host, ensure the Transfer Type is SAN.
- When a virtual machine is rapidly deployed using SAN copy, a clone of the DataCore SANsymphony virtual disk is created that belongs to the SAN copy-capable virtual machine template for the virtual machine being deployed.
- The rapidly provisioned virtual disk is displayed in the Storage node under VMs and Services.
Known Issues in DataCore Storage Management Provider
- If using a shared folder to remotely install the Storage Management Provider in a cluster configuration, the shared folder must reside on a system within the cluster.
- iSCSI LUs (Logical Units) cannot be removed from the Storage Properties of a Host in Virtual Machine Manager (VMM). When this occurs a VMM PowerShell cmdlet (Unregister-SCStorageLogicalUnit) with specified –StorageInitiators parameters may be used to remove the LU:
- Example:
- $logicalUnit = Get-SCStorageLogicalUnit -ID "eac35c1e-c7d1-40b5-841c-9a3635960878" -Name "VDTest"
- Unregister-SCStorageLogicalUnit –StorageLogicalUnit $logicalUnit -StorageInitiators @("iqn.1991-05.com.microsoft:s1.viacode.com") –RunAsynchronously
- Example:
- A served FC LU cannot be unassigned from the Virtual Machine Manager User Interface. Use the DataCore SANsymphony User Interface to complete this operation.
- After a reboot of Virtual Machine Manager in a VMM clustered environment, storage pools become unmanaged. To correct this, add the Storage Array to VMM and manage its template, then reboot the VM that was assigned a cluster role. Next open VMM-> Fabric -> Arrays -> Properties -> Storage Pools and select the pool to be managed.
- Two hosts are erroneously created in DataCore SANsymphony for a single host with 2 Fibre Channel ports. To avoid this issue, manually add all hosts and initiator ports in the DataCore Management Console.
- Changing the virtual disk size for a disk with a fixed size in DataCore SANsymphony changes the disk type to THIN in Virtual Machine Manager. Do not change virtual disk properties or template properties of objects that are used by Virtual Machine Manager to avoid this issue.
- When Virtual Machine Manager cancels a job or a job fails, the canceled or failed task is not rolled back. In the case of a failed or canceled job, return the configuration back to a consistent state using the Restart option.
- When canceling a job, Virtual Machine Manager will complete the current operation before attempting to cancel the current request. This may take some time.
- Canceling the Clone operation in the Virtual Machine Manager will not finish until the migration map in DataCore SANsymphony reaches 100%. This may take some time, depending on hardware performance.
- Canceling Host migration does not restore the virtual machine to the original host. Manually unserve the virtual disk from the new host in DataCore Management Console’s Hosts tab (right click - unserve from host, then right-click and serve it to the original host.
- If more than one template uses the same storage sources (i.e. pools), storage capacity in the Virtual Machine Manager rises, however the actual pool size does not change.
- Virtual Machine Manager displays a warning when a LU is served to a host with more than one initiator port. This warning may be ignored.
- The Storage Management Provider must be unregistered in the Virtual Machine Manager user interface before uninstalling.