Commentary on "Virtualization's downsides"
Submitted by jeff on March 9, 2007 - 2:48pm.A recent Comupterworld article, which discusses the downsides of virtualization, looked interesting at first. As a cynic, I enjoy reading articles that deflate overhyped technologies and expose weaknesses, though I am a big fan of virutalization. After reading the article though, I can say that the consultant referenced therein, and possibly the author, see virtualization in a vacuum. The problems presented are perfectly valid, but they all have solutions in the real world. Let's look at each of them:
...enterprises sometimes [sic] have difficulty finding or applying adequate monitoring and management tools that work across both virtual and physical landscapes. Other issues can include support, integration and compatibility of different operating systems on the multivendor hardware being virtualized.
Absolutely true. The solution? Verify that the implementation you choose meets your requirements -- something that a system administrator should do before deploying any software.
Increased uptime requirements arise when enterprises stack multiple workloads onto a single server, making it even more essential to keep the server running.
Okay, so spread your workload around onto multiple hardware nodes, and where applicable, provision redundant services on multiple hardware nodes to minimize single points of failure if a hardware node goes down. You'll never eliminate the hardware node as a point of failure, but you can minimize the effects of any downtime with some careful planning.
Bandwidth problems are also a challenge, Mann says, and are caused by co-locating multiple workloads onto a single system with one network path...in a virtual environment, multiple workloads share a single NIC, and possibly one router or switch as well.
Sure. So make sure you have a hardware node with the capacity for multiple NICs. You can then put certain virtual machines on certain NICs, or trunk the interfaces. If using multiple NICs though, make sure your virutalization software supports that configuration. As for the router or switch, this is solved by using multiple hardware nodes connected to different routers or switches.
So what have we learned?
First, analyze your requirements. If you have 50 high-traffic web servers you'd like to consolidate, it doesn't make sense to have just one hardware node with a single NIC. At the other end of the application stack, a high-volume transactional database server probably doesn't belong on a virtual server at all.
Second, know the resources you have to work with. If all you have is a single server with a single NIC, then plan around that. You might not be able to virtualize everything that you want to, as performance might suffer. But that's a limitation of your hardware and your budget -- not virtualization.
These are all issues a good system administrator would take into account. Get yourself a good sysadmin, and take these kinds of articles with a grain of salt.
