q2 2015 juniper networks education and … 23, 2015 · q2 2015 juniper networks education and...
TRANSCRIPT
Welcome Thank you for joining us! Introducing today’s speakers • Lawrence Rust, Education Services Marketing Manager • Elna Samuelsen, Director, Curriculum, Certification, Infrastructure • Jasun Rutter, Sr. Manager, Curriculum Development and Certification • GUEST SPEAKER – Lalit Shinde, Senior Product Manager
Course and Certification Program Updates
Agenda
Learning Bytes Update
Programmability and Automation in Junos for SDN
What’s New
Stay Connected
Course and Certification Program Updates
Agenda
Learning Bytes Update
Programmability and Automation in Junos for SDN
What’s New
Stay Connected
New Exam: JNCDS—DC • Juniper Networks Certified Design Specialist – Data Center
• Q3 release • JNCDA is a prerequisite
• Design exam track • Part of larger certification track focused on network design
Watch http://www.juniper.net/certification for ongoing news with these credentials
Ongoing Update for JNCP Exams • JNCP exams are updated on an ongoing basis
• JNCIA up to JNCIE level • Exams are updated/refreshed on a development cycle
• Sometimes visible (ex. JNCIA-Junos .. JN0-101 -> JN0-102) • Sometimes not
• Ensures freshness of item pool • Ensures security of exams
New and Updated Courseware Q1 15 • New
• Juniper Networks Design Fundamentals (JNDF)
• Updates • Configuring and Monitoring QFabric Systems
(CMQS) • Troubleshooting QFabric Systems (TQS)
(JNCIS-QF exam to be updated in Q3 2015) • Introduction to the Junos OS (IJOS) • JNCIE-SEC Bootcamp • JNCIE-SP Bootcamp • Configuring and Monitoring Contrail (CMC)
Q2 and Q3 15 • New
• SDN Fundamentals (official name TBD) • Juniper Networks Design in the Data Center • Advanced Junos Enterprise Switching Using
ELS (AJEX-ELS)
• Updates • Junos Automation Junos Platform
Automation • Junos Service Provider Switching (JSPX) • Juniper Networks Design Fundamentals
(JNDF)
Notes: Information current as of June 2015. Course and exam information (length, availability, content, etc.) is subject to change; refer to www.juniper.net/training for the most current information.
Juniper Networks Curriculum—Automation
Notes: Information current as of June 2015. Course and exam information (length, availability, content, etc.) is subject to change; refer to www.juniper.net/training for the most current information.
Basic Junos OS experience or training such as the Introduction to Junos Operating System (IJOS) and Junos Routing Essentials (JRE) courses or JNCIA-Junos Certification
Junos Service Provider Switching (JSPX)
Junos Intermediate Routing (JIR)
Junos MPLS and VPNs (JMV)
2 days
5 days
2 days
Junos Intermediate Routing (JIR)
2 days
Data Center Switching (DCX) 2 days
Junos Enterprise Switching-Enhanced Layer 2 Software (JEX-ELS)
2 days
Junos Security (JSEC)
Junos Unified Threat Management (JUTM)
Advanced Junos Security (AJSEC)
3 days
1 day
3 days
Data Center WAN Edge
Troubleshooting Data Center Switching (TDCX)
1 day
Network Automation in the Data Center 1 day Network Automation in the WAN 1
day Network Automation on the Edge 1 day
JNCIS-SP
JNCIS-SEC
Junos Automation (JAUT) 4 days
Configuring and Monitoring Contrail (CMC)
2 days
SDN Fundamentals 1 day
Data Center Interconnect (DCI) 1 day
Platform Automation Network Automation
Introduction to the Junos Operating System (IJOS)
1 day
Networking Fundamentals 5 hours
Certification Course
Planning
Other Learning Resources JNCP Website Resources page http://www.juniper.net/us/en/training/certification/resources.html J-Net Training, Certification Career Forum http://forums.juniper.net > Training, Certification, and Career Topics Courseware: www.juniper.net/courses Labs and Learning: www.juniper.net/labsandlearning
Course and Certification Program Updates
Agenda
Learning Bytes Update
Programmability and Automation in Junos for SDN
What’s New
Stay Connected
Learning Bytes…View the Latest New Learning Bytes Advanced AppQoS Asymmetric Traffic with a Flow Based Device Automating VLAN provisioning on multiple Junos devices using Puppet for Junos Basic AppQoS Creating a Junos Sandbox with vSRX and VirtualBox Filter-Based Forwarding with a Flow Based Device High Availability Switching with SRX Series Devices Implementing BGP over IPsec Learning Byte Implementing OSPF over IPsec Learning Byte IS-IS Configuration Returning an EX Series Virtual Chassis Device to Standalone Mode Using Generated Routes
www.juniper.net/learningbytes or www.youtube.com/junipernetworks
Course and Certification Program Updates
Agenda
Learning Bytes Update
Programmability and Automation in Junos for SDN
What’s New
Stay Connected
Agenda
• Introduction • Junos Automation
• Automation Stack • Automation Tools
• Junos Programmability • Junos Extension Toolkit • Building Blocks & DIY • NETCONF & YANG • Ephemeral DB & Commit Time Improvements
• Use Cases to show Business Value Add
Automation – The Hard Part
• Not a technical problem, it is cultural
• Automation is business driven
• Intellectually difficult
• An engineer’s value is not how much they type at the keyboard
• Networks are already highly automated, if you think about it
• Nothing good is easy, nothing easy is good
Juniper Approach
CONTROL PLANE
DATA PLANE
MANAGEMENT PLANE
Standardized Interfaces
CONTROL PLANE
DATA PLANE
CONTROL PLANE
DATA PLANE
CONTROL PLANE
DATA PLANE
CONTROL PLANE
DATA PLANE
CONTROL PLANE
DATA PLANE
Juniper Automation Solving real customer technical and business problems at every level
Platform Platform Automation focuses on delivering programmatic access to individual components in the network to automate day to day activities and reduce response times..
<SLAX>
Network Network Automation aims to abstract the individual platforms, and operate as a “Network As A Service (NaaS)” model. As such, the network is treated as a single entity.
Domain Domain Automation takes the concepts of NaaS, and extends it to an entire domain, including network, compute and storage to deliver end services at a rapid pace and high scale.
Juniper Automation
Platform Platform Automation focuses on delivering programmatic access to individual components in the network to automate day to day activities and reduce response times..
<SLAX>
Data Plane (PFE) Chassis
XML-RPC
NETCONF Junoscript
SNMP RO
Junos Platform Automation Stack
PyEZ Framework
Ansible Python Scripts Salt*
RubyEZ Library
Puppet Ruby Scripts Chef
Python / SLAX
CLIRA* JSNAP
THRIFT
JET API
Junos Automation Stack
REST CLI
* In development
jVision Sensor
Data Plane (PFE) Chassis
XML-RPC
NETCONF Junoscript
SNMP RO
Junos Platform Automation Stack
PyEZ Framework
Ansible Python Scripts Salt*
RubyEZ Library
Puppet Ruby Scripts Chef
Python / SLAX
CLIRA* JSNAP
THRIFT
JET API
Junos Automation Stack
REST CLI
jVision Sensor
Junos has had automation features consistently added over the past 15+ years. This heritage of feature innovation has allowed Juniper to deliver new features by building on top of the abstraction layer below.
Data Plane (PFE) Chassis
XML-RPC
NETCONF Junoscript
SNMP RO
Junos Platform Automation Stack
PyEZ Framework
Ansible Python Scripts Salt*
RubyEZ Library
Puppet Ruby Scripts Chef
Python / SLAX
CLIRA* JSNAP
THRIFT
JET API
Junos Automation Stack
REST CLI
jVision Sensor
Data Plane (PFE) Chassis
XML-RPC
NETCONF Junoscript
SNMP RO
Junos Platform Automation Stack
PyEZ Framework
Ansible Python Scripts Salt*
RubyEZ Library
Puppet Ruby Scripts Chef
Python / SLAX
CLIRA* JSNAP
THRIFT
JET API
Junos Automation Stack
REST CLI
jVision Sensor
JSD Ephemeral DB jVision
Technology, as part of the OS, that enables higher level automation and programmability
YANG
XML-RPC
NETCONF Junoscript
SNMP RO
Junos Platform Automation Stack
PyEZ Framework
Ansible Python Scripts Salt*
RubyEZ Library
Puppet Ruby Scripts Chef
Python / SLAX
CLIRA* JSNAP
THRIFT
JET API
Junos Automation Stack
REST CLI
jVision Sensor
Data Plane (PFE) Chassis
JSD Ephemeral DB jVision YANG
Monitoring and Analytics technologies
XML-RPC
NETCONF Junoscript
SNMP RO
Junos Platform Automation Stack
PyEZ Framework
Ansible Python Scripts Salt*
RubyEZ Library
Puppet Ruby Scripts Chef
Python / SLAX
CLIRA* JSNAP
THRIFT
JET API
Junos Automation Stack
REST CLI
jVision Sensor
Data Plane (PFE) Chassis
JSD Ephemeral DB jVision YANG
Robust APIs that allow for device interaction using multiple languages
XML-RPC
NETCONF Junoscript
SNMP RO
Junos Platform Automation Stack
PyEZ Framework
Ansible Python Scripts Salt*
RubyEZ Library
Puppet Ruby Scripts Chef
Python / SLAX
CLIRA* JSNAP
THRIFT
JET API
Junos Automation Stack
REST CLI
jVision Sensor
Data Plane (PFE) Chassis
JSD Ephemeral DB jVision YANG
Standardized interfaces for device connectivity and operations
XML-RPC
NETCONF Junoscript
SNMP RO
Junos Platform Automation Stack
PyEZ Framework
Ansible Python Scripts Salt*
RubyEZ Library
Puppet Ruby Scripts Chef
Python / SLAX
CLIRA* JSNAP
THRIFT
JET API
Junos Automation Stack
REST CLI
jVision Sensor
Data Plane (PFE) Chassis
JSD Ephemeral DB jVision YANG
Junos Extension Toolkit (JET) Published APIs used by Juniper development as well as customers
XML-RPC
NETCONF Junoscript
SNMP RO
Junos Platform Automation Stack
PyEZ Framework
Ansible Python Scripts Salt*
RubyEZ Library
Puppet Ruby Scripts Chef
Python / SLAX
CLIRA* JSNAP
THRIFT
JET API
Junos Automation Stack
REST CLI
jVision Sensor
Data Plane (PFE) Chassis
JSD Ephemeral DB jVision YANG
Frameworks and libraries to abstract underlying connection and XML data for faster adoption and integration with scripts written in popular languages
XML-RPC
NETCONF Junoscript
SNMP RO
Junos Platform Automation Stack
PyEZ Framework
Ansible Python Scripts Salt*
RubyEZ Library
Puppet Ruby Scripts Chef
Python / SLAX
CLIRA* JSNAP
THRIFT
JET API
Junos Automation Stack
REST CLI
jVision Sensor
Data Plane (PFE) Chassis
JSD Ephemeral DB jVision YANG
Support for modern scripting languages with direct access to the Juniper device OS for operations and management
XML-RPC
NETCONF Junoscript
SNMP RO
Junos Platform Automation Stack
PyEZ Framework
Ansible Python Scripts Salt*
RubyEZ Library
Puppet Ruby Scripts Chef
Python / SLAX
CLIRA* JSNAP
THRIFT
JET API
Junos Automation Stack
REST CLI
jVision Sensor
Data Plane (PFE) Chassis
JSD Ephemeral DB jVision YANG
Juniper supported integrations and agents for use with DevOps frameworks. Juniper developed workflow and operational applications that use the Junos automation stack
Sim
plic
ity Flexibility
Junos Automation Stack
Data Plane (PFE) Chassis
XML-RPC
NETCONF Junoscript
SNMP RO
Junos Platform Automation Stack
PyEZ Framework
Ansible Python Scripts Salt*
RubyEZ Library
Puppet Ruby Scripts Chef
Python / SLAX
CLIRA* JSNAP
THRIFT
JET API
REST CLI
jVision Sensor
Juniper Approach
CONTROL PLANE
DATA PLANE
MANAGEMENT PLANE
Standardized Interfaces
CONTROL PLANE
DATA PLANE
CONTROL PLANE
DATA PLANE
CONTROL PLANE
DATA PLANE
CONTROL PLANE
DATA PLANE
CONTROL PLANE
DATA PLANE
Juniper Approach
CONTROL PLANE
DATA PLANE
MANAGEMENT PLANE
CONTROL PLANE
DATA PLANE
CONTROL PLANE
DATA PLANE
CONTROL PLANE
DATA PLANE
CONTROL PLANE
DATA PLANE
CONTROL PLANE
DATA PLANE
JET – Junos Extension Toolkit Ease of Use:
• Language agnostic • Simple framework APIs with extensive documentation • App development can be done on any OS (Linux, Windows, FreeBSD) • App developer can use tools of their choice (IDE, frameworks like Twisted, etc.)
JUNOS release and platform agnostic: • APIs are consistent across different platforms • APIs are de-coupled from JUNOS releases • Binary compatibility across JUNOS releases
Support for various deployment models: • APIs are consistent across the different deployment models – App on-box, App on VM, App
off-box • App developer can define their own APIs
ROADMAP*
JET APP JSD Interaction Junos Services Daemon
Application hosted on host on EVO device
JET Application
RPD DFWD DCD COSD MGD
JET Application
Kernel
JSD
Eph DB
Authenticated channel using
SSL/TLS
Thrift Thrift
Mosquitto Mosquitto
ROADMAP*
App hosted on external server App hosted on Junos device
JET App
JET API
RPD DFWD DCD COSD MGD
Junos
3rd Party Python modules
Kernel
External Server JET App
RPD DFWD DCD COSD MGD
Junos Kernel
JET API 3rd Party Python modules
1 2
App hosted on VM inside Junos device (NG-RE, QFX5100)
JET App
JET API
RPD DFWD DCD COSD MGD
Junos VM
3rd Party Python modules
Kernel
Linux VM
Linux Host
3
User has the choice to deploy the app on Junos device or deploy the app on an external server
JET: Flexible Deployment Model
ROADMAP*
REST
REST Client
Lighttpd server mod_juise
Junoscript
HTTP(S)
Rich library support for HTTP
Applications can execute RPCs over HTTP(S)
Supports XML and JSON output
HTTP Basic access authentication
Uses one Junoscript session per request
Can execute multiple RPCs in a single request
On box REST API explorer tool
All Junos Platforms 14.2 and later
ROADMAP*
Enabling Python on the box “Everything” that is possible with SLAX can be done with Python API is Python/PyEZ Part of core Junos image Will be supported on all* platforms supporting Junos release 15.2 or
later
Python On-Box
ROADMAP* * SRX is anybody’s guess at this time – most likely 16.1
PyEZ Micro-framework
• Python framework with easy learning curve
• Works with any Junos device running 11.4 or later
• Operational and Configuration Data/Management
• Generalized utilities for file-system, software-upgrade, scp
• Community supported
Raw Python – 48 lines ncclient – 19 lines
Copyright © 2015 Juniper Networks, Inc.
So why is it called “PyEZ” anyway?
Raw Python – 48 lines
All 3 scripts gather ‘show version’ info from the same device
ncclient – 19 lines
PyEZ – 7 lines (and gathers more info)
So why is it called “PyEZ” anyway?
Language Choice NETCONF libraries for those that need them
Language of API Mode of Distribution
Maturity Support URL Additional Notes
Ruby Open Source Most popular. 3200+ downloads.
Open Source Click Wins big on ease of installation, features, limited dependencies and active support.
Java via Juniper website. Will be shortly available on github.
Already being used by enterprise customers.
JTAC Click Very simple to get started. Easy on installation. Single .jar file to use/zero dependencies.
Python Open Source Based on an already popular open source client.
Open Source.
Click Favorite language of scripters.
Perl via Juniper website. Most ancient of all API’s. Needs work to ease installation
JTAC Click Installation of the API is not entirely smooth and needs further work to simplify the process.
PHP Open Source Not in a ready to use state yet.
Open Source Click Still in development stage.
* It is highly recommended to use PyEZ unless you really need direct NETCONF or other language support. Copyright © 2015 Juniper Networks, Inc.
Rapid Deployment with Automated Workbench American Multi-brand Restaurant Chains
Challenge
• Deployment of Juniper Devices across 2000+ restaurants with Aggressive Schedule • Traditional methods were error prone and time consuming • Integration with existing MS-SQL Database with standardized configuration
Solution
• Restaurant Builder Tool to automate provisioning of all Juniper Devices • Custom Web based solution that is simple, reliable and scalable
Results
• Accelerated and accurate provisioning of multiple Juniper devices for Multiple Stores Simultaneously.
• Installation Error rates < 40% with $$ savings annually
American Multi-brand Restaurant Chains
OSPF
Install Device/Role Specific Junos OS Software Image
Install Device/Role Specific Configuration File
Bootstrap DHCP / TFTP
Register Device with Inventory System
Switch EX2200
Firewall Router SRX240
Database Store Info
Web Application
Rapid Deployment with Automated Workbench
American Multi-brand Restaurant Chains
Store ID:
Switch Type:
Go!
Database Store Info
1. Input Information into Application 2. Application Selects Configuration
Template (World-Class / Type B vs. Type C)
Other: Other:
Configure Device
Restaurant Builder Tool
4. Junos O/S Version updated (if needed) 5. Configuration Applied to Device 6. Device Rebooted to store Configuration 7. Device Ready for Shipping
3. Configuration Created with correct • Model • Host Name • Mac Address • IP Address • Junos O/S Version
Rapid Deployment with Automated Workbench
Unified Edge Service Agility Tier 1 Service Provider in EMEA
Challenge
• Diverged Residential and Business Edge networks with different provisioning tools • Static provisioning of Business Subscribers – costly, error-prone and time-consuming • Multiple Touch points for provisioning single subscriber
Solution
• Converged Edge with dynamic provisioning for both residential and business • Custom JET APP to provide dynamic provisioning for business subscribers
Results
• Simplified network with single touch point for service provisioning • Simplified and converged OSS for all subscribers reducing OPEX
BNG means: -BRAS decentralization (74 900 locations) - Move of ethernet business services from LER to BNG -Dynamic provisioning (no static VLAN pre provisioning use of VLAN ranges) -Line ID (ACI) based authentication via PPPoE-IA info -single VLAN for all services - LER only for very specific or non-Eth services
ADSL2+ VDSL2
ADSL2+ VDSL2
Nx GigE
LER BRAS at 74 Locations
DSR IP/TV L3 Multicast &
Unicast (for channel change)
AGS2 AGS1
Ethernet Aggregation Network
D-Server Farm Microsoft IPTV Server
VLAN8
Fast Ethernet
Multicast
RADIUS/DHCP Server
DHCP (IP/TV) PPPoE (Internet)
GigE 10GE
VLAN7
VLAN7
ADSL2+ VDSL2
(1/10) GigE
A-Server
VPLS L2 P2P VPNs
GigE
GigE
GigE
X
X
X
X = 4 Service Creation Points
GigE
Nx GigE
major pain: all nodes in this network are statically pre-configured per subscriber
X
MPLS Core Network
D-Server Switch
N x 10GE
GigE
BRAS+DSR+AGS+LER BNG at 900 Locations
PPPoE (Internet + IPTV)
PPPoE
GigE
MPLS
LSR at 12 Locations Nx 10GigE
Tier 1 Service Provider in EMEA Unified Edge Service Agility
Unified Edge Service Agility Tier 1 Service Provider in EMEA
AAA Server
Residential customers
Business customers
MX 3D Unified Edge Router
ESSMD
Dictionary of Vendor Specific Attributes (VSAs)
Ability to introduce new differentiated services.
Fully automated service deployment work-flow.
Service instantiation templates: • Op scripts • Local JET application • Remote JET application
Generalization of dynamic interfaces and service-profiles for consumer broadband services.
Junos Automation & Programmability Key takeaways
• Automation is a part of Junos, not a “bolt on” or external API • Current IETF standards are based on Juniper invented technologies • Multiple protocols supported for integration into OSS/BSS systems • Most modern programming languages are supported • Integrations with DevOps frameworks for abstracted automation • YANG models – Native and custom • Continuous work on Junos commit model to improve commit times • Ephemeral DB for rapid, consistent configuration
Course and Certification Program Updates
Agenda
Learning Bytes Update
Programmability and Automation in Junos for SDN
What’s New
Stay Connected
Program Director – Elna Samuelsen – [email protected]
Certification Program website: www.juniper.net/certification Customer Service alias: [email protected]
@JuniperCertify Training, Certification and Career Forum
Stay Connected