Graph Database and Topology

Graph - Vertices and Edges

The Graph Database is the underlying foundation for both Topology and SLM, providing normalized Topology data including service hierarchy (SLM), geo-location (site mapping) and network (OSI layer 1-7) data, as well as more advanced applications such as service propagation, RCA/downstream suppression, and cross domain correlation and visualization.

Note:

Great care should be taken when modifying anything in the Graph database as misconfigurations can cause unintended results.

Vertices

The Vertices interface is used for adding, editing, and removing vertices and specifying special properties. A vertex can be a device, service, metric, etc., and is used to represent these items in the Graph database. Properties of the vertex are custom name/value pairs used for metadata. Certain Unified Assurance components leverage this meta data for display and for correlation purposes.

Configuration -> Graph -> Vertices

A column has been added to the grid to show a vertex's Custom Name. Vertices of type Device will now use the Unified Assurance built-in algorithm to determine the correct device name that is to be shown from the corresponding device in the device catalog. In order to use this new functionality, the vertices must have the DeviceID set as an vertex property, and this property must be set to a corresponding device in the Device Catalog. Vertices that are any type other than Device, will optionally use the CustomName property, if set.

This custom text, either the determined device name or the custom name, will be shown in Topology Dashboards, the Adhoc Graph Dashboard, the Vertices UI, and the Edges UI. In the Topology Dashboards and the Adhoc Graph Dashboard, the custom text will also be shown on the nodes that are displayed.

When adding or editing an vertex, the form fields are as follows:

Vertex Types

The Vertex Types interface is used for adding, editing, and removing Vertex Types within the Graph database. These custom types are used to define Vertices within the database and how they are represented. Deleting a Vertex Type will cause vertices, edges, and properties to cascade delete.

Configuration -> Graph -> Vertex Types

The form for adding or editing an vertex type has the following fields:

Property Types

The Property Types interface is used for adding, editing, and removing the Property Types within the database. These types are used to define the specific vertex and edge properties within the database and how they are represented.

Configuration -> Graph -> Property Types

When adding or editing a property type, the form has the following fields:

Note:

Property Types are for Render Types only. These only need to be added if custom property types are needed that match to existing renderers. If not created, the properties default to a text field renderer. They are used to format the property grid for Vertices and Edges.

Edges

The Edges interface is used for adding, editing, and removing Graph Edges and edge special properties. Graph Edges specify how two Graph Vertices are related to each other within the database. Properties of the Graph edges are custom name/value pairs used for metadata. Certain Unified Assurance components leverage this meta data for display and/or correlation purposes.

Configuration -> Graph -> Edges

Two columns have been added to the grid to show the start and end vertex's Custom Name. Additional information is available in the Vertices section of this guide.

The form for adding or editing an edge has the following fields:

Edge Types

The Edge Types interface is used for adding, editing and removing the Edge Types that are used between vertices in the database. These custom types are used to define edges within the database and how they are represented indicating their name and display characteristics. These edge types also define the types of relationships like: physical, virtual, business, concept, custom, etc. Deleting an Edge Type will cascade delete any existing edges, along with the edge properties.

Configuration -> Graph -> Edge Types

When adding/editing a edge type, the form fields are as follows:

Topology

Agents & Stitchers Overview

Topology Agents are used to collect data from devices and systems. This collected data is stored in the Topology tables or in the Unified Assurance SVN. Default rules provided with each Topology Agent collect the following types of information:

Other types of information can be collected using the Topology Discovery Agents and Topology Configuration Agents through the modification of rules files used by each application. Collected information is stored and then can be utilized by Stitchers to create relationships in the database or by other Unified Assurance applications, such as correlations.

The Topology Gather Network Inventory application is used to gather information about the network and devices in the device catalog using SNMP, and enter it into the Unified Assurance inventory tables. There are two types of information that can be discovered:

The application is run via a scheduled job:

Configuration -> Broker Control -> Jobs

The Graph Database is populated either by stitchers or manually through the UI. These stitchers use previously gathered information from inventory tables and/or configuration files stored in SVN. Topology Stitchers are used to parse collected data into vertices and edges, depicting how devices and/or services are connected. The relationship data is stored in the Graph database. These relationships are leveraged in the layout view of the Topology Manager and for correlation logic. The Stitchers can be run via the Jobs UI. These Scheduled Jobs are as follows:

Configuration -> Broker Control -> Jobs

Topology Configuration Agents

Topology Configuration Agents are used to prepare Unified Assurance to collect data from devices and systems. This collected data is stored in the Topology tables or in the Unified Assurance SVN. The Config Discovery scheduled job uses pre-configured policies to identify devices where configuration files should be collected. This application performs the same function as manual configuration of device collections in the Collections interface.

Configuration -> Broker Control -> Jobs

Configuration -> Device Configuration -> Collections

The Config Gatherer scheduled job is used gather configuration information from devices and saves the output as files. These configuration information files are then tracked in the Unified Assurance SVN repository. Differences between polls can be viewed in the interface. Simple configuration gathering can be done via SSH or Telnet.

Topology Example

In this example, the Topology Gather Network Inventory is run on the existing devices in Unified Assurance to gather the full network inventory and parse the data into vertices and edges, and topology data is viewed for a device using the Adhoc Graph Dashboard.

  1. Navigate to the Jobs UI.

    Configuration -> Broker Control -> Jobs

  2. Click to select the Topology Gather Network Inventory scheduled job, and click Start to run the scheduled job and gather your network inventory.

    • This may take a while, depending on the number of devices in your Device Catalog.
  3. Once the gather inventory job has been completed, navigate to the Dashboards navigation, expand the Adhoc folder and click to open the Adhoc Graph Dashboard.

    • This dashboard is used to view Topology information relating to custom search criteria such as devices and other vertices.

    • Dashboards will be covered in more detail in a subsequent section.

  4. Under Graph, select/enter the following:

    • Select the Device you wish to view Topology information for from the Start drop-down list.

    • For the End, select Hops and enter 3.

  5. Under View, select/enter the following:

    • View Type: ConnectsLayer2 and ConnectsLayer3

    • Node Type:

      • Active (shows availability, metric threshold violations, and events related to vertices if found)

      • Basic (shows only relationships)

  6. Click View to view the relevant Topology data.

    • The particular device you selected will be shown in the view along with other vertices that match the selection. Lines representing the edges will be drawn between the vertices.

    • The solid line in the view denotes a layer 2 connection.

    • The dashed line in the view denotes a layer 3 connection.

  7. The Topology data for a specific device can also be viewed through the Network Details dashboard by clicking on the Network icon to the right of a device name within the Devices navigation.