I'm trying to help maximize visibility into the entire appstack for a service that has a clustered database under it.
To do this, i've set up the following environment:
2 agent-based node monitors installed on the virtual machines that host the Oracle RAC databases.
an ICMP-based node monitor pointed at the VIP that the RAC databases listen to (the cluster listener). This is set to DHCP, so that if one node goes down it can reach the others.
4 application monitors using the RAC template for each of the individual databases, applied to the ICMP node of the RAC cluster.
So far, things look good. The appstacks see the ICMP node as a server.
I then created a group for the cluster, containing the agent-based nodes.
Here's where I am not sure if I am doing things right.
In dependencies, I put the group (containing the agents) as the parent, and the ICMP VIP as the child.
My aim is to see from the application down, ideally seeing the status of the VM guests, storage, and hardware and so on.
Under the group, I see the servers and applications like I would expect (Though no details on the volumes, but that's okay).
When I go to the application, however, all I see is the VIP node and the group. This doesn't show the underlying systems that I would expect the dependency to surface.
My question is, do I have the groups set up right?
I'm thinking maybe I need to flip what is the parent and what is the child. Alternatively, I might have to make the server nodes dependencies for each application, but I am worried about creating too many user-created dependencies like this.
I also don't know if it is related, but the map view doesn't show the selected node or the sidebar of information, which is weird. It's almost like it isn't associating things properly.
Solved! Go to Solution.
In SAM there is something called ADM (Application Dependency Mapping) that detects dependencies between servers and applications.
But such dependencies gets detected only when both nodes are monitored through agents.
In your case you have 2 Nodes (Oracle DB) monitored through agent and 1 node (cluster) monitored through ICMP - this is why dependency between has not been detected automatically.
Let's focus now on Appstack from application level point of view.
You visit Appstack when there is a problem with particular entity (right?), so Appstack helps you to find out what causes such problem.
* we show child entities (child entities usually affects parent, so i.e when node is red (critical state), it may be because one application is in 'critical' state)
* we also show direct parrent (example Node where application is related with)
* we also show groups either related with particular entity or its parent(s)
Which enity types goes on appstack can be found in 'Orion.Stacks.Participation' entity (SWQL studio)
SELECT TOP 1000 Id, SystemUuid, Stack, Category, EntityType, UiOrder, UserOverride, RequiresInstall, CategoryDisplayToken, MembershipJoins, MembershipInclude, MembershipExclude
(as you can see on Appstacks we do not show Application 'Components')
So in your case there is no direct relationship (dependency) between Application (that sits on Node 'Cluster' ) and Node1 or Node2 ('Oracle' Nodes), even when you've created relationship between Node 'cluster' & Group (of Nodes)
Even if you create a dependency between: Node 'cluster' & N1 , on applications's AppStack server 'N1' won't be visible.
The only way to see N1 on App1 appstack is to create manually relationship between them (as I said because one node is ICMP such dependency is not automatically detected)
(in my example I was playing with Azure Application templates)
Having that done (manually created dependencies between App(s) residing on Node 'cluster' & 'Oracle' Nodes), you will be able to see them on Orion Maps
SolarWinds solutions are rooted in our deep connection to our user base in the THWACK® online community. More than 150,000 members are here to solve problems, share technology and best practices, and directly contribute to our product development process. Learn more today by joining now.