Getting started with Configuring Data ONTAP SMI-S Agent 5.1 on Windows Server 2012 and 2012 R2.

Data ONTAP SMI-S Agent 5.1 can be used to provision and manage storage with Windows Server 2012 and above . To enable this feature in Windows Server 2012 R2 the "Windows Standards Based Storage Management" feature needs to be added from the server manager. Storage provisioning and management can be done using server manager and also powershell cmdlets.


In this blog post i would show you the steps you can follow to configure Data ONTAP SMI-S agent 5.1 with Windows server 2012 R2 to effectively manage your windows server storage environment.


Note :- Prerequisites require the installation and configuration of Data ONTAP SMI-S agent 5.1 on another windows server.


Ok so lets start by installing the windows feature "Windows Standards Based Storage Management", this can be done via powershell or using the server manager.


Launch the "Add roles and features wizard" and select the "Windows Standards Based Storage Management" feature and confirm the installation, wait for the installation to complete.



You can also install the feature using powershell using the below cmdlet.


Add-WindowsFeature WindowsStorageManagementService


Once the feature installation is completed we also get a new module "smisconfig" in powershell which can be used to search, register and unregister the smi-s provider.



Next lets register the smi-s provider to the server using the Register-SmisProvider cmdlet, for more details on this cmdlet use


Get-Help Register-SmisProvider -Full



Register-SmisProvider -ConnectionUri


At this point if the registry process completes successfully, only the basic level information is collected (provider and array details) known as level 0.


Verify the storage provider's registered using Get-StorageProvider cmdlet.


Also verify the storage sub systems  show up correctly using the Get-StorageSubSystem cmdlet.



Now If we try to list the storage pool information we would get an error which states "The provider cache is empty".



To list the storage pool and volume information we need to initiate a much deeper level of discovery using the update-storageprovidercache cmdlet and set the discovery level to level 2. deeper level discoveries can take a lot of time, also each discovery level is cumulative, so if i run a level 3 discovery it would include both level 0 to level 2. Level 3 discovery is required to create a new storage pool from the list of free physical disks.


Get-StorageSubSystem | % {Update-StorageProviderCache -StorageSubSystem (Get-StorageSubSystem -FriendlyName $_.friendlyname) -DiscoveryLevel level2}



Wait for the updation process to complete and you would be able to see that storage pools gets successfully listed.



We can also search for your SMI-S provider servers in your environment using the Search-SmisProvider cmdlet.


The Search-SmisProvider cmdlet searches for Storage Management Initiative - Specification (SMI-S) providers available on the same subnet as your server as long as they are advertised through the Service Location Protocol v2 (SLPv2). The cmdlet returns a list of Uniform Resource Identifiers (URIs) that you can use with other cmdlets to register or remove a provider. If the cmdlet finds no SMI-S providers, it returns nothing.


Apart from search and register we can also unregister smisprovider using the unregister-smisprovider cmdlet, you can basically pipe the output of Get-StorageProvider to this cmdlet to unregister smisprovider.



I hope that you have enjoyed this blog entry and have found this information helpful. In my next series of blog post i would be taking a deep dive into the powershell cmdlets which come with the "Storage" module using which we would be configuring and managing NetApp storage using SMI-S. We would also cover the Server Manager based management in the later series.


Good Luck!




Hi, I am attempting to piece the entire SMI-S installation and configuration together so I can create an internal "how-to" document. I have som confusion on this artical and where the "Windows Standards Based Storage Management" feature is installed and which piece of the environment this document applies? The SMI-S server? the SCVMM cluster? Hyper-v servers? Unfortunately I came across this document after we have this up and running, so I am back-filling now.