Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.
TechWiseTV
Open NX-OS
Workshop
Shane Corban Product Manager
Vishal Jain Technical Architect
Parag Deshpande Technical Arch...
Open NX-OS consistent across
both ToR and ModularExtensibilityAuto
Deployment
Open Application
Integration
Programmability...
Open NX-OS: Infrastructure Layer Enhancements
OPEN PACKAGE/APPLICATION INTEGRATION
OPEN INTERFACE LINUX ARCHITECTURE
OPEN ...
Open NX-OS Package Management via YUM/RPM
LXC and Native Daemons
• Ability to third party packages in
Secure Guestshell or...
Third Party
Protocol Apps
Devops
Orchestration
Automation
Monitoring/
Analytics
Third Party/Custom
Applications
tcollector...
Kernel (cgroup, LSM)
NX-OS root file system
Native
Linux
Processes
Native
Linux
Processes
Bash Bash
Native
Linux
Processes...
Open NX-OS: Infrastructure Layer Enhancements
OPEN PACKAGE/APPLICATION INTEGRATION
OPEN INTERFACE LINUX ARCHITECTURE
OPEN ...
Open NX-OS Linux Kernel Stack Architecture
UserSpace
ASIC-1 ASIC-M
Eth1/1 Eth M/NEth1/2
Portchannel1
SubIntf
Switch Ports
...
Open NX-OS Interfaces: NX-OS Kernel Stack
Representing VRF context via Linux Name Space
UserSpace
ASIC-1 ASIC-M
Eth1/1 Eth...
Open NX-OS: Infrastructure Layer Enhancements
OPEN PACKAGE/APPLICATION INTEGRATION
OPEN INTERFACE LINUX ARCHITECTURE
OPEN ...
• Object models for NX-OS switch
processes (BGP, VLAN, etc) are
exposed to customer and are
programmed via RESTful API’s
a...
Open NX-OS NX-API REST Object Model Programmability
BGP Configuration Example
CLI POST Request (NX-API CLI) POST Request B...
Open-NXOS Useful Reference Links
Software/Document Reference Link
Nexus Programmability Guide http://www.cisco.com/c/en/us...
Prochain SlideShare
Chargement dans…5
×

TechWiseTV Open NX-OS Workshop

1 400 vues

Publié le

We hosted a live workshop on Sep 22, 2015. These are the slides requested by the audience. If you want to hear the replay AND see the live demonstration, follow the link below.
Open NX-OS: Maximize Programmability with NX-API REST
http://cs.co/9008BKHIi

Thanks for watching, Robb, @robbboyd

Helpful links:

Nexus Programmability Guide:
http://www.cisco.com/c/en/us/td/docs/switches/datacenter/nexus9000/sw/7-x/programmability/guide/b_Cisco_Nexus_9000_Series_NX-OS_Programmability_Guide_7x.html

NX API REST Object Model Specification: http://developer.cisco.com

Chef Enterprise Agent (Supermarket): http://supermarket.chef.io

Cisco Chef Cookbook GitHub: https://github.com/cisco/cisco-network-chef-cookbook

Puppet Enterprise Agent (Puppetforge): http://forge.puppetlabs.com

Cisco Puppet Module GitHub: https://github.com/cisco/cisco-network-puppet-module

Cisco Software Repository: https://devhub.cisco.com/artifactory/open-nxos

Nexus 3/9K Datacenter GitHub Repository (NX-API, Ansible, NXAPI REST Scripting Examples, etc): http://github.com/datacenter/nexus9000

Custom Application Integration SDK: http:/​/​devhub.cisco.com/​artifactory/​open-nxos

Virtual vN9K, Please contact your Cisco AM to request access currently

Publié dans : Technologie
  • Identifiez-vous pour voir les commentaires

