Subscribe by EmailTop Posts Today
Recent comments
Top Ranked Users
Invite your peers
|
Virtualization Advantages & Disadvantages172
vote
Virtualization seems to be the buzz word all in IT are using these days. It can mean a bunch of different things depending on who you talk to. Refer to Wikipedia for many of the latest definitions. For our discussion let's define it as a technique for hiding the physical characteristics of computing resources in a way in which other systems, applications, or end users interact with those resources. For example, prior to virtualization techniques an administrator would install an operating system (OS) on one physical server and users would interact with that server through only that single OS. Now with virtualization we can install many different OS's on that same server. When a user accesses any one of those OS's he/she thinks they are on their own server, when in fact they may be sharing a server that is running many different OS's on it. Technically how this happens is through the use of hypervisor technology. A hypervisor is a virtualization platform that lets users run multiple operating systems on one host computer simultaneously. There are two types of hypervisors; type 1 and 2. Type 1 (also called native or bare-metal virtualization) Type 2 (also called hosted virtualization) hypervisor. Virtualization has some obvious advantages that make it an almost no-brainer for most IT organizations in terms of justifying a virtualization project. They include: 2) Speed of deployment for new servers. To deploy a VM from an existing template take about 3 minutes (that includes configuring name, IP, and other specifics for the server). Compare this with having to issue a PO, rack the server, make sure there is enough power/cooling, attach a console and the other steps required for building a physical box. It can take anywhere from 1week to 4weeks (depending on how quick you can get the server shipped to you. 3) Save on power and cooling costs. Don't need to run as many physical assets anymore. 4) Load balancing. If a VM is using too many of the physical resources it can be migrated (in real-time with VMotion) to another physical asset. 5) Upgrading hardware without scheduling downtime. If you have enough hosts within your cluster you can migrate all the VMs off one host and spread them to other available hosts. Once all VMs are off the host you can take it offline, upgrade, bring it up, migrate back the VMs, and repeat. This way none of your VMs experience any downtime! 6) Setting and tearing down test environments quickly. Especially handy when you want to test a new app or script. You can deploy a VM in 3 minutes, test what you have to test and blow it away again. 7) Ability to take snap shots of existing states. Since a VM is really just a set of files you can take snap shots and revert the VM to previous states within seconds. 8) Ability to set disks to non-persistent states. This is useful for things like training environment. After training is done you don't want to keep the changes made to VMs for the next class. If that is the case set disk to non-persistent and reboot the system. Any changes made to a non-persistent disk will be gone. I could list some more but I'm getting tired of writing :) Some disadvantages: 2) Some applications may still require a dedicate physical resources. There are case where really memory, CPU, or i/o hungry applications are best on their own physical asset. You have to remember that all VMs are sharing the same pool of resources. 3) Watch out for licensing fees. Make sure the license model works well for what you're trying to do. In most cases its a no-brainer, but do your own due diligence. 4) You'll need to have good tools to manage large number of servers. With virtualization it is easy to start creating many servers. Each one needs to be administered the same way they were in the physical world. Make sure your methods/tools can scale to address server expansion. 5) Backups. When you have lot of VMs on one physical server you may run into challenges assoicated with backing up all the VMs one this one server. Make sure you have enough bandwidth coming out of your backplane to address backup performance. VMware also has a tool called consolidated backup (CB) that addresses some of these issue. The earlier versions of CB had some issues/bugs but I believe the more current versions have corrected the problems and it's worth a look for large environments. Bottom line look at your application profiles. Most applications are excellent candidates for running in virtual environment. There are some that may not be depending on the characteristics of that app. A good analysis of your current environment and application stacks will help you determine which are the best candidates. These include apps that have low i/o and cpu needs. Large databases may not be the best candidates for VMs. Again it depends. Do your due diligence. In conclusion, virtual environments will become pretty much standard practice in all data centers. The cost advantages, efficiencies, and productivity gains are just so hard to debate. Skooliki _____________________ If you enjoyed this posting please subscribe to our RSS feed or submit it to your favorite social networks. |
User loginNavigationtags for Virtualization Advantages & DisadvantagesKey word tags |
You forgot a good reason for VM usage...
It's called "I have either Linux or MacOSX and need to run one or more mission-critical Windows desktop apps, plus I can use Ubuntu as THE ultimate free kick-butt Windows software firewall from hell..."
:)
This is driving VM on the desktop like you wouldn't believe.
Virtualization benefits for desktop
Excellent point. I totally forgot to include the benefits for desktop OS's. It is true that virtualization has fundamentally changed the way we work with OS's at the desktop level especially for developers. No need to have 3 PCs under your desk anymore to test/install various applications. Need to test a 3-tiered application? Can easily be down with one machine now. Also excellent for sales engineers who want to demo these types of applications to clients.
Post new comment