Automation Evolution with Junos

Post on 08-Aug-2015

115 views 7 download

Tags:

transcript

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Executive Intro Slide

AUTOMATION EVOLUTION WITH JUNOS

Uwe Richter JUNIPER NETWORKS UWE@JUNIPER.NET

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Blank Slide Title and Content

1-Line

AGENDA AUTOMATION OVERVIEW

JUNIPER AUTOMATION OFFERINGS

USE CASES

SUMMARY

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Title and Bullets

Nodal Automation

( Puppet, Chef )

Ad-Hoc Scripting

( Bash, Perl )

IT Workflow Orchestration

Business Workflow

Orchestration

Manual Vendor CLI Proprietary Product skills

IT

DIFFERENT POINTS OF VIEW Rapid Application Delivery

Networking

Discrete blocks with no business alignment

Continuity Agility

Application Velocity

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Title and Bullets

THE AUTOMATION CONTINUUM

Old Way

Production Collect Configure Build Physical Install

New Way

Production Collect Configure Build Physical Install

Hours/Days (manual)

Minutes (automated)

BENEFITS •  Minimum networking skills required •  Reduced OpEx •  Consistent, repeatable and efficient •  Rapid application delivery

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Title and Bullets

Control Analytics Configuration

CONTRAIL: NETWORK ORCHESTRATION, AUTOMATION

OSS/BSS

CLOUD SERVICES, ANALYTICS

API/SDK (VIRTUALIZED, PHYSICAL) ORCHESTRATION/ OSS

Applications

SDN

•  Abstraction of the Network Layer to address it as a whole as opposed to discrete parts

Orchestration

•  Domain-wide ability to control resources in combination across various systems

Automation

•  Programmatic access to data center resource for consistency, repeatability, and efficiency

APPROACH COMPARISON Automation, Orchestration and SDN

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Big Concept Slide

JUNIPER OFFERINGS

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Blank Slide Title and Content

1-Line

JUNOS AUTOMATION STACK Tool built into Junos that enables automation

Chef

Junos

Data Plane (PFE) Chassis

XML

Netconf

PythonEZ Framework RubyEZ Library

Puppet Ansible Python Scripts

Ruby Scripts

Junoscript

SNMP RO

CLI

Junos Platform Automation Stack

15+ years of automation history Open architecture Three key features at the platform layer:

§  XML §  Junos Script and Netconf §  Junos EZ

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Blank Slide Title and Content

1-Line

NETWORK AUTOMATION

The Build phase centers around the initial design and installation of a network component

The Configure phase covers methods to deploy on-demand configuration and software changes to the platform

The Collection phase deals with automating the process of monitoring operational state of the platform and reacting on state conditions

Build

Configure Collect

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Title and Bullets

AUTOMATION TOOLKIT: BUILD

Feature Description

Zero Touch Provisioning (ZTP)

•  Out-of-the-box configuration and software deployment •  Faster deployment

•  Multi-node orchestration awareness •  Agentless •  Vendor agnostic

Configure Collect Build

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Blank Slide Title and Content

2-Line

Flexible scripting option for custom provisioning

Switch successfully provisioned

Switch is racked and stacked, sends a DHCP request on

boot

Configuration and image information loaded on DHCP

server

EX & QFX Series

Switches

DHCP Server responds with image and configuration

DHCP Server

ü ü ü ü

BUILD: ZERO TOUCH PROVISIONING

• Minimal skill required • Consistent deployment • Reduced data center build

time • Reduced configuration

errors

Load different images based on location

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Blank Slide Title and Content

1-Line

BUILD: ANSIBLE

Python API

Ansible Transports

Plug-ins

Playbook Files

Junos_get_facts

Junos_install_os Junos_reboot

Junos_install_config

Junos_shutdown

Module Library

Security Routing Switching

NETCONF

SSH

Telnet/Console

•  Agentless and simple approach •  Coding skills not required •  Work flow engine •  One tool for network/compute/storage

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Title and Bullets

AUTOMATION TOOLKIT: CONFIGURE

Configure Collect Build

Tool Description Platform that can define and enforce the state of the infrastructure

Platform can transform complex infrastructure into code

Simple automation platform that brings multi-node orchestration awareness

Python EZ “Micro-framework" to remotely manage or automate Junos OS devices

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Title and Bullets

Ruby Interpreter

EX Series | QFX Series | MX Series

Puppet "netdev" module

NETCONF (FreeBSD)

NETCONF "gem" Puppet Agent (client)

Puppet Master (server)

"netdev"

jpuppet package

CONFIGURE: PUPPET

Puppet module stored on the Puppet master Puppet Agent downloads module to switch

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Title and Bullets

Ruby Interpreter

EX Series | QFX Series | MX Series

Chef "netdev" module

NETCONF (FreeBSD)

NETCONF "gem" Chef Client

Chef server

"netdev"

jchef package

CONFIGURE: CHEF

“netdev” module stored on the Chef server. Chef client downloads module to switch

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Title and Bullets

CONFIGURE: PYTHON

Build Simple to Complex Applications

IT Frameworks Python Shell Python Script Custom Applications

open-source – Maintained by Community NETCONF Client (NCCLIENT)

NETCONF TRANSPORT ONLY VENDOR AGNOSTIC NO ABSTRACTIONS

