Monday, March 21, 2011

How to create a computer group for VMware servers or Hyper-V servers

While tuning an Operations Manager environment that is heavily virtualized on VMware, we started receiving alerts that the “Total Percentage Interrupt Time is too high” on several of the virtualized servers. During discussions with the local virtualization SMEs, they indicated that this metric is handled differently in a virtual versus physical server configuration (see http://www.vmware.com/pdf/vmware_timekeeping.pdf and http://searchservervirtualization.techtarget.com/tip/0,289483,sid94_gci1373898,00.html) for details. To properly tune this environment we decided to create two groups:
  • One for VMware servers
  • One for Hyper-V servers
The intent was to then create overrides (or disable alerts) as we identified what needs to be handled differently on the virtual systems. 


Hyper-V Server Group

This process was very simple for the Hyper-V servers, as there is an existing attribute (Virtual Machine) that indicates if the server is virtual in Hyper-V. The steps to create this group from the Operations Manager console: Navigate to the Authoring space -> Groups, right-click and create a new group. We named ours Hyper-V virtual, and when we specified the dynamic members we defined them to where Windows Computer / Virtual Machine equals True.

Next, we checked the members of the group (right-click, view group members) to verify the group was working.

VMware Server Group

For VMware, we needed to create an attribute that would identify systems virtualized with VMware, and then use the attribute to populate the group membership. From the Operations Manager console -> Authoring space –> Management Pack Objects –> Attributes, we right-clicked and created a new attribute. We labeled the attribute as VMware tools, provided a description, defined it to a target of Windows Computer (which set it to Windows Computer_Extended) based upon a registry key, and stored it in a custom MP (not the default MP shown in the screenshot below).

Next we defined the registry setting as a key for the HKLM\System\CurrentControlSet\Services\VMTools if it exists, and to run daily (86400 seconds).

After adding this attribute, we used the Monitoring / Discovered Inventory view (which started as blank, but it soon added records as they were discovered; as shown in this next screenshot.

To complete the process we created a new computer group (Operations Manager console –> Authoring space -> Groups, right-click and create a new group) called VMware Virtual based upon the new attribute created in the Windows Computer_Extended class.
 
The end-result was two different computer groups that now represent the two different virtualization technologies available in this environment. These can be used as part of overrides to set different thresholds for alerts such as the “Total Percentage Interrupt Time is too high” alert discussed in the beginning of this posting.
 
Note: After this was posted, Pete Zerger pointed out the Virtual Machine Discovery MP for Operations Manager 2007 (http://www.systemcentercentral.com/PackCatalog/PackCatalogDetails/tabid/145/IndexID/12572/Default.aspx), which extends existing discovery of virtual machines to include VMware guests. This is a much cleaner solution than discussed above. Pete wrote this to make it easy to override hardware MPs so they leave VMs alone.