This night I saw that MS, listened to my tweet 😉 where I asked for possibility to manage Hyper-V 3 with the SC VMM2012. I have children that let me wake early and so I could start immediately to investigate the new SP1 and see how it works to handle Win8/HyperV3 hosts.
In my test environment I have two hosts hyp31 and hyp32, I have also a virtual machine for the VMM (vmm3) and a virtual file server all of them running the Win8 Server Beta.
The installation was pretty straight forward, The only problem was that I had to have a internet connection to be able to get the .Net 3.5 feature installed.
When the VMM server and console was Installed I could login and add some hosts
As I already had set up the host and had VM´s on the fileshare it was easy to start testing Live Migration between the hosts (they are not in a cluster but both can access the fileshare).
I have to use the -Path parameter but only a xml config file resides on the host and my vhd harddisk remains on the fileshare \\win8fs\vmds , will do some research building a cluster and see how that works with the files later..
Today I have been researching about how to enable and disable the GUI on the Windows 8 Server beta. As it is a best practice to run your Hyper-V hosts in Core I wanted to know how to do this, you might want to configure some things in full GUI mode and then run the server in core after you are done. Going from the full gui to Core was quite easy, i just ran the following commands in powershell and rebooted, then i was in the cmd console world of Core.
When i then wanted to get back to the GUI world i just ran the command Add-WindowsFeature instead of remove
Then i had to test to install a Core and try to get it to full. The Beta does only have two editions to choose from.
When the machine was finished i tried to use the Sconfig tool that is a configuration helper in Core, and in that you have a selection 12 that are supposed to enable GUI, but despite that it said 100% nothing happend, so this was a bit trickier because when i choose the Core in the installation, not all files are deployed in the installation, this to save space and unnecessary files/functions. This does however create some extra work when you realize that you want the GUI, at least nowadays you do not have to reinstall the whole machine :-).
How do i solve it then, I found a presentation from Jeffrey Snover and Andrew Mason at the Build conference which led me to the imageX binary that i can mount the install.wim file. one would think that just mounting the win8 ISO would be enough but no, i had to do some imageX magic, i used the one from the Win7 WAIK and copied it into the core machine, as i am a ps-fan i copied it with powershell ,then i had to mount the wim file with the imagex and then run the cmdlets to enable the GUI. At least it feels easier using powershell than DISM /Online bla bla..
I ran the following, and as you can see i had to specify the windows folder on the wim where the winSxS (this is where the missing files are) is a direct subfolder,
When going from core -> full or the other way around it is some waiting when the configuration is done.. it is not quite as easy as the Linux and the run-levels (init 3, init 5), maybe MS should have been looking a bit there when implementing their solution.
Update: As Snover commented below, it actually works to use sconfig and “Restore GUI”, but this is when your server is connected to the Internet and can download the files needed, I tried it and it took over 1 hour and then it asked for a restart to finish. Not every organisation do connect their servers directly to the Internet, maybe it could work then with a local WSUS server?!
So now i have started digging into the powershell cmdlets that are available for the Hyper-V in Windows 8 Server beta. As you can see on my screendump and also on this link there are some, i would love to see some extensions when the product becomes RTM, I am spoiled with the functionality and extensibility of the PowerCLI 😛
One thing that i like is that with powershell it is easy to actually find out what NIC you want to use in your virtual switches, why Microsoft insists of showing the description instead of name in the Hyper-V virtual switch admin gui? i have no idea which nic is which,
I do have a good name for them in the Network Connections
in the wonderful world of powershell it is now easy to create a virtual switch and actually get the right nic, also with the parameter -AllowManagementOS i make sure that my Host will not share this nic.
Then i can deploy my VMs, I am woundering why the virtualization team is using bytes in their parameters ? -MemoryStartupBytes -NewVHDSizeBytes, fortunately you can use -MemoryStartupBytes 512MB or 1GB and powershell calculates it to bytes. Another thing that I am wondering about is that when i create a VM i cannot set number of vCPU, i have to change that after the VM has been created?!
How do you enable Hyper-V with powershell in the new win 8 Server beta, as you can see when running the Get-WindowsFeature Hyper-V i only see the Hyper-V role, but i also want the administration tools, best practice says that you should run the Hyper-V server as clean as possible and then you might want to enable the management tools on the administration server, but now i only have one server and want to be able to create VMs and configure etc.. In the screenshot i had already enabled the Hyper-V role.
To enable all Hyper-V Role/features i just type like this,
Get-WindowsFeature Hyper-V* | Add-WindowsFeature
I will test some Hyper-V powershell cmdlets after this and that might result in another post 😛
There is quite a buzz out on twitter and blogs about the new features that has come to Windows 8 and the new Hyper-V version. I want to give you a little heads up about how it works to create network team with NICs (yes it works with different nic cards. in my case a Intel and a Broadcom)
I have now installed the server on my test-machine in our office and was eager to test the NIC teaming, at first i did not understand how it was working and tried to bind two nics together in the network connections window in the control panel, as i later realized and read in Aidan Finns´s blog, that it is done through the LBFOAdmin.exe (this is opened when pressing Nic Teaming Enabled/Disabled)
There you have to highligt your server to configure it, as the new server manager can handle remote servers and you can configure several workloads at the same time and you do not have to log in to each server to administer it.
I have named my team to NET2000 and added the two nics, i have also set it to be switch independent (i have actually set it in a simple 5 port switch), you can also chose LACP or Static Teaming. For Load Distribution mode you can chose Address Hash or Hyper-V port (now i am sharing the team with the management and a hyper-v switch so i am using the Address Hash.
As yo can see i can then add several virtual nics with different vlan id. I really hope that the fix one issue though, as you can see here i have a virtual nic interface called VMnet, when i then want to add this in the hyper-v manager it does have a different name as you can see in the next screenshot. It would have been wonderful to be able to se the Name also in the virtual switch manager.
As i before had to use the same network cards from the same manufacture and use their teaming software this is a giant step forward with the win 8 and the built in teaming functions. One thing to test later when i get my hands on a nic that can handle SR-IOV is how that feature works with a team, but that is another blog post!