Tuesday, September 20, 2011

Using the Wrong Tool for the Wrong Job

In this ServerFault question, the user asks a question about why two VMs on the same Windows 2008 R2 DataCenter Edition host can't ping each other. If you ignore the actual question and look at the underlying details, you'll see that the user is using VirtualBox as his hypervisor. If you dig a little more, you'll see that he also has VMWare virtual adapters installed, which means that he probably has VMWare Workstation or Player installed as well. This brings me to the point of today's post: Don't blindly pass on native tools.

My comment on the question was, "Why on earth are you using virtualbox when you have hyper-v available?" It's a comment that was never answered, since the user apparently abandoned the question. I assume that the user was using this server for testing and not production. I make this assumption because the cost of Datacenter Edition is pretty high and I would hope that anyone spending that kind of money wouldn't turn to VirtualBox for server virtualization. Most likely, the user in question has a TechNet account and was playing around in a test environment. He could have a very justifiable reason for not using Hyper-V. He may have had pre-built VMs, for example; there are exceptions to every rule. I always prefer to use native tools whenever possible and would have opted for Hyper-V 10 times out of 10 in that situation.

Another example: If I'm working in PowerShell, I prefer to use the official Active Directory cmdlets instead of the Quest AD ones. There's nothing wrong with the Quest cmdlets, and they exceed the capability of the Microsoft ones in many ways. The problem is that if I'm in a pinch and not on the machine in my office, I probably won't have the third party tools readily available. It's more important to me that my environment is portable than slightly more convenient. This is a choice that every IT administration should consider.

One thing that is essential as an IT environment grows is consistency. Consistency allows for scalability and scalability makes everyone happy. Using native tools is one easy way to begin to introduce consistency into an environment. There is certainly a time and place for third-party add-ins and applications. There are at least a dozen that I can think of off of the top of my head that I couldn't do my job without. The problem is that too many people have it in their head that if there is a third party option, it must be better than the native tool and in many cases, this is just wrong. Now someone track that guy down and go enable the Hyper-V role for him already.

No comments:

Post a Comment