Cisco IOS XR Programmability - Intermediate v2



This lab provides hands-on experience with the programmability infrastructure of Cisco IOS XR. This new infrastructure allows you to manage a device with great flexibility in terms of models, encodings and transport options. In this lab, you will use XR native, IETF and OpenConfig YANG models to interact with NETCONF and Google RPC agents running on Cisco IOS XR. You will also use streaming telemetry, simple Python scripts and custom Ansible modules based on a model-driven SDK to enable advanced network programmability and closed-loop automation.




  • Scenario 1. Initial System Configuration Using NETCONF
  • Scenario 2. Interior Routing Configuration Using gRPC
  • Scenario 3. MPLS Deployment in Python Using Model-Driven SDK
  • Scenario 4. BGP Deployment in Python Using Model-Driven SDK and Telemetry
  • Scenario 5. IP Reachability Automation Using Ansible




  • Required: Laptop
  • Optional: Cisco AnyConnect®




  • Linux controller host
  • IOS XRV9k 6.3.2




Linux Host
  • Runs NETCONF and gRPC client script
  • Runs Python scripts using YANG development kit (YDK)
  • Runs Pipeline collector for streaming telemetry data
  • Runs Python scripts to consume telemetry data from Kafka data bus
  • Runs Ansible module and playbook