Containerlab openness and focus on multivendor labs were key to its success and adoption. With more than a dozen Network Operating Systems spread across several networking vendors and opensource teams, it is a tool that can answer the needs of a broad network engineers community.
Growing the number of supported NOSes is a task that can't be done by a single person, and there the community role is adamant. To support and cherish the growing containerlab community and provide better feedback and discussions platform, we launched containerlab's official Discord server where maintainers and users hang out.
Everybody is welcome to join and chat with our community members about all things containerlab!
For those who cherish IRC in their hearts, a community-led IRC channel
#containerlab is available at IRC Libera server.
In The Media#
We are always happy to showcase containerlab and demonstrate its powers. Luckily, the network engineering community has lots of events worldwide, and we participated in some. Below you will find recordings of containerlab talks in different formats and on various venues listed in reverse chronological order1.
Networking Topology As Code · 2022-04-21
A year in the making; containerlab made lots of waves in the community threading its way to engineers hearts through simple and lightweight abstractions tailored to networking labs problem space. In this podcast Maciej and Anton from The Telco podcast interviewed Roman Dodin on containerlab' current state and many more.
Packet Pushers Tech Bytes#
A short, 14 minutes long introductory talk about Containerlab. If you wanted to know what containerlab is, but all you have is 15 minutes break - go check it out.
Our very first NANOG appearance and we went full-steam there. This talk is the most comprehensive containerlab tutorial captured to that date. It starts with the basics and escalates to the advanced DC fabric deployment with HA telemetry cluster created. All driven by a single containerlab topology file.
Open Networking & Edge Summit 2021#
This 30mins screencast introduces containerlab by going through a multivendor lab example consisting of Nokia SR Linux, Arista cEOS, and GoBGP containers participating in a route reflection scenario.
The talk starts with the reasoning as to why containerlab development was warranted and what features of container-based labs we wanted to have. Then we start building the lab step by step, explaining how the containerlab topology file is structured.
Running networking labs with Docker User Experience · 2021-09-05
The first public talk around containerlab happened in the Netherlands at an in-person (sic!) networking event NLNOG 2021.
Modem Podcast s01e10#
Containerlab: Declarative network labbing · 2021-06-06
Building large-scale network labs can be tedious and error-prone — More importantly, they can be notoriously hard to spin up automatically. Containerlab is a new tool that promises to “redefine the way you run networking labs”, and I really think it hits that target. On this episode of the Modulate Demodulate podcast, Nick and Chris C. are joined by Roman Dodin, one of the brains behind Containerlab.
The power of the community is in its members. We are delighted to have containerlab users who share their experience working with the tool, unveiling new use cases, and providing a personal touch to the workflows.
This section logs the most notable blogs, streams, and and demos delivered by containerlab users worldwide.
Rapid deployment of Cilium BGP environments using Containerlab + Kind#
A clever use of KinD and containerlab to deploy a k8s cluster with a network underlay to test Cilium's BGP capabilities.
Cilium BGP tested with Containerlab#
In this video, Senior Technical Marketing Engineer Nico Vibert walks through BGP enhancements in Cilium 1.12, with the integration with GoBGP. Nico uses a spicey mix of kind and containerlab to stand up a lab that simulates a datacenter POD with Cilium-powered k8s nodes talking TOR switches and interconnected via the core layer.
Clever use of containerlab with a focus on the workload capabilities and integration with kind clusters.
Containerlab with Inmanta#
Inmanta is a network orchestration and automation platform. In these YouTube series, Inmanta's engineer explains how this platform can help you manage network infrastructure provided by Containerlab. Make sure to check subsequent videos in their channel where multiple angles of containerlab are shown.
Containerlab-based DDOS testbed#
Real-time telemetry from a 5 stage Clos fabric describes lightweight emulation of realistic data center switch topologies using Containerlab. This article extends the testbed to experiment with distributed denial of service (DDoS) detection and mitigation techniques described in Real-time DDoS mitigation using BGP RTBH and FlowSpec.
Multi-vendor EVPN VXLAN setup with Containerlab#
In this post, we deploy a multivendor EVPN L2 overlay fabric, with BGP in the underlay as well. The entire fabric deployment is automated with Ansible, and Containerlab is used to define and deploy the actual topology.
Network Simulation Tools and Containerlab#
I’ve been progressing through a series of technical books, some of which I’ve shared on other blogs. A few of them focus on BGP. BGP being so broad, I decided to create a challenge lab. Creating the challenge/troubleshooting labs has really made more concepts stick. I’m trying to use the principle of teaching someone to make the learning last. These have been incredibly fun to create and the community interaction has been amazing. One brave soul(Jeroen van Bemmel) shared his solution. I was fascinated on his solution and how he created his topology with Containerlab and net-sim tools.
Juniper vQFX and containerlab#
In this post, we look at how Containerlab can be used to quickly spin up vQFX topologies for network validation and testing. We’ll walk through the entire process - how to build docker images from vQFX images, what happens behind the scenes when bringing these containers up and how to build/verify your topology.
Multipoint Redistribution and SR Linux#
I’ve been working my way through Optimal Routing Design by Russ White, Don Slice, and Alvaro Retana. It has been a great read so far and I highly recommend it. When I work through a book I usually try and lab up any concept I can, this helps me make it stick as much as possible. Early on in the book the authors mention redistribution and possible issues that can come with doing it at more than one point in the network. So here we are reading this post. I hope you enjoy and possibly learn something along the way.
Real-time telemetry from a 5 stage Clos fabric#
As Peter wrote, sFlow is a companion to the Streaming Telemetry applications. It's UDP based transport claims to be more suitable for situations where networks are congested. In this blog Peter explains how containerlab can deploy a Clos topolgy with sFlow collector and endpoints generating traffic to see the whole machinery in action.
Network Modeling: Automating Mikrotik RouterOS CHR Containerlab images#
A blogpost showing how to build containerlab images for the Mikrotik CHR, and how you can avoid having to build them yourself using Docker.
My Journey and Experience with Containerlab#
In this blog Julio took containerlab for a spin and shares his experience with it. His lab consists of a few Arista cEOS nodes which he then provisions with Nornir, using Ansible inventory generated by containerlab.
Network Modeling: Segmented Lab access with Containerlab and ZeroTier#
When building out network labs, often multiple people will need access to the lab. The main way right now is to use something like EVE-NG or GNS3 to provide access.
There are 2 downsides to this method. The first is that your server is exposed to the internet and if your usernames/passwords aren’t strong enough, your server can become compromised. The second is that sometimes you may not want everyone to be able to add or edit to the lab topology.
The solution to this is using Containerlab and ZeroTier. This setup is great for things like testing new hires, training classes, or for providing lab access to others on a limited basis.
Building Your Own Data Center Fabric with Containerlab#
Alperen did a great job explaining how to build a DC fabric topology using containerlab. This was the first post in the series, making it an excellent intro to containerlab, especially when you follow the screencast and watch the topology buildup live.
In a subsequent post, Alperen explains how to configure the SR Linux fabric he just built.
How to consistently run a temporary VM on AWS to run Containerlab#
Create and then destroy a cloud environment ready to Containerlab with pre-loaded topology files, which just work if you use FRR and SR Linux. If you need to run Arista's cEOS, see: Getting cEOS image.
This post describes the benefits of running any temporary workload in the cloud to then focus on Containerlab, so skip to the “Network testing challenges” section if you want to get to the meat of it. More details on the labs included at Network Labs.
most recent talks appear first. ↩