ios-xr sw: partnering with elastic: an overview

13
Jose Palafox February 2016 Developing Applications for IOS-XR

Upload: cisco-devnet

Post on 14-Apr-2017

246 views

Category:

Technology


1 download

TRANSCRIPT

Jose Palafox

February 2016

Developing Applications for IOS-XR

[email protected]

@cruzfox

Business Development, Web OTT

Jose Palafox

[email protected]

TME, Web OTT

Akshat Sharma

Agenda

• IOS-XR 6.0.0

• Why host an application

• Tools for developing your own

application

IOS XR: Architecture Overview

IOS XR

IOS-XR

IOS XR

QNX

QNX

Linux

Linux

IOS-XR LxC

Routing Apps

SystemAdmin

Routing Control Plane

Syste

m A

dm

in L

xC

IOS-XR LxC

Syste

m A

dm

in

LxC

NPUs

Containerized IOS-XR

RP

Lin

e C

ard

NPU

Admin Plane Separation from XR.

64 bit Linux Kernel for Scale and Performance

Linux Containers

64-bit IOS XR.

Application Hosting

• Minimal Wind River Linux 7

Distribution

• Applications may be co-located with

XR

• Custom LXCs for any application

• Can build Custom Apps using Cisco

Development tools

Router

IOS-XR LXC

Linux Host OS

3rd Party App

AppLXC

3rd Party App

Why?

• Automation tools

• Puppet, Chef

• Monitoring tools

• Ganglia, Nagios

• Troubleshooting tools

• Iperf, Packet capture, Packet injection

• Other

• Consul, Git

Examples• http://yum.puppetlabs.com/cisco-

wrlinux/7/

• https://forge.puppetlabs.com/puppetlabs/

ciscopuppet

• https://github.com/privateip/ansible-

modules-core/tree/working/network/iosxr

What you need

• A way to build applications

• A way to integrate applications

• A way to test those interactions

Collocated or Container

Collocated

• Collocated with XR

• Simple

• Limited dependencies

Container Distro of choice

• Favorite distro

• Breadth of packages

• Resource allocation

• No file system or process

access

Native Builds

XR

• https://developer.cisco.com/site/ios-xr/

• Application Development Kit

• Wind River Linux Environment

• Extra Packages repository

NX

• https://opennxos.cisco.com/

• https://github.com/cisco/cisco-network-

node-utils

Integration Options

YANG

• https://github.com/YangMode

ls/yang/tree/master/vendor/ci

sco/xr

YANG Tooling

• https://github.com/robshakir/

pyangbind

• https://github.com/mbj4668/p

yang/

TestXRv9000

• https://developer.cisco.com/site/ios-xr/

• Repackaging to Libvirt/virtualbox

images

Nexus 9kV

[email protected] tool

Create image Import ImageProvision and

Test Topology

Storage

Xrv9000 ISO Vbox

Jobs

(in VCS)

Artifacts