TechWiseTV Open NX-OS Workshop

  1. 1. TechWiseTV Open NX-OS Workshop Shane Corban Product Manager Vishal Jain Technical Architect Parag Deshpande Technical Architect Nicolas Delecroix Technical Marketing Engineer
  2. 2. Open NX-OS consistent across both ToR and ModularExtensibilityAuto Deployment Open Application Integration Programmability Tool Choice DevOps Enabling POAP NXAPI Yocto SDK Standard Open Interfaces Open Interfaces Automation and Visibility Adaptable NXOS Adaptable SDK ProgrammableBootStrap and Provisioning BootStrap/ Provisioning Package and Application Management Native Application Integration PXE OPEN NXOS – Enhancements across all NX-OS Infrastructure Layers Data Models OPEN NX-OS - Extensible, Open, Programmable Server Management Tools
  3. 3. Open NX-OS: Infrastructure Layer Enhancements OPEN PACKAGE/APPLICATION INTEGRATION OPEN INTERFACE LINUX ARCHITECTURE OPEN NX-API REST (MODEL BASED) Open NX-OS supported across Nexus 3K/9K Open NXOS
  4. 4. Open NX-OS Package Management via YUM/RPM LXC and Native Daemons • Ability to third party packages in Secure Guestshell or natively in NX- OS kernel • Install all third party applications (Puppet/Chef, etc) as RPMs • Daemon managed via standard Linux interfaces • Built-in support for YUM package manager • Patching and upgrade using standard rpm/yum workflows • NX-OS processes(BGP) can be upgraded/patched via “yum update” Package as RPM C app with standard Linux constructs Open Embedded 64 bit Build Environment Cisco/Local Repository RPM local repository RPM upload YUM Install Linux Daemon Linux Kernel • Raw Socket • Netdevs • Libpcap init.d Monitoring server ASIC Build Server Target Switch
  5. 5. Third Party Protocol Apps Devops Orchestration Automation Monitoring/ Analytics Third Party/Custom Applications tcollector 64 Bit Yocto Based Linux Kernel Switch Hardware Routing/Switching Packages Kernel Route Kernel ARP Kstack/Netdevs Kernel Space User Space Base NX-OS OpenLLDP Open NX-OS Third Party Application Integration SoftwareArchitecture
  6. 6. Kernel (cgroup, LSM) NX-OS root file system Native Linux Processes Native Linux Processes Bash Bash Native Linux Processes Native Linux Processes Native Linux Processes Guest root file system Pkg-1.rpm Pkg-2.rpm Pkg-2.rpm Pkg-3.rpm Ns=globalNs=global Ns=guestshell Ns=guestshell Ns=guestshellNs=global Ns=guestshell Native Shell, RPM + Containers • Secure common distribution CentOS7 environment in which customer may install their own custom applications • Use “guestshell resize” command to restrict CPU/memory/rootfs resources available to Guest Shell Open NX-OS: Third Party Application Integration Secure Guest Shell Pkg-4.rpm
  7. 7. Open NX-OS: Infrastructure Layer Enhancements OPEN PACKAGE/APPLICATION INTEGRATION OPEN INTERFACE LINUX ARCHITECTURE OPEN NX-API REST (MODEL BASED) Open NX-OS supported across Nexus 3K/9K Open NXOS
  8. 8. Open NX-OS Linux Kernel Stack Architecture UserSpace ASIC-1 ASIC-M Eth1/1 Eth M/NEth1/2 Portchannel1 SubIntf Switch Ports LinuxKernel • Allows 3rd party apps to inject routes to hardware using Linux interfaces • Install 3rd party routing protocols built on Linux interfaces NetDevices ASIC-2 . . . Eth1/1 Route Table ARP Table Linux Networking Stack NX-OS FIB Routing Protocols Adjacency Table HardwareApps Linux Networking Apps Monitoring/Visibility Automation/Provisioning
  9. 9. Open NX-OS Interfaces: NX-OS Kernel Stack Representing VRF context via Linux Name Space UserSpace ASIC-1 ASIC-M Eth1/1 Eth M/NEth1/2 Portchannel1 SubIntf Switch Ports LinuxKernel • Forwarding information within the ‘VRF’ context can be accessed via a corresponding Linux Name Space • setns, ip-netns to change VRFs and add routes within a given namespace. NetDevices ASIC-2 . . . Eth1/1Linux Networking Stack Hardware Default Name Space Default VRF Name Space Red VRF Red Name Space Orange VRF Orange Name Space Purple VRF Purple Apps Linux Networking Apps Monitoring/Visibility Automation/Provisioning ASIC-3
  10. 10. Open NX-OS: Infrastructure Layer Enhancements OPEN PACKAGE/APPLICATION INTEGRATION OPEN INTERFACE LINUX ARCHITECTURE OPEN NX-API REST (MODEL BASED) Open NX-OS supported across Nexus 3K/9K Open NXOS
  11. 11. • Object models for NX-OS switch processes (BGP, VLAN, etc) are exposed to customer and are programmed via RESTful API’s asynchronously. • SNMP goes via DME(Object Store) or legacy path based on component and operation type (GET/SET). • All manageability agents over CLI are still supported via CLI including existing NX-API implementation • Models are rendered as configuration changes on backend processes via DME(Object Store). REST CLIENT PROCESS FLOW: 1. Client sends REST request over HTTP 2. DME validates posted/input REST objects against cisco models and returns Success/Failure to calling REST client 3. Transactions Committed on backend processes 4. Report Status(Success/Raise Fault) NX-API Python API BashTCL CLI(VSH) Transport: HTTP/HTTPS Data: JSON/XML NGINI X Server Data Management Engine Netconf Transport: SSH Data: XML Object Store SNMP Agent SNMP Rest Client Netconf Client BGP LACP ACL QoSVLAN Transaction Commit Status: Success/Raise Fault 1 2 3 4 Open NX-OS Programmability Object Model Based Automation with NX-API REST
  12. 12. Open NX-OS NX-API REST Object Model Programmability BGP Configuration Example CLI POST Request (NX-API CLI) POST Request BGP Object (NX-API REST) router bgp 11 router-id 1.1.1.1 POST http://Switch-IP/ins {'content-type':'application/json- rpc'}.json() { "jsonrpc": "2.0", "method": "cli", "params": { "cmd": "config t", "version": 1 }, "id": 1}, { "jsonrpc": "2.0", "method": "cli", "params": { "cmd": "router bgp 11", "version": 1 },"id": 1}, { "jsonrpc": "2.0", "method": "cli", "params": { "cmd": "router-id 1.1.1.1", "version": 1}, "id": 2}] POST http://Switch- IP/api/mo/sys/bgp/inst.json { "bgpInst" : { "children" : [{ "bgpDom" : { 11 "attributes" : { "name":"default", "rtrId" : "1.1.1.1" } } } ] } }
  13. 13. Open-NXOS Useful Reference Links Software/Document Reference Link Nexus Programmability Guide http://www.cisco.com/c/en/us/td/docs/switches/datacenter/nexus9000/sw/7- x/programmability/guide/b_Cisco_Nexus_9000_Series_NX- OS_Programmability_Guide_7x.html NX API REST Object Model Specification http://developer.cisco.com Chef Enterprise Agent (Supermarket) http://supermarket.chef.io Cisco Chef Cookbook GitHub https://github.com/cisco/cisco-network-chef-cookbook Puppet Enterprise Agent (Puppetforge) http://forge.puppetlabs.com Cisco Puppet Module GitHub https://github.com/cisco/cisco-network-puppet-module Cisco Software Repository https://devhub.cisco.com/artifactory/open-nxos Nexus 3/9K Datacenter GitHub Repository (NX- API, Ansible, NXAPI REST Scripting Examples, etc) http://github.com/datacenter/nexus9000 Custom Application Integration SDK http:/​/​devhub.cisco.com/​artifactory/​open-nxos Virtual vN9K Please contact your Cisco AM to request access currently

×