As Virtual Machines (VMs) are getting more powerful, we have been migrating many SQL Servers into VMs and recently after we did a initial requirement for our Veeam Backup DB server, we started to notice performance issues. On the VM, only half of the CPUs were 100% while the others were less than 20%. We checked to make sure there we have enough CPUs assigned in total 16 and even tried adjusting to make sure there was no MAXDOP hints on the queries. Even after checking these, the VM still only used the first 8 CPUs out of the 16 CPUs.
So, if you are an IT Pro you probably know that with Microsoft Server 2016 comes with something called Nano Server.
In my opinion it is the best of new thing that Server 2016 have. To see what is new in Windows Server 2016 check out this link on TechNet and if you have more time available there are a series of really good Microsoft Virtual Academy resources here.
Over the last few years the Microsoft tried to downsize their Windows Server product and answer on many issues that users had.
The first attempt to resolve these issues was in Server Core released as an installation option in Windows Server 2008. A command line only version of the Server OS that can be managed remotely and to a limited degree from a direct console This ‘server core’ did away with a lot of extraneous ‘stuff’ and meant fewer updates, smaller images and smaller, quicker installations.
But this was not enough and so the Server Product team in Microsoft went back to the drawing board and produced a deployment option now known as Nano server. This cannot be installed from the DVD or ISO, it has to be installed using PowerShell and each individual image built up to only contain the roles and services that are required for that particular server.
In this post I will look at creating a virtual machine (VM) template that you can use to quickly deploy new VM’s from, without having to install and patch them each time.
It is particularly useful if you are in a small Hyper-V environment and don’t have System Center Virtual Machine Manager (VMM).
The beauty of using a template for VM deployment is standardization. You deploy a known configuration which can be pre-patched which reduces time during the post deployment tasks.