Search This Blog

Wednesday, September 1, 2010

Hyper-V

Hello guys, it is time for some new stuff to be posted...

    Today i will be telling you what i know about Hyper-V. Hyper-V is in its full form know as Hypervisor. It is a software which comes inbuilt with Windows Server 2008 operating system, a huge product in the server line of Microsoft which happens to be constructed of course on NT platform..Far more evolved than the primitive Windows Server 2003...So if you were a Windows Server 2000 user, you might not have noticed much changes when you migrated to Windows Server 2003 but it is not the case in Windows Server 2008.....The entire architecture has evolved to a while new level. Talking something about Windows Server 2008, you have nearly 5 major editions some of them like standard, datacenter, enterprise, web edition, Itanium edition.....Hyper V comes in as a pre-installed feature in these versions...There are some versions where you do not have this Hyper V feature ad thus costs less...So depending on your utility, you can purchase the required version of Windows.
    Getting back to Hyper V, as i said earlier, it provides support for a virtualised environment and hence create a virtualisation server. Some of you might be thinking as to what is the need for having a virtual server right....
    Well let me explain you this with an example. Suppose you run a company wherein you have 3 database servers with say 250GB hard drive and 1GB RAM on each server. You plan to upgrade all of these servers to say 3GB RAM and 500GB hard drive capacity. Now you have two options. The first option is the traditional one. Just upgrade all the systems to whatever extent you have planned to. Also note that by doing this you must also improve the cooling mechanisms, system hardware maintenance and space utilisation for the server that you maintain because maintenance overhead comes as a free gift package with the huge benefits a server can provide. Now there is another thing that you will have to consider in mind. Will your servers always use 3GB of RAM or is it only at the peak hours its utilisation is 3GB????Well you cannot supply less RAM and spoil your business at peak hours also you "need not" invest on providing more RAM to servers just for serving the need during peak hours when you have a better option like Hyper V.
   I will explain you how to realise the above 3 servers using a Hyper V virtual server. Microsoft has given more importance to development of virtual servers because of many reasons some of them being the above mentioned. Just have a server with say 1.8 - 2 TB of hard drive space(in these days, hard drive space is not a constraint as they are available very cheaply.....I mean you get 1TB Seagate hard drive in less than 50$ in the Indian markets). You can choose to install RAM of say 10 GB. Why 10 GB????? Well lets say you have 3 servers and at peak time you will be using 3GB on each server totalling to around 9GB of peak time RAM usage...also the server OS needs to live......Well here is another interesting thing......Windows Server 2008 comes with an install option called the Server core installation which is a part of installation choice which the server administrator can make. You cannot get the server core part separately but is an installation option in every version of OS that you buy....Whats new in this????Well lets just say that you don't have the GUI anymore only the age old yet most powerful command prompt....You will only see a blank window with only the command prompt console for your operations....It supports all the features of the server operating system...just comes without the GUI........Unless you are a command line geek, don't use this option....Well you do have an advantage in this...It uses less RAM i.e 384 MB as quoted...Well this is an advantage in fact....
Now that you have installed Windows Server 2008 or R2 which is the second release of Windows Server 2008...the next thing you will have to do is to create virtual machines which happen to be your database servers...You will create 3 such machines and the creation of these virtual machines is exactly similar to installing a new OS....Hyper V supports up to 64 logical CPU's per virtual machine which in fact is quite large support. Now you will have an option to create hard disks where you can create either fixed size wherein you will fix the size of the logical hard disk for the virtual machine ( This amount of hard disk space that you allocate will not be available for any of your work) or be smart and use dynamic hard disks which dynamically increases its size as and when data is added onto the logical hard drive of the virtual machine. You will also be able to reserve logical CPU's to certain virtual machines..Say you have one database server which requires huge processor support compared to other servers, then you can allocate more number of logical CPU's for that particular server....As usual there is network load balancing support that  is present....
Not only this, in the upcoming SP! release of Windows server 2008 R2, there is a feature called dynamic RAM allocation wherein RAM allocation to virtual machines can be done dynamically...This is a huge benefit for that peak hour problem which i told you about...You can reserve a starting nominal RAM say 1.5 GB to start with...Then you will have 4.5 GB allocated for all your 3 servers and will be present there even if the servers do not ned so much of memory( Imagine in non peak hours )....Now you can instruct Hyper V to dynamically increase the RAM from 1.5 GB upto 3  GB as and when the virtual machine's RAM usage crosses a particular percentage....Say you set up a virtual machine with a nominal or fixed RAM of 1.5 GB and provide an instruction to Hyper V stating that the virtual machine can be given a max of 3 GB RAM whenever the RAM free space of that particular VM goes below say 20%. so whenever the VM's RAM usage crosses 80% Hyper V ensures that there is always 20% free RAM space available for that VM...it does so by seeping in some RAM to the virtual machine thereby increasing the total amount of RAM and hence the total free RAM space is maintained constant at 20%...this goes on til the total RAM allocated to that VM reaches 3GB( as in this example) thereafter, it either shuts down or asks you to increase the allocated RAM. I am telling you this because you have a great advantage here...you can not only run 3 database servers simultaneously but can also add on some more VM's onto the virtual server so that you can get more benefits from a single server....Microsoft has also given importance on graphical quality...Generally you cannot see aero theme working on a VM. but in SP1 the new feature called Remote FX enables you to have this high graphical capabilities.....
Now if you wish to move the VM from one virtual server to another, Windows Server 2008 R2 provides what is called as clustered media sharing services...This allows you to transfer VM's from one server to another without any drops in connections during the migration...and yes, this feature is called as "Live Migration"...wherein you migrate VM's from one server to another without drops in the connections that exists to the VM's in the network....

There is a lot more to know about in Hyper V...i would leave that to you...Refer the book on Windows Server 2008 which happens to be the first book in my collection...You will find this in the Books page of my blog.....Happy reading.....