Explore community programmability with the DevNet XRd Sandbox

0
40
Explore community programmability with the DevNet XRd Sandbox


XRd is a containerized model of IOS-XR the place you may experiment with platformimpartial 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 elements from IOS-XR, together with Telemetry and YANG fashions, which makes it excellent for builders and community engineers 

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

XRd is available in two variants: XRd Control Plane and XRd vRouter. XRd Control Plane is excellent for compute use instances like Virtual Route Reflectors (vRR) or Path Compute Element (PCE)vRouter is designed to ahead site visitors effectively and may deal with management aircraft 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. However, we used docker compose for the sandbox as a result of it’s easy and straightforward 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 known as XR-YAML, and the complete setup might be deployed in a single digital machine (VM) utilizing Docker Compose.

Modifications

A few adjustments have been wanted to make the topology work. First, we updared the IP addressing for the administration community to match the obtainable assets in the sandbox. 

Second, we used the macvlan Docker driver so every XRd container had its personal IP handle as an alternative of sharing the IP handle 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 supplies the whole lot you want; you’ll solely must create the compose file that might be utilized by Docker Compose. This file is created utilizing the xr-compose script from xrd-tools. 

Next, replace the compose file (created by xr-compose) to level to the proper container interface that might be created by the macvlan driver. 

XRd commands used in the sandboxThe sandbox directions embrace the entire listing of crucial 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, the best way to work with it, and to play with native community protocols (e.g., ISIS, OSPF, BGP, MPLS, SR) or to discover programmable use instances with YANG, NETCONF and GNMI.

When creating the sandbox, we ran right into a problem. We all of a 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 site visitors. To repair it, we needed to configure a default handle pool to make use of an unused IP section.

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

Here are some assets that will help you get began with XRd:

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

Want to get extra content material about XRd? Reach 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