JUNOS SPECIFIC ABSTRACTION LAYER MICRO-FRAMEWORK

Junos Python EZ (JunosPyEZ) open-source – Maintained by Juniper

"snippets" (no variables)

"templates" (merge variables) Resources

Configuration Changes

Tables

Operational State

Views

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Title and Bullets

AUTOMATION TOOLKIT: COLLECT

Configure Collect Build

Tool Description Netconf / DMI •  Standard method for executing RPCs across a network

•  Junos exposes all DMI functions via Netconf to remote hosts

Junos Scripts

•  Built into the Junos OS •  Powerful and flexible onboard toolset •  Available on all Junos platforms

PythonEZ •  “Micro-framework" to remotely manage or automate Junos OS devices •  Collect operational states as native Python Operational Data

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Title and Bullets

XML

NETCONF XML PROTOCOL (RFC4741)

Management System

Automate config changes, remote invocation of operational commands, collection of logs

NETCONF client libraries exist for a number of programming languages such as Java, Perl, Ruby, Python, and even SLAX !

Security Routing Switching

COLLECT: NETCONF/DMI

•  Secure and connection oriented with SSHv2 as transport •  Structured and transaction-based with XML as RPC request / response •  User-class privilege aware

Secure TCP/IP connections via

SSHv2 (RFC4742)

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Title and Bullets

•  Create custom commands

•  Diagnose network problems

•  Controlled configuration change

Operation Script

•  Automate event responses

•  Correlate events

Event Script

•  Assure compliance to business rules network/security policies

Commit Configuration Script

COLLECT: JUNOS SCRIPTS

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Blank Slide Title and Content

2-Line

COLLECT: JUNOS SCRIPTS Each script type uses XML in its own unique way

Junos Infrastructure

Output XML

instructions on what to

display

Input Blank XML

document

Op Script

Event Script

Output XML

instructions on what to

display (if anything)

Input XML

event description

Commit Script

Output XML

instructions on actions

to take (make changes, issue warnings,

errors, etc.) Input XML

Junos configuration

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Title and Bullets

JUNOS SPECIFIC ABSTRACTION LAYER MICRO-FRAMEWORK

Junos Python EZ (JunosPyEZ)

COLLECT: PYTHON

Build Simple to Complex Applications

IT Frameworks Python Shell Python Script Custom Applications

open-source – Maintained by Community NETCONF Client (NCCLIENT)

NETCONF TRANSPORT ONLY VENDOR AGNOSTIC NO ABSTRACTIONS

open-source – Maintained by Juniper

"snippets" (no variables)

"templates" (merge variables) Resources

Configuration Changes

Tables

Operational State

Views

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Title and Bullets

ENHANCED AUTOMATION SW ARCHITECTURE

Hardware

Operating System

App App App

Single Vendor Blob

Hardware

Operating System

App App App

Best of Breed Ecosystem

Python & Libraries

Ruby & Libraries

Puppet Agent

Chef Client Layer 3 ZTP

Disabled VeriExec

Standard Junos image, with the following changes:

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Big Concept Slide

USE CASES

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Blank Slide Title and Content

1-Line

USE CASES – ENTERPRISE IT

BENEFITS •  Minimal skill required by onsite deployment team •  Ensure consistent deployment in line with company policies

•  Reduces data center build-out from days to minutes

Configure Collect Build

NEEDS •  Large Scale •  Minimal Interaction •  Minimal Skills

ZTP + Ansible Server

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Blank Slide Title and Content

1-Line

USE CASES – ENTERPRISE IT

BENEFITS

Network Director

ZTP + Ansible Server

Web Server Database

Juniper Firewall

New Web Server

•  Network Director handles element management and Network as a Service abstraction •  Network Director ensures consistent service deployment with minimal configuration by operations staff

•  Network Director Data Center Visualization and Analytics Data ensures up-to-date data is available

Configure Collect Build

NEEDS •  Consistent service •  Growing new service •  Abstraction

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Blank Slide Title and Content

1-Line

USE CASES – ENTERPRISE IT

BENEFITS

Network Director

ZTP + Ansible Server

Ops User

Web Server Database

Juniper Firewall

New Web Server

Alert / Report

•  Operational workflow automation allows operations staff to schedule tasks •  Create reports based on “Out of Profile” events

•  Automate “Remediation Actions” based on report data to improve network availability and reduce MTTR

Configure Collect Build

NEEDS •  Monitor •  Report •  Remediate

Slide Type Juniper Networks Large Venue Template / 16x9 / V6 Title and Bullets

USE CASE – CLOUD AUTOMATION LIFECYCLE

Boostraping

1 Install & Config

2 Monitoring &

Alarming

3 Repairing

4 Scaling

5

Build

1 Config

2 Collect

3

ZTP

Ansible

Chef

Puppet

Ansible

PythonEZ Junos Script

PythonEZ

Netconf / DMI

Chef

Puppet

Ansible

SaltStack

Nagios

LogStach

Riemann

Graphite

Zabbix

Collectd

AWS CloudFormation

CloudFoundry

Cloudify

Fabric

Heat

Juju

Network Cycle

App Cycle

SNMP

27 Copyright © 2013 Juniper Networks, Inc. www.juniper.net

THANK YOU....