Is Virtualization Right for You?
Virtualization in a general term means abstracting the physical resources from the services and pooling them together so they can be utilized more efficiently. Server virtualization is when you take a physical host and install a hypervisor on it. The hypervisor is what communicates directly with the hardware of the host server. The hypervisor then presents virtual hardware to the virtual machine when it is powered on. The virtual machine then has an operating system installed within it, such as Microsoft Windows or Linux. When you install the operating system within the virtual machine it does not know that it is running on virtual hardware (there are some hardware drivers that get installed to work better with the virtual hardware, these are provided by the manufacturer of the hypervisor). The hypervisor takes care of scheduling all of the virtual machines’ virtual hardware and processing the operations on the physical hardware.
Now that we have that out of the way, the first thing to think about when looking at virtualization is: Do I plan on buying new hardware? The reason this should be the first question is because there is no need to spend money on virtualization unless you are planning on buying at least one new server. Even though virtualization technologies can be installed on older hardware I wouldn’t recommend it for two reasons:
- You lose out on the advancements made in hardware technology that makes virtualization more efficient;
- Unless you have servers that are sitting idle most of the time you won’t be able to take advantage of the consolidation ratios seen on newer hardware.
Don’t think that you need to virtualize all your servers at once, unless you have all old servers and you are looking to do a hardware refresh on everything. Virtualization is a great technology that will grow with you. Start off with virtualizing low hanging fruit like print servers or domain controllers. Yes, it is safe to virtualize domain controllers, and you should always have at least two domain controllers. Once you get those servers virtualized then look at what else can be virtualized, maybe a lonely little application that few people use.
One of the greatest things about virtualization other than the consolidation benefits is that you can P2V your servers. P2V means “Physical to Virtual” where you copy your physical server into a virtual machine using certain tools. What this means is that you can take your server that was living inside a box all by itself and put it inside a virtual machine where it lives alongside other servers sharing the resources of a single physical server. The application and operating system inside the virtual machine has no idea that it is virtual. This has benefits including – “nothing has changed” according to your users. They still access the services of that server the same way they always had.
Once you have your servers virtualized you can realize the great benefits of virtualization including the mobility of your virtual machines. Yes, I said mobility, as in moving your servers around. Since the hardware inside the virtual machine is “virtual” and presented to the operating system by the hypervisor, that means your virtual machine can move to any host running the same hypervisor and physical CPU generation without needing to be shut down (the details of the CPU requirement goes beyond the scope of this post). This is called migrating your virtual machine. Migrating means that you can literally move your virtual machine from HostA to HostB without any interruption of service from the virtual machine.
Once you virtualize your servers you will start to see the benefits surrounding virtualization. Now think about what you could do if you were to virtualize your network, or your storage. This is already being done…I’ll post about it at a later date.
Now you are saying “Which hypervisor do I need?” There are multiple vendors for virtualization including Microsoft (Hyper-V), VMware (vSphere), Citrix (XenServer) and then some others, these are the top three. Deciding which one is a tough choice and shouldn’t be taken likely, as once you make a choice it takes some work to move to another one. Things you should take into account are the management offerings of each, the cost of implementing and the growth potential. They all will work on the newer hardware, not necessarily the “newest” as they need to be updated to support the newest technologies.
Once you have fully embraced virtualization as a plan to move forward with all new server builds you need to understand that virtual is different than physical. Although you can manage your virtual servers like physical servers that doesn’t mean that you should. You will lose out on the benefits of virtualization if you do this. There are products out there that work specifically with virtualization and I encourage you to look into them. A couple of management things in particular are backups and anti-virus. Backup and AV solutions that are designed specifically for virtualization, understand that virtualization is different from physical servers. The reason I bring these two technologies up is because they can be resource intensive on a single server which gets amplified when performing them in a virtual server. Virtual servers are sharing the resources of a single host. If you start doing a backup or an AV scan on all your virtual servers at the same time you have all your virtual servers contending for the same disk IO and CPU cycles at the same time. Backup and AV vendors that are built for virtualization go about doing this in a different way.
Backup and AV vendors don’t need to be installed within the virtual server to perform the functions that it needs. This is because the hypervisor has ways for these technologies to do their job at within the hypervisor intelligently. This means that you can back up all your virtual servers without affecting the performance of your virtual server or scan for viruses at the hypervisor as it gets written to disk. Since all the data IO and CPU instructions and memory passes through the hypervisor then the AV software can watch it there instead of inside the virtual server. Same goes for backup software; since the virtual hard drives of the virtual server is stored as a file on a drive somewhere, the hypervisor can direct the backup software directly to that location instead of having to go through the virtual server. This goes the same for replication; you can now replicate your virtual servers much more easily than ever before.
Server virtualization is a new way of thinking; understand that and you will gain more out of it. It is part of the Software-Defined-Data-Center. Remember I mentioned virtualizing your storage and networking, you can also virtualize your security and desktops and applications. This is what the Software-Defined-Data-Center means, virtualizing your data center for mobility, agility and resiliency.