VMware Lab has release a new Fling called DRS Doctor
Distributed Resource Scheduler (DRS) is a vCenter feature which makes use of the vMotion technology to keep the cluster in balance. DRS groups all the ESXi Servers within the cluster as one group on Memory and CPU. It keeps the cluster balanced by moving around the VMs based on the usage and available resources on each host. DRS is a feature which has been around for many years and quite simply one of the best ones.
DRS looks at several aspects to VM performance like CPU ready time, CPU utilization, memory active and memory swapped to make intelligent placement decisions. DRS has historically been a black box though. This decision information can be ascertained by analyzing DrmDump files, but requires engineering support to decode and interpret them…until now.
This is where the new Fling DRS Doctor comes into the picture. This tool will help vSphere Administrators to diagnose & understand DRS behavior without engineering support a little deeper as to why the decision was made to move a particular Virtual Machine
Using DRS Doctor, vSphere Administrators get a better insight into DRS behavior in VMware vCenter clusters using the command line. When run against a DRS enabled cluster, it records information regarding the state of the cluster, the work load distribution, DRS moves, etc., in an easy to read log format. This is very useful when analyzing DRS actions and troubleshooting issues with very little overhead. This is also an easy way for support engineers to read into customer environments without having to rely on developers to debug DrmDump logs in order to troubleshoot simple DRS issues.
DRS Doctor connects to the vCenter server and tracks the list of cluster related tasks and actions. It also tracks DRS recommendations generated and reasons for each recommendation, which is currently only available in a hard-to-read format in DrmDump files. At the end of each log, it dumps the Host and VM resource consumption data to give a quick overview of cluster state. It also provides an operational audit at the end of each log file.
DRS Doctor records information about the state of the cluster, the advanced settings applied, the workload distribution, the virtual machine entitlements, performance demand, the recommended DRS moves, and more. Even better, DRS Doctor writes all this data into a log file that requires no special tools to read.
How Is the DRS Doctor Log Output Different From What We Can See in the vCenter Client UI?:
- UI doesn’t report the reasons for every DRS move (it only posts the number of migrations initiated by DRS)
- UI doesn’t provide a summary of cluster operations in the last DRS interval. The list of operations, along with reasons for DRS moves, can provide useful correlations to help understand DRS moves better
- UI doesn’t provide the distribution of host/VM resource entitlement across the cluster. This is needed for estimating VM happiness
- Additionally, in the UI it is not immediately obvious as to what advanced DRS options are set in a cluster, or what special cluster configuration is enabled. These options/configurations can influence DRS behavior, so we need to be aware of them
Installation and Prerequisites:
DRS must be in partially automated mode in order for DRS Doctor to work. If your cluster is in fully automated mode, DRS Doctor will automatically change the mode to partially automated mode and apply the load balancing recommendations based on the threshold configured. (It will act just as it would in fully automated mode.)
Note: If you close DRS doctor you will need to ensure that the DRS automation settings get reverted to fully-automated mode.
Try to run DRS Doctor in close network proximity to your vCenter Server
Prerequisites for Installation:
- Requires Python 2.7.6 or higher
- Requires Python modules “pyyaml” and “pyvmomi”
Note: The VMware vSphere API Python Bindings can be found here: https://github.com/vmware/pyvmomi
For Python versions less than 2.7.9, the pyVmomi version should be 5.5 (pip install pyvmomi==18.104.22.1684.1.1). If using Python 2.7.9+ the version 6.0 of pyvmomi can be used.
For certificate validation (SSL) support, Python 2.7.9 or above and pyVmomi 6.0 is required.
Compatibility with vCenter Versions:
- DRS Doctor is compatible with vCenter versions 5.5 and 6.0
- SSL Certificate-based Authentication:
- Supported for vCenter 6.0 (see the Prerequisites section)
Click here to download DRS Doctor.
For installation steps on CentOS 6.5, Please refer Install_DRS_Doctor_on_CentOS_6
Mathew Meyer from VMware explained in very details about the New Fling- DRS Doctor in VMware vSphere Blog – click here
I hope you find this useful. Thanks for reading.