When are are monitoring server health from a top level NOC type view (such as this one) if we just include all of the servers in an environment it’s pretty much always going to be red because there is almost some issue going on in the environment. To provide a realistic state of health for the servers in the environment, we can instead create a Dynamic DA which includes specific servers in specific OU’s and changing health rollup to a percentage which is normal for the environment. The result is a dynamic population for the Distributed Application which we can then configuring health rollup based upon percentage:
For the test, we created an OU and moved a subset of servers to that OU.
Next we create a new MP (DynamicDA in this example) from the Administration pane, Management Packs
From the Authoring pane create a dynamic group based upon the OU containing our DynamicDA OU:
Verify the members of the group are correct by right-clicking on the group and choose View Group Members (it may take a while for OpsMgr to identify what computers have been moved to a new OU)
We see three of the five servers as part of this Dynamic group now (cloud-sm03 and cloud-sm04 are agentless monitored so they do not apply in this group – only agent managed servers).
Create a DA with a server included (adding a Windows Server in the environment shown below as an example)
(If we just try to add the group directly instead of using this method, health does not roll up as shown below from OpsMgr 2012 RC)
Export xml for the Management Pack from the Administration pane, Management Packs
Replace the hard-coded server section of the XML with the dynamic group section in the XML (using http://blogs.technet.com/b/brianwren/archive/2008/01/26/dynamically-populating-component-groups-in-distributed-applications.aspx as reference). The example below as configured for the Computers OU as an example.
Update the version number at the top:
Import the updated Management Pack: (if it will not import, something when wrong when editing the XML – go back to that stage)
Open the Distributed Application in the Monitoring pane, Distributed Applications and open it in a Diagram View. If all went well, we should see the group and health of the servers in the group:
From here we can change rollup to be based upon our requirements for health for this group. The example below shows as healthy until at least 60% of the servers are not in a healthy state.
Two of the three servers unavailable (66%):
One of the three servers unavailable (33%):
NOTE: Once you have made this change, you can no longer update the Distributed Application in the Distributed Application Designer (ok, you can but you will need to re-update the XML as shown above).
Summary: It is possible to create Distributed Applications based upon components which are dynamic such as OU membership. These DA’s can then be tied into a top level NOC view which provides the overall health of the set of servers based upon how you have defined the rollup for health for your group of servers!
Additional readings on this topic:
Kevin Holman’s article covers steps to create a group based upon an OU: http://blogs.technet.com/b/kevinholman/archive/2008/02/05/creating-a-group-based-on-ou-organizational-unit-in-active-directory.aspx
Brian Wren on how to make the DA dynamic: http://blogs.technet.com/b/brianwren/archive/2008/01/26/dynamically-populating-component-groups-in-distributed-applications.aspx