Application Centric Infrastructure (ACI) Software...

34

Transcript of Application Centric Infrastructure (ACI) Software...

Page 1: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle
Page 2: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

Application Centric Infrastructure (ACI) Software Development Lifecycle (SDLC)

Nathan Sowatskey and Akshat Sharma, Network Programming Technical Marketing Engineers

Page 3: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

© 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public

Agenda

• The Situation Today

• What Are We Doing About It?

• The SDLC in Detail

• Easing the Transition

• What Does This Do For You?

• Resources Online and at Cisco Live

3

Page 4: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

The Situation Today

Page 5: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

© 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public

Business Application

Developers –

Network Programmability

aware

Network

Programmability

Designers, Developers

and Support Engineers

Business & Service Orchestration

Workflow Engine for Compute, Network & Storage

Platform API

Infrastructure Services Orchestration Management

Custom

Routing Paths Topo

vRR/

BGP

Policy &

Identity Analytic

Open

Stack Infra.

Service

Mgmt.

Device

Mgmt

Wireless

Mgmt.

Controller API

Controller Layer

Virtual and

Physical

OpenFlow API I2RS PCEP BGP NetConf CLI, other..

Operating Systems

Application Domain - Web, RDBMS, CRM, Messaging ...

Amazon …

… … … … ...

EEM (TCL), Python & PnP

APIC-DC APIC-EM

Application Centric Infrastructure Roles and Technologies IT Operations and Service Delivery

Network Engineering and Operations

Page 6: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

© 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public

Existing technologies

• Java, C, Python, REST, Chef, Puppet, OpenStack …

Existing use cases, deployment models and processes

• Automated DC provisioning, server based systems, continuous integration …

Existing operations, developer and QA roles

• IT operations, business application and infrastructure developers, development test …

Page 7: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

© 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public

New technologies and APIs

• onePK, APIC, Controllers, NetConf/Yang, OpenFlow …

New use cases and deployment models

• Dynamic traffic engineering, integrated VLAN configuration, apps integrated with routers and switches ….

New roles and audiences

• Network operations, network programmability developers/designers/engineer …

Policy/ Orchestration Analytics

Page 8: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

© 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public

Separa

tion o

f C

oncern

s

Network is stable, performant and available to applications running over the network

Little experience of programming, automation, dynamic services or continuous integration

Constantly update with automated and dynamic service deploy, setup and tear down

Continuous integration for service delivery

Application and Services

Page 9: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

What Are Doing About It?

Page 10: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

© 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public

Network Engineering

and Operations

Combined technologies

• Java, C, Python, REST, Chef, Puppet, OpenStack, onePK, APIC, Controllers, NetConf/Yang, OpenFlow …

Combined use cases, deployment models and processes

• Automated DC provisioning, dynamic traffic engineering, integrated with routers and switches and continuous integration ….

Combined operations, developer and QA roles

• IT and network operations, business application and infrastructure developers, development test, Network Programmability Developers/Designers/Engineer …

Page 11: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

© 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public

Network Programming Software Development Lifecycle (SDLC) Best Practice + Virtualisation + Automation = Ease of use, Speed and Scale

Shared best practice

for design,

development, tooling,

test and deployment

techniques

Virtual network

tooling to design and

create high fidelity

networks for

development and test

Automated tools and

techniques to support

continuous integration

Shared Best

Practice

Virtualisation Automation

Page 12: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

The SDLC In Detail

Page 13: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

© 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public

Virtual Internet Routing Laboratory (VIRL) and VMMaestro – No CCIE Required

A multi-purpose extensible network virtualization

and simulation platform

Create highly-accurate models of real-world/future networks

Leverage ‘real’ network operating systems - build synced,

not emulated

Scale from 10’s to 100’s of virtual network and server

devices

Integrate virtual networks and appliances into physical lab

networks

Drag-and-drop network topology creation with AutoNetKit

Page 14: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

© 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public

Continuous Integration for Network Programming

Gerrit

• Manage commits and the code review cycle

• Front-end to Git

• Manages verify and merge builds with automated tests and static analysis

Git

• Distributed Source code repository

• Commit early and often

Jenkins

• Automates build and test

• Monitors Git and receives messages from Gerrit

• Uses Maven, make, scripts

VIRL and VMMaestro

• Virtual Networks

• A clone of the production environment

• Used for distinct unit tests for verify and system tests for merge

Sonarqube

• Unified dashboard for build status and history

Jira

• Issue manager integrated with lifecycle tools

Nexus

• Maven repository manager

• Distributes deliverables as they are successfully built

Page 15: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

© 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public

Eclipse

Develop with enhanced tools and

IDEs in café of choice

Develop and test against CML virtual networks on

platform of choice

Jenkins monitors Git and builds

automatically

Automated unit and system integration tests run against CML virtual

networks

Automated static analysis and test coverage reports

exported to Sonar for consolidated reporting

Built Maven artefacts deployed to Nexus and used in build

Artefacts from Nexus used in development

The same tests

Gerrit to manage Git

Git for SCM and

collaboration

Jira for managing

features and issues

15

Back end systems

Page 16: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

Easing the Transition

Page 17: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

© 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public

People Process Technology

DevOps is a change in Mindset!

Page 18: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

© 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public

Is it too soon?...or are we not seeing it yet ?

I know my

Network. But

programming is

not my forte..

I can code. But

my Networking

knowledge

limits me

I can’t let you

guys deploy

these apps on

my network!

Sub-Par Code Code with low

fidelity Lack of Trust!

Network Engineers

Developers Network Admins / Net-Ops

Page 19: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

© 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public

Can we help tie them together? – We need an enabler!

• An Easy to use, automated environment to code in

