**Cumulus Linux** is a Linux-based network operating system designed to run on white-box switches, bringing Linux userspace and open source tooling to physical switching hardware. Originally fully open-source, Cumulus was acquired by NVIDIA in 2020 — now more commercial but still widely deployed.
---
### First Principle: A network switch is just a Linux computer with fast packet-forwarding ASICs. Treat it like one.
Cumulus was the first major NOS to put a full Linux userspace on a switch — meaning operators could use `apt`, `systemd`, [[Ansible]], and standard Linux tooling to configure and manage switches. This dramatically lowered the barrier for software engineers to work on network infrastructure.
---
### Key Considerations
- **NCLU/NVUE**: Cumulus provides a simplified CLI (NCLU, more recently NVUE) on top of standard Linux networking. Experienced users can also configure directly via `ifupdown2` and Linux networking.
- **[[FRRouting (FRR)]] Native**: Cumulus ships FRR as its routing engine. BGP Unnumbered — Cumulus's signature feature — lets you build a full BGP fabric without IP address management on each link.
- **[[Ansible]] Integration**: Cumulus maintains Ansible modules and roles for automated configuration. The Cldemo reference topology provides a complete Ansible-automated reference fabric.
- **vs [[SONiC]]**: SONiC is more actively developed today and has broader hyperscaler adoption. Cumulus was the pioneer that proved the model.
- **NVIDIA NetQ**: NVIDIA's telemetry tool for Cumulus networks — provides fabric-wide visibility but introduces vendor dependency.
---
### How It Fits
```
White-box switching hardware
→ Cumulus Linux (NOS, Linux userspace)
→ [[FRRouting (FRR)]] (BGP/OSPF routing)
→ [[Ansible]] (automated config management)
```
[[SONiC]] | [[FRRouting (FRR)]] | [[Ansible]] | [[Open Source Hyperscaler MoC]]