During a recent conversation with a friend of mine with Savision (Dennis Reitvink) we discussed how I was integrating Operations Manager distributed applications into Savision Live Maps. We use Live Maps in multiple environments to provide a high level dashboard view of all core applications and websites for an organization. We also use sub-dashboard to show the health of major components within more complicated applications. (I’ve even used Live Maps to show the state of redundant network links). Dennis asked why I wasn’t using Live Maps to represent the distributed application and I said that I had not done so due to some of the rollups which I wanted to accomplish within my distributed applications. As an example, if I have 3 servers in a web farm I want the farm icon to go red when more than 2 of them are offline. Dennis referred me to this article which details how to perform this type of a rollup. So I decided to spend a little time working with this and seeing where it would go!
I started with a simple distributed application as shown below which monitors two websites, which are dependant upon one service and two databases. The website is monitored by a distributed application. The distributed application is shown below:
When this is shown in the Operations Manager console as a distributed application is is pretty straightforward and shows what we would expect as I can see my distributed application and each of the components within it as shown below.
I then translated this distributed application into a Live Map as shown below.
Notice that in this format I can do some things which I could not with a distributed application:
1) I can show each of the components of the DA without expanding them.
2) I can provide the custom look and feel that I want for the various pieces of the application.
3) I can now label these as I choose versus using the names provided in the distributed application (see DB1, DB2, WEB01, WEB02, etc).
Translating Distributed Applications into Live Maps:
So what’s a good way to quickly translate a DA into a Live Maps? In the Live Maps Authoring console, drag and drop the distributed application onto a blank map.
Next I can open the distributed application and add the various components via drag and drop them into the map that I am designing. Fifteen minutes later I had a rudimentary Live Map (shown in the third image in this article) configured when I can then add into my top level dashboards which represent the health of core applications and web services in my environment.
What about health rollup?
To test rollup of health, I made some changes to the Live Map and added a third website as shown below. I used Dennis’ article (link above) to configure rollup so that if more than 50% of the web servers went red it should rollup red.
Next I stopped two of the websites to cause a failure condition which rolled up correctly to the MyWebSite level and to the My Application level (which is linked to the Distributed Application).
I restarted one of the web servers to validate that the rollup worked as expected which is shown below (since it was less than two web servers offline the health went to a green state).
These views are also easy to manipulate – the one above was designed to show all of the information on a similar level, the one below shows it broken into more layered components (front-end servers/services, databases, and back-end services).
There are lots of potentials for how to provide visibility into your distributed applications with Live Maps. Another one to consider (especially if you have a lot of web sites) is to create a sub-view for the web farm itself and to configure the rollup of the sub view. This approach makes it easy to understand the overview of the application and provides a business application view which represents the true health state of the application which can be nested on a higher level dashboard view. The view below shows a complicated distributed application which was built of six different sub-distributed application. To provide a high level overview of the health of the six components it could be shown with a single status (the grey bars labeled as SubApp1-6) but this approach was used to provide a summary view of the sub-dashboards which were created. SubApp1 shows a website test, the website and the database. These are the high level components of the “My Application” view showed two graphics backward. This approach shows an extremely complicated distributed application in a single dashboard which can in turn be linked into sub-dashboards to provide the detailed status of the components of the distributed application.
QuickTrick: In Live Maps how can I tell if a link is to a submap or an entity?
When using Live Maps, it is often confusing to know whether an item on a dashboard is linked to another Live Map or to an entity (such as a distributed application). When it’s an entity and you double-click on it the result is an opening of the Health Explorer. Personally I do not use Health Explorer when going through the dashboards, instead I right-click and open the Diagram view. However, since there’s no way to tell whether it’s an entity or another Live Map I often end up opening the Health Explorer by accident. Try this out though!
On each map that I create which has a submap linked to the area, I use a graphical indicator that there is a Live Map attached to it. In the graphic above we see each of the SubApp(s) has a little green arrow next to the health indicator. If I see this arrow I know that it’s attached to another Live Map so I can double-click to go to the next map! I downloaded this from the web (thank you iconarchive.com!, http://pixel-mixer.com) and used Microsoft Office Picture Manager to rotate it 90 degrees.
Summary: If you really want to increase the usefulness of your distributed applications into high gear, look into using the Savision Live Maps product to mirror your distributed applications. This is a great way to add value to Operations Manager especially if you are already using Live Maps in the environment. And when generating sub-maps, consider using a graphical indicator so that you know which ones to double-click on versus opening in diagram view!