• A platform to leverage the ecosystem and refactor existing apps

• A Complete continuous integration suite to test my apps

• A simulation environment to ensure high fidelity on deployment

• Test results that can be trusted in the real world

• Packaging tools for code deployment

Page 20: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

© 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public

Introducing the DevOps VM and associated services

EEM PnP Controllers

All Network Programmability tools

and technologies under one roof

The Power of Cisco Modelling labs to model

real life networks

Continuous integration at your doorstep

Integration of Cisco’s Partner Ecosystem

Page 21: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

© 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public

Bringing it all together

Business Need

Application Development

Test Results on Simulated Environments

Deployment

Page 22: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

A sneak peak ? - Try it out the DevOps lab at the Devnet Zone at Cisco Live!

Page 23: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

What Does This Do For You?

Page 24: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

© 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public

Bringing Network Programming Closer to the Business

Capacity Networking Business Knowledge •L

evel of A

bstr

action,

featu

re s

et

•S

ophis

tication o

f Tools

and S

DK

High

Low

High

Few developers with networking

knowledge

Few network engineers with

programming knowledge

EMS/NMS centric apps

Perl/Expect, CLI

Enterprise Architects and Developers with

network programming awareness

Application Centric Infrastructure

JEE/Python/C, APIs

Wider pool of developers – DevOps,

dynamic traffic engineering

NMS and DC automation centric apps

Python/Ruby/C, APIs

Current Status

Target Goal

Busin

ess I

nte

gra

tion

Skill Set of Engineer/Developer

Page 25: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

Resources

Page 26: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

© 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public

onePK - http://www.onepkdeveloper.com

EEM - https://supportforums.cisco.com/community/netpro/network-infrastructure/eem

ONE Forums - https://developer.cisco.com/site/devnet/forums/index.gsp#L2CiscoONE

ODL - http://www.opendaylight.org/

XNC - http://software.cisco.com/download/release.html?mdfid=285963706&softwareid=285978967&release=1.0.0&relind=AVAILABLE&rellifecycle=&reltype=latest

APIC-EM - https://developer.cisco.com/site/networking/one/apic/enterprise-module/

APIC-DC

APIs - https://developer.cisco.com/site/networking/routers-switches/nexus9000/documents/

GitHub - https://github.com/datacenter/nexus9000

Cisco Developer Resources

Page 27: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

© 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public

Monday, May 19, 8:00-9:30 - BRKOPT-2102 - Software Innovations and Control Plane Evolution in the new SDN Transport Architectures - Loukas Paraschis

Monday May 19, 9:00-09:30 - DevNet Presentation - onePK: The Swiss Army Knife of Developer Tools - Nathan Sowatskey

Monday, May 19, 10:00-12:00 - BRKRST-2117 - The Hitchhiker's Guide to onePK - Shelly Cadora

Monday, May 19, 12:00-12:30 – DevNet Presentation - Enabling DevOps in an SDN World – Akshat Sharma

Monday, May 19, 13:00-15:00 - BRKSDN-1014 - Introduction to Software-Defined Networking (SDN) and Network Programmability - Jason Davis

Monday, May 19, 13:00-15::00 - BRKNMS-3021 - Advanced Cisco IOS Device Instrumentation - Joe Clarke

Cisco Live SDN and Network Programming Resources

Page 28: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

© 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public

Tuesday, May 20, 8:00-9:30 - BRKSDN-2777 - Open Network Environment (ONE) Software Development Lifecycle (SDLC) - Nathan Sowatskey

Tuesday, May 20, 12:30-14:30 - BRKRST-2051 - SDN – From Concepts To Reality - Frank Brockners

Wednesday, May 21, 8:00-17:00 - LTRNMS-3601 – Advanced Network Programming and Automation - Joe Clarke, Nathan Sowatskey, Bruno Klauser, Jason Pfeifer

Thursday, May 22, 8:00-10:00 - BRKSPG-2722-SDN deployment in ASR9000 - Joel Roberts, Robert Piasecki

Thursday, May 22, 12:30-14:00 - BRKCRS-3090 - Implementing Network Programming and Automation - Bruno Klauser

Thursday, May 22, 14:30-16::00 - BRKCDN-2303 - DevOps in Programmable Network Environment - Faisal Hasan, Azeem Suleman

Cisco Live SDN and Network Programming Resources

Page 29: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

Putting it all Together

Page 30: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

© 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public

A combined and unified development framework for DevOps over the entire IT stack

A single set of tools, techniques and technologies for all actors in the DevOps arena

Brings the best of lessons learnt in IT services and development to the (new) world of network programming

Provides a common basis for different domains to work together to benefit the business

Uplift skills and capabilities for network engineers and operators to add greater value to the IT stack

ACI SDLC - Putting it all Together

Page 31: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

Q&A

Page 32: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle

© 2014 Cisco and/or its affiliates. All rights reserved. Cisco Public

When can we have it?

The initial DevOps evaluation version will be available shortly from https://developer.cisco.com/site/networking/one/sdlc/

Contact [email protected]

How does this relate to, for example, Chef and Puppet?

All of this is about end-to-end automation. Chef and Puppet development can be automated in this framework also.

Is this Cisco only?

The VIRL technology is based on Ubuntu and OpenStack and can manage VMs in general. Other VM form factors can work in VIRL too.

Will there be a hosted version?

The Cisco DevNet Sandbox will also be providing similar capabilities to announced soon

Common Questions

Page 33: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle
Page 34: Application Centric Infrastructure (ACI) Software ...d2zmdbbm9feqrf.cloudfront.net/2014/usa/pdf/ATE-CL345.pdf · Application Centric Infrastructure (ACI) Software Development Lifecycle