Everything Is Better with a GUI (even netlab)

Some people think that everything is better with Bluetooth (or maybe it’s AI these days). They’re clearly wrong; according to the ancient wisdom of product managers working for networking vendors, everything is better with a GUI.

Now imagine adding network topology visualizer and GUI-based device access with in-browser SSH to an intent-based infrastructure-as-code virtual network function labbing tool. How’s that for a Bullshit Bingo winner1?

On a more serious note, Stefano Sasso figured out the configuration file format of Graphite (Web UI/graphing tool used with containerlab) and created an output module that generates a Graphite configuration file from netlab lab topology.

BGP anycast lab displayed by Graphite

BGP anycast lab displayed by Graphite

Adding a GUI to a netlab lab is as easy as 1-2-3:

  • Install Docker on your Linux host (Graphite works with libvirt or containerlab virtualization providers).
  • Add the graphite external tool to your lab topology – it’s just two extra lines:
tools:
  graphite:

As the last step in the lab startup process, netlab up command will:

  • Create Graphite configuration files
  • Start the Graphite container
  • Print the URL to use to access the GUI.

Notes:

  • The functionality described in this blog post works with netlab release 1.5.2 or higher.
  • If you want to access the GUI from another host, replace the loopback IP address in the URL with the physical IP address of your lab host.

Revision History

2023-04-27
Rewrote the blog post to describe the new external tools functionality.

  1. This would have been an awesome April 1st post; unfortunately Stefano created this functionality a few weeks too late. ↩︎

Add comment
Sidebar