DENOG17

Mathis Bramkamp


Beitrag

09.11
11:00
300min
Containerlab: A guide to building your own virtual datacenter and monitoring it
Mathis Bramkamp, Gordon Gidófalvy

This beginner-level workshop aims to teach participants how to use containerlab as a network labbing and testing tool, and showcases both simple and complex network infrastructures that can be modelled with it. During the workshop, participants will build a simple virtual EVPN-VXLAN datacenter network and set up network telemetry collection using open-source tools. As a closing task, we will show of how a Kubernetes-based network orchestration and telemetry collection system works with the same topology that the participants have put together.

This hand-on workshop will cover:

1. Creating containerlab topologies, from CLI to GUI
You'll learn how to install and use containerlab, and how a containerlab topology file looks like. We present how containerlab works, the commands containerlab uses, the topology syntax, and also showcase some recent additions and changes made to containerlab in 2025. At the end of this section, you will have a ready-to use containerlab topology serving as a baseline for the next sections.

For veteran containerlab users, we provide a prepared topology that allows you to skip to the next section.

2. Sending and observing traffic in your virtual datacenter
In order to collect meaningful telemetry data, we should have some client traffic going across our topology. Hence, clients are added to the topology and test traffic is sent between the nodes. As part of this section, we also configure Edgeshark to allow us to perform remote packet captures from the containerlab host, and learn how to use the VS Code extension to capture live traffic and simulate link impairments.

3. Setting up a modern open-source telemetry stack
Having a virtual network is one thing, but most networks come with supporting infrastructure. We can leverage the Linux container ecosystem to easily add components of a network telemetry stack to our containerlab topology, which allows us to collect, store and visualize telemetry data from the network elements. We use gNMIc, Prometheus and Grafana to create a streaming telemetry dashboard that allows to monitor our datacenter.

4. Giving a Kubernetes-based network automation and telemetry solution a spin
Kubernetes is the de-facto industry standard container orchestration system, used worldwide from small scale to hyperscale environments. This robust system is not only useful for container orchestration, but for network management and orchestration as well, as we demonstrate this during this section.

You will use a Kubernetes-based network orchestrator to manage the configuration of the virtual datacenter and to collect telemetry from it. This section requires no prior Kubernetes experience, the whole interaction can be done through a UI or API.

Workshop 2