Exploring SONiC on NVIDIA Air

Testing out networking infrastructure and building working PoCs for a new environment can be tricky at best and downright dreadful at worst. You may run into…

Sophia Schuur
6 min readintermediate
--
View Original

Overview

The article explores the integration of SONiC (Software for Open Networking in the Cloud) with NVIDIA Air, highlighting its benefits for building networking infrastructure and proof of concepts (PoCs) in a cost-effective manner. It details the features of SONiC, the capabilities of NVIDIA Air, and provides insights into setting up and configuring a SONiC lab.

What You'll Learn

1

How to build a custom SONiC image tailored to your networking needs

2

Why using NVIDIA Air can simplify testing networking environments

3

How to configure routing using FRRouting in SONiC

Key Questions Answered

What is SONiC and why is it beneficial for networking?
SONiC is an open-source, Linux-based network operating system designed for cloud environments. It offers scalability, flexibility, and cost savings by eliminating vendor lock-in and allowing for extensive customization, making it ideal for data centers.
How does NVIDIA Air enhance the use of SONiC?
NVIDIA Air provides an infrastructure-as-code solution that allows users to quickly spin up virtual data center replicas, including preconfigured SONiC labs. This enables testing and experimentation without the high costs associated with physical hardware.
What features does the SONiC lab on NVIDIA Air include?
The SONiC lab on NVIDIA Air features a spine-and-leaf topology with SONiC switches and Ubuntu servers, demonstrating VLAN connectivity. It includes automated provisioning with Ansible and allows for extensive configuration and customization.
What is the role of ConfigDB in SONiC?
ConfigDB is a central configuration database in SONiC that manages device metadata, interfaces, ports, and VLAN configurations. It can be manipulated through the SONiC CLI or by editing the config_db.json file directly.

Key Statistics & Figures

SONiC version used in the lab
202305
This is the latest GA release of community SONiC at the time of publication.

Technologies & Tools

Some links below are affiliate links. We may earn a commission if you make a purchase.

Network Operating System
Sonic
Used as the primary network operating system in the lab environment.
Cloud Infrastructure
Nvidia Air
Provides an infrastructure-as-code solution for deploying and testing networking environments.
Routing Software
Frrouting
Used for implementing routing configurations in SONiC.
Automation Tool
Ansible
Used for automating the provisioning of the SONiC lab.

Key Actionable Insights

1
Utilize SONiC's open-source nature to customize your network operating system according to your specific requirements.
This flexibility allows you to deploy only the necessary components, reducing complexity and resource usage, which is particularly beneficial in large-scale environments.
2
Leverage NVIDIA Air to create and destroy virtual environments rapidly for testing purposes.
This capability enables developers to experiment freely without the financial burden of physical hardware, making it easier to iterate on networking solutions.
3
Implement Zero Touch Provisioning (ZTP) in your SONiC deployments to streamline the configuration process.
ZTP allows for automatic configuration of devices upon boot, significantly reducing manual setup time and errors in large-scale deployments.

Common Pitfalls

1
Failing to properly configure ConfigDB can lead to network misconfigurations.
Since ConfigDB is central to managing device settings, any errors in its configuration can result in significant issues in network performance and connectivity.
2
Overcomplicating the SONiC image by including unnecessary components.
This can lead to increased resource usage and complexity, undermining the benefits of using a customizable, lightweight network operating system.

Related Concepts

Open Networking
Infrastructure As Code
Network Automation