Beruflich Dokumente
Kultur Dokumente
Vladimir Urayev
Sr. Sales Specialist, CoE EMEA
Automation: Its changing life around us
HOMES CARS SHOPPING
Antilock Braking
Braking Manual braking
System (1971)
Automatic
Parking Manual parking
parking (2003)
< 1900 1915 1930 1945 1960 1975 1990 2005 2016
Disruption of the automobile
Not just an incremental improvement, a disruptive change
The Self-Driving Car Impact Dont need witnesses: Cars will be the most objective witnesses
Reduce DC cooling bill by 40% 1 Engineer = 25,000 servers Helping developers sleep better
2014: Machine-learning algorithms 2011: Facebook Auto Remediation 2013: Atlas, a sophisticated home-
used to predict Power Usage (FBAR) to proactively detect and grown telemetry tool that collects
Effectiveness (PUE) of the address production problems on up to 1.2 Billion data points per
individual servers. minute
datacenters with up to 99.6%
accuracy
2016: Automated Maintenance 2016: Winston, outsources
2016: Google DeepMind AI uses Handlers to safely automate repeatable diagnostics and
historical data, telemetry & deep maintenance on multiple servers. remediation tasks. Run
neural networks to reduce Dapper to co-ordinate both automatically in response to events
Datacenter cooling bills by 40% automated and manual processes from Atlas
LARGE ENTERPRISES
Handling 10-fold traffic increase Predictive analytics for sales and service
Black Friday and Thanksgiving have a unique load Adopting Agile, DevOps and Lean principles to
profile improve banking services
Simultaneous testing of all APIs using version- Big data analytics for pricing, fraud detection,
controlled test scripts predictive sales, customer retention
Software-centric networking
Focus areas:
Design framework for uniform platform on-boarding using industry-standard initiatives
Real-time, closed-loop automation of service/network/cloud delivery
Data Collection, Analytics and Events correlation
YANG
Automation Technologies - Landscape
Supervised learning
FBAR
Unsupervised learning
DEEP MIND
Deep learning
YANG
Day 0 - Human-driven Automation
Day 0
Standards-based network interfaces and data-models
Human-driven automation
YANG
Automate network provisioning & management
Establish standard-based
network interfaces and data PyEZ
models
NETCONF
JUNOS
TELNET Protocol to install, manipulate and delete configuration
IOS
N
E
SSH Uses XML-based data encoding for configuration data and
IOS XR T
C protocol messages
NexusOS O
XML
EOS
N NETCONF protocol operations over a simple RPC layer
F
VDX SNMP
Programmable: Python libraries (ncclient), Juniper PyEZ
Device Device
data model connectivity Based on RFC Standards (RFC 4741, 4742, 6241, 6242)
Juniper NETCONF is the IETF standard for managing devices and is derived from JUNOScript API (2001)
support Supported on all Juniper platforms, pre-JUNOS 4.0
Standards-based Network interfaces
Uniform, vendor-neutral approach to access and configure devices
YANG
JUNOS
TELNET Data model language for the Network Configuration
IOS
N Protocol (NETCONF)
E
Y SSH
IOS XR T
A
C Human readable, Supports multiple encoding formats,
N
NexusOS including XML and JSON
O
XML
G
EOS
N
F Transport over NETCONF over SSH and recently also
VDX SNMP
over gRPC
Device Device
data model connectivity Based on RFC standards (RFC 6020)
YANG is the industry-standard data modeling language and is based of Junipers Data Definition Language (DDL, 2001)
Juniper
support Active IETF participation to define standard YANG modules, Support for custom YANG modules
Supported on MX/EX/M/PTX/T-series platforms, JUNOS 14.2 onwards
Standards-based Network interfaces
Uniform, vendor-neutral approach to access and configure devices
OPENCONFIG
JUNOS
O N
TELNET Vendor-neutral, model-driven network
P E
E
IOS
T management
N Y SSH
C
IOS XR
C A O
O N
NexusOS N Common Data Models written in YANG
N G XML
F
FEOS
I
gRPC
SNMP
Streaming Telemetry
GVDX
ANSIBLE
junos_command
Routers Agent-less approach, Easy to deploy
Play
books junos_config
junos_facts Switches
Uses YAML playbooks to define automation
tasks
Module junos_netconf
Library
junos_package Firewalls Works by pushing Ansible modules to devices
Ansible framework
with Supports workflow engine
Juniper modules
PyEZ
Configuration changes
resources Routers Automation micro-framework for JUNOS devices
snippets
JSNAPy
Pre snapshot
JSNAPy
Snap-Check OUTPUT JUNOS Snapshot Administrator in Python
Post snapshot
Netconf
Compare pre & post operation outputs
Juniper proprietary
Juniper
support Supported on all Juniper platforms, JUNOS 16.1 onwards
https://github.com/Juniper/jsnapy
Human-driven Automation @ Juniper
Off-Box
OPENCONFIG
Ansible Puppet Chef JSNAPy CLIRA
YANG
On-Box
Day 1
Gathering Network Telemetry
Event-driven automation
JVision
Juniper
support Supported on Juniper MX and PTX platforms JUNOS 15.1F3 onwards
Rule-based actions on network events
If-This-Then-That (IFTTT) model
Salt Stack
Configuration management system, capable of
maintaining remote nodes in defined states
Uses a pub/sub model to publish events from master or
SALT Proxy modules agent
Rule-based actions can be built to react to these events
Request
Response
Juniper
support Supported on all Juniper MX, PTX, QFX platforms, JUNOS 11.4 onwards
Rule-based actions on network events
If-This-Then-That (IFTTT) model
Juniper
support Supported on all Juniper platforms except ACX & SRX, JUNOS 16.1 onwards
Event-driven Automation @ Juniper
Off-Box
OPENCONFIG
Python Ruby
Ansible SALT Puppet Chef JSNAPy CLIRA
Scripts Scripts
YANG
On-Box
JET
PyEZ Framework RubyEZ Library Python / SLAX
API
OPENCONFIG
Python Ruby
Ansible SALT Puppet Chef JSNAPy CLIRA
Scripts Scripts
YANG
On-Box
JET
Simplicity
Flexibility
RubyEZ Library
API
Juniper Extension
Config Groups Netconf Toolkits JSON output
Toolkit
format
One JUNOS Config & Cmd
API Driven Access Control Commit Batch Python
Chef
On-Box
Service Plane
Puppet RESTful API IETF YANG
APIs
Models
JUNOS
CLI Ansible
Control Plane APIs Ruby Ez Custom YANG
Junos Operation
Models
YANG Model
NETCONF/Junos
XML APIs Structured Syslog PyEZ OpenConfig
Junos Config
Models
YANG Model
Network Automation: Leading the pack
Third-party perspective on platform-vendor capabilities for Network Automation
1 On-device APIs
to read / write 2 Structured
operational 3 Structured device
configuration 4 Atomic
configuration
configuration and data for easy data for easy changes to
operational data programmatic programmatic avoid partial
analysis analysis updates
Juniper Networks: PASS Juniper Networks: PASS Juniper Networks: PASS Juniper Networks: PASS
5 Configuration
rollback to 6 Full configuration
replace that 7 Configuration
difference 8 Industry
standard data
minimize risk makes templates analysis to models for
easy to use simplify manual configurations
approvals
Juniper Networks: PASS Juniper Networks: PASS Juniper Networks: PASS Juniper Networks: PASS
Day N
Continuous Integration
Application 1
Release Management
Application 2 Or
Application as Code
Application 3
Config
Configuration Management
Middleware
Or
OS
Infrastructure as Code
BARE METAL
Infrastructure as code:
Build the same lifecycle as software
Develop > Version control > Testing > Continuous Integration > Continuous Deployment
EVPN
SPINE SPINE SPINE SPINE VXLAN
OPENCLOS
WAN
Infrastructure
https://github.com/Juniper/OpenClos
Infrastructure as Code: Extend it into the network
Seamless deployment: Datacenter, Telco cloud and WAN infrastructure
WAN Infrastructure
Playbooks
Developed Use-Cases: Data Center, Campus, Edge
Playbooks developed and improved on all new projects
Includes capture of best practices
Network Implementation & Testing Playbooks
Playbooks represent our Intellectual Property
Automation (NITA) Framework
Industrys most
Human-driven Thats
Lead the you!
change, Build anExcellence
Agile-DevOps
comprehensive & mature Empower the change environmentin
Automation Stack agents execution
Event-driven Follow the process, no
(we
Bring the are...
organization exceptions
.your extended
on-board, team)
teach others
Machine-driven how to do it Leverage and give back
OpenLab
to the community
Encourage failure,
Ensure learnings
Thank you