One of the big benefits of Windows 8 and Windows 8.1 is the inclusion of client Hyper-V in the business oriented SKUs, especially for dev and test purposes. I’ve discussed this a few times previously, but I haven’t shown how to set up how to store your VMs on the network, which makes it easier to move VMs to and from the client and the Hyper-V servers in your environment. As I’ve just set up a pimped out Gen8 HP MicroServer, I thought I’d document the process here.
Starting on the storage server, we need to have set up a server through with the SMB Share – Applications option, which does some of the heavy lifting for preparing the share for VM storage. You can do this through Server Manager, or via PowerShell.
# Create folder
MD X:VMS
# Create file share New-SmbShare -Name VMS1 -Path X:VMS -FullAccess DomainHVAdmin, DomainHV1$, DomainHV2$, DomainHVC$
# Set NTFS permissions from the file share permissions Set-SmbPathAcl –Name VMS1
You can see in the image above that I’ve already given HYPERV01 and HYPERV02 permissions to this share, so let’s add the client machine, named WORKSTATION.
We select Add.
Next we need to change the types of directory objects that will be returned, as by default you won’t get Computers.
Enabling Computers is simple enough.
Type in the name of client Hyper-V machine, in this case, WORKSTATION.
We need to give WORKSTATION Full control, and then hit okay. That’s pretty much it on the server.
Now if we switch to WORKSTATION, you can see I’ve got a few VMs, but I’ll just move the storage for one of them across.
We just type in the network location, and the sign that things are looking promising is that we can see the Available space on the share. If this doesn’t show, it’s usually an indication of permissions issues.
We can verify the settings, and click Finish.
Depending on the size of the VM, this could take a while, but as you can see you can monitor the progress through Hyper-V Manager.
Something to take note of here, and something I’ve discussed previously, is that SMB 3.0 Multichannel will help you out here, allowing the load to move across multiple network interfaces with zero configuration required on the client or server.
And now, the final piece – we can see that this has completed, and the storage has been migrated