Any VMware administrator worth his or her salt has a grab bag of useful tools and scripts to make administration easier, so much so that this list of tools usually follows them between jobs. Below is a list of what I'd consider to be 10 essential VMware management tools I personally use on a day-to-day basis as a VMware administrator.
RVTools is a tiny free tool that allows an administrator to easily interrogate and report on a VMware infrastructure. It will collect just about all the information you require, displaying it in a series of useful tabs. What is exceptionally useful is that RVTools allows the export of the data in both CSV and Excel formats for manipulation of data if needed.
It is an ideal way to get a list of virtual machines in a cluster or vCenter in one easy step. It lets someone do exactly the same with hosts and pretty much every reportable item you could possibly need. It gives loads of information, perhaps too much, about a host, cluster or VM in an easily exportable list. One really useful function is that RVTools has a special tab for problem machines that will show any machines that don't meet VMware best practice or have serious issues, such as inconsistent machine names, large snapshots, zombie virtual machines and many other potential issues. [Download RVTools]
RVTools is free tool that is used to interrogate and report on a VMware Infrastructure.
(Image: Stuart Burns)
Every administrator, like it or not, is going to have to get used to Windows PowerShell. PowerShell is a key component in running anything but the smallest VMware farm. It provides a key part of VMware automation infrastructure. It allows admins to quickly create small scripts to perform frequently performed tasks all the way up to huge automation scripts to migrate entire clusters to new homes.
If you are running Windows 2008, then you will already have PowerShell installed. As proficiency increases, you can build small and useful scripts. A typical example of a PowerShell script I use frequently is to check that all datastores in the cluster are available to all the hosts. Having tens of LUNs per cluster, it saves time and reduces the margin for error. It is small time saving scripts like this that separate good admins from great admins. [Download PowerShell]
3. vCheck Daily Report
The vCheck daily report script is created by Alan Renouf and several members of the VMware community with one key goal in mind. That goal is to provide a daily health check for VMware infrastructure. It is free to download and use. It will require a small amount of customisation for specific environments, such as the email delivery settings and access settings but it is well worth it. The key takeaway from this is that it can be used to get an easy to understand report that highlights and points out issues with the infrastructure.
What is even better is that where there is a deviation from best practice it will report that. Reporting includes virtual machine faults, hardware faults, DRS, HA and many others. This script is worth its weight in gold. It is all about reporting issues and errors where as RVTools is all about reporting numbers. [Download vCheck Daily Report]
WinSCP is a useful Windows implementation of the classic SCP (Secure Copy Protocol) tool.
(Image: Stuart Burns)
5. PuTTY/DCUI Command
PuTTY, the secure shell client is a key component to any administrator's armory that gets used frequently. PuTTY can be used to troubleshoot the server without having to use ILO/DRAC and the slow and awkward interface that comes with them.
PuTTY -- and the DCUI command -- can be a valuable tool in any VMware admin's toolbox.
(Image: Stuart Burns)
Using the default PowerShell Integrated Environment (PSE) is not an experience to relish. I just don't use the PSE. I can, however, wholeheartedly recommend PowerGUI by Dell. Quest was the company that created PowerGUI, and Dell recently purchased Quest.
It is a fully integrated IDE that has autocompletion and plug-in modules to extend the functionality. The VMware community has additional plugins to expose VMware functionality. There is a pro version that has version control and a few other features that are overkill to most admins. [Download PowerGUI]
PowerCLI is an essential part of scripting sauce that extends the functionality of the PowerShell environment. To use the scripting environment with VMware, you need to create a VMware account to download the tool for free. We've also published a PowerCLI getting started guide that will help get you up to speed quickly. [Download PowerCLI]
8. Virtual vCenter Mobile Access (vCMA)
Virtual vCenter Mobile Access is not really production ready, but it is a handy tool to manage the infrastructure from an iPad. It is not a tool you would use every day, it allows for rudimentary management of an environment in a pinch. [Download vCMA]
9. VMware Converter
Any seasoned administrator is going to be using the VMware converter tool frequently. As the name implies, it allows an admin to convert other physical and virtual platforms and import them into the vCenter infrastructure. Using the converter tool does more than just importing a machine into the infrastructure. The converter allows an administrator to resize the disks, alter the memory and number of CPUs prior to import. Other nice features include the ability to install VMware tools as part of the import process and also power on the imported virtual machine after it's complete. [Download VMware Converter]
10. vMA Management Assistant for Linux admins
The vMA is a godsend for Linux administrators who wish to manage the vSphere infrastructure using Linux-based tools. As every VMware admin knows, the move from ESX to ESXi left behind the RH based console that was replaced with a very small and rudimentary hypervisor shell. [Download vMA Management Assistant]
To stop all the Linux guys from deserting VMware, the clever VMware guys and girls created the vMA. The vMA is essentially a pre-packaged Linux system that allows an admin to run Linux and Perl commands against the vSphere environment. For those that don't like Powershell, Perl can be used in its place, with all the SDK elements exposed. It gives the Linux lovers a chance at automation.