The attached screenshot is what I want it to look like. Very simple, just nodes with connected lines.
I am trying to build a network topology map using Juniper routers as the nodes. I am using SNMP exporter and Prometheus successfully and would like to continue using these tools if possible. I want to show the connection of the routers to each other with the “show interfaces description” command output.
For example,
Interface------------Admin—Link------Description
ge-0/0/0-------------UP-------UP-------Connection to Router1
ge-0/0/1-------------UP-------DOWN–Connection to Router2
ge-0/0/2-------------DOWN–DOWN–Connection to Router3
I want to have each node connected to each other with a line that represents the Admin/Link status as shown above. So, the node itself would just be a circle or a .png router image. Then, the connections (lines) would represnet the UP status of the Admin/Link state.
How are you trying to achieve it?
I currently have Prometheus and Loki as a data source. Getting any other data sources is quite time-consuming and the approval process is long-winded.
What happened?
I cannot figure out how Node Graph, or Geomap want their data. These are the tools I have found in my research that seem suited for my problem.
What did you expect to happen?
A real-time network topology diagram that shows the connections (Admin/Link states of connections) between different nodes (routers)
Can you copy/paste the configuration(s) that you are having problems with?
No, this is a closed network.
Did you receive any errors in the Grafana UI or in related logs? If so, please tell us exactly what they were.
No, I have researched online but not found any concrete information about how to do this. The documentation is unclear with network devices.
Did you follow any online instructions? If so, what is the URL?
Interface------------Admin—Link------Description
ge-0/0/0-------------UP-------UP-------Connection to Router1
ge-0/0/1-------------UP-------DOWN–Connection to Router2
ge-0/0/2-------------DOWN–DOWN–Connection to Router3
*I have been reading through the documentation below, but struggling to understand how can I take output from the CLI in a putty session of a Juniper device and export it to CSV with a format that Node Graph likes. * Node graph | Grafana documentation
The output of the command I would like to build a node graph is below. To clarify I want to build a node graph using the output of the command “show interfaces descriptions”. As you can see, there are 4 columns of data: Interface, Admin, Link, and Description. The Node CSV can just have the device itself. But, the Edge CSV I need to have the Admin & Link states so I can show when a connection goes Down.
Side question: Is there a way to export the data from the Juniper automatically or would I have to manually create my own CSV files in the format to get this to work?
Thank you for your reply yosiasz. I suppose I am complicating things. It is perhaps my misunderstanding or lapse in fully understanding Node Graph. I want to dynamically track the edge changes though from 1 device to another. In your example, if the connection from router1 to router2 loses connection I want that to show in the Node graph is this possible? In your example, as I’ve understood other similar examples is the CSV is static data, so it doesn’t track dynamic changes? Is this correct?
Is it possible to use Prometheus as a data source to ingest data? Or would I have to build my own CSV’s? Would another tool/plugin be better for this need within Grafana?