Discover community programmability with the DevNet XRd Sandbox

Date:


XRd is a containerized model of IOS-XR the place you possibly can experiment with platformunbiased options and deploy them to any on-premises or cloud infrastructure. offering all the advantages of utilizing containers in community operations.  

XRd comes with all of the programmability facets from IOS-XR, together with Telemetry and YANG fashions, which makes it excellent for builders and community engineers 

The XRd sandbox gives a superb alternative to get began with XRd and discover community programmability.  

XRd is available in two variants: XRd Management Plane and XRd vRouter. XRd Control Plane is excellent for compute use circumstances like Digital Route Reflectors (vRR) or Path Compute Aspect (PCE)vRouter is designed to ahead visitors effectively and also can deal with management airplane computations. 

The XRd Sandbox makes use of the XRd Control Plane, which is excellent for exploration and experimentation purposes.  

XRd requires particular kernel settings on the host to work correctly. The sandbox is already configured with these settings.  

There are a number of methods to deploy XRd, together with utilizing Terraform, Helm or Packer. Nonetheless, we used docker compose for the sandbox as a result of it’s easy and simple to handle.  

Topology

XRd topology

For this sandbox, we primarily based on the pattern segment-routing topology from the xrd-tools GitHub repository. We used a customized compose format referred to as XR-YAML, and the complete setup will likely be deployed in a single digital machine (VM) utilizing Docker Compose.

Modifications

A few modifications have been wanted to make the topology work. First, we updared the IP addressing for the administration community to match the out there sources in the sandbox. 

Second, we used the macvlan Docker driver so every XRd container had its personal IP deal with as an alternative of sharing the IP deal with with the host VM. 

macvlan driver config

See the XRd Sandbox GitHub repository for particulars and to discover the config information used to create the sandbox   

Deploy

The lab gives every part you want; you’ll solely have to create the compose file that will likely be utilized by Docker Compose. This file is created utilizing the xr-compose script from xrd-tools. 

Subsequent, replace the compose file (created by xr-compose) to level to the appropriate container interface that will likely be created by the macvlan driver. 

XRd commands used in the sandboxThe sandbox directions embody the entire listing of essential instructions.

Start practicing

To begin experimenting, search for the XRd sandbox on the Cisco sandfield web page.

Launch a reservation and observe the directions. Use the instructions to create and begin the topology.

The XRd sandbox is ideal to get accustomed to XRd, easy methods to work with it, and to play with native community protocols (e.g., ISIS, OSPF, BGP, MPLS, SR) or to discover programmable use circumstances with YANG, NETCONF and GNMI.

When growing the sandbox, we ran right into a problem. We all of the sudden misplaced the SSH connection to the VM when docker compose was creating the topology.

It turned out that the hyperlinks between XRd containers have been created utilizing docker bridge, which picked an IP section utilized by the sandbox infrastructure, successfully blackholing the visitors. To repair it, we needed to configure a default deal with pool to make use of an unused IP section.

After making use of this configuration, the problem was resolved.

Listed here are some sources that can assist you get began with XRd:

Extra labs can be found on the listing “~/xrd-tools/samples/xr_compose_topos” within the Sandbox.

Need to get extra content material about XRd? Attain out to me on LinkedIn. I’m pleased to listen to your concepts.

Share:

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Popular

More like this
Related