For the list of all supported Decision Insight downloads and releases, see the Downloads page.

Cockpit node pattern

What is the cockpit node pattern?

The cockpit node pattern enables you to setup a higher level view by aggregating information from different applications in a cockpit application.

The application nodes aggregate all relevant data for the cockpit node to represent the state of the application node in a process entity. This entity should have one rhythmic attribute that is representing the current state of the application node. Every time this attribute is computed, a message containing the application node information is sent to the cockpit node. The cockpit node receives information messages from every application node, absorbs them and provides a dashboard with every application node states. That way, you are able to monitor all your application nodes in the cockpit node.

For your implementation, you need:

  • One Decision Insight Messaging System (DIMS) cluster (see Decision Insight Messaging System product documentation). This is the recommended way to send messages between two Decision Insight applications in a secure, fast and resilient way.
  • One Decision Insight node to act as cockpit.
  • Multiple Decision Insight nodes dedicated to different functionality (application nodes - monitored applications).
  • One Data Integration triggers in each application nodes in order to detect whenever their state is updated and to send a message to the cockpit node through DIMS and one route/mapping per trigger in the cockpit node in order to save the state.

This pattern requires:

  • One server for the cockpit, see Decision Insight prerequisites.
  • Three or more servers for the Decision Insight Messaging System cluster, see Prerequisites in the Decision Insight Messaging System product documentation.
  • Multiple servers for the application nodes. One server per application node, see Prerequisites in the Decision Insight product documentation.

How to deploy a cockpit node pattern?

Deploy DIMS

DIMS nodes are used to share data between DI applications in a secure way.

In order to be resilient, you need to deploy three DIMS nodes each on a different server. Each server must have an orchestrator and a messaging server.

Setup configuration

For information about installing DIMS in your environment, see Install a Decision Insight Messaging System node in the Decision Insight Messaging System product documentation.

Application nodes

Application nodes:

  • are connected to the DIMS cluster.
  • produce any kind of data, analysis...
  • produce a process entity that represents the state of the node and its relevant data.
  • use a trigger on the process entity in order to send a message containing the relevant data to the cockpit node through a specific DIMS topic.

Connectors configuration

The application node must be able to communicate with the DIMS cluster in order to send trigger messages. For more information, see Create a connector in the Decision Insight Messaging System product documentation

Triggers configuration

The node state is given by one rythmic attribute in the process entity. This attribute represents the global state of the node and could be a classifier. Because it has a rythm, it will be computed every period. That way, triggers will fire an update on them on every period and will communicate their values and all other chosen process data to the cockpit node. See how to create a trigger.

The trigger should have the following configuration:

The entity on which the trigger is based

The process entity

Topic Each node must use a specific topic. Each topic will be the way for the cockpit node to identify from which node the status message comes.
Trigger rules

On the rythmic attribute update representing the node state (as process attribute)

Trigger query The application node state and every relevant information for the cockpit node contained in the process entity.

Cockpit node

The cockpit node:

  • is connected to the DIMS cluster.
  • listens to the multiple DIMS topic to retreive each application node's state and absorb them.
  • show a dashboard with the state of every application nodes.

Connectors configuration

The cockpit node must be able to communicate with the DIMS cluster in order to receive trigger messages, see Create a connector in the Decision Insight Messaging System product documentation

Route configuration

We use a rythmic state indicator per application node (same attribute and same rythm as the application node state attribute). Those indicators represent the state of each application nodes.

For each application node, we configure one route dedicated to read the corresponding DIMS topic (see how to receive a DIMS message).

For each message received from the DIMS topic, we absorb the state by configuring a mapping and by using the mapping in the route. The mapping will map the application node state with the rytmic state indicator corresponding to this node application. It will also map every other needed information contained in the DIMS message.

By using a rythmic attribute for the state, we ensure to have a coherent state information. If the application node is down, the cockpit node will not receive a DIMS message, and the rythmic attribute will be 'not set'. That way we can detect if the application node is down.

 Dashboard

The dashboard show the state of every application nodes and other relevant informations from the application nodes messages, see how to configure a dashboard.



Related Links