Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Next Generation
Network Developer
Skills
Kyle Mestery
Principal Engineer, Office of the Cloud CTO, Cisco

S
My
background
•

Principal Engineer, Office of the
Cloud CTO
•

•

Chief OpenStack Architect

OpenStack Neutron Core Team
...
The Frontier of Networking
Existing

New

S

CLIs

S

APIs

S

Closed Source

S

Open Source

S

Vendor Lead

S

Customer ...
Components of the New
Frontier
All of This Leads Us To …

Software Defined
Networking
DevOps
DevOps Defined
Networking
People Like SDN Because

SDN promises to make networks:
1. Dynamically provisioned
2. Provide scalable capacity
3. Provide...
Arming Yourself To Explore This
New Frontier

Transformation of Network
Engineer
1. Programming skills
2. Tools
3. Getting...
From Engineer to Developer
Programming Skills

S
5 Reasons Why You Should
Learn Basic Programming
1. You’re already programming, even if you don’t know it
2. Everything ha...
It’s All About the Apps
Top 10 Languages on
github.com
Rank

Language

# of Repositories Created

1

JavaScript

264131

2

Ruby

218812

3

Java
...
What are Open Source
Networking Projects Written
In?
Project

Primary Language Written In

Open vSwitch

C

OpenDaylight

...
What Languages To Learn

S Focus on languages for the APIs you are using
S Java
S Python
S Maybe C and/or C++
Tools of the Trade

S
IRC (Internet Relay Chat)

S

Open Source projects all use
IRC

S

Recommended channels in
Open Source networking:
S #open...
Mailing Lists

S

Open Source projects all use
mailing lists for communication
S Documents things in the

archives
S Allow...
git

S

Source code management tool
of choice
S github is used to share code
S Most projects use github
S If github is not...
Wikis

S

All Open Source projects have
Wikis

S

Provide an easy way to share
information
S Warning: Information can get
...
Getting your hands dirty

S
Linux

S

The kernel of choice in the Open Source
world
S
KVM or Xen for virtualization
S
OpenStack
S
CloudStack

S

Preva...
Datacenter On Your Laptop
Open vSwitch

S

Open vSwitch is an Open Source
extensible virtual switch
S Licensed under the Apache
2.0 and GPL licenses...
Open vSwitch Specifics

S

Security

S

Overlay network building block

S

Monitoring

S

Used by many virtualization and
...
Sample Open vSwitch Commands
OpenDaylight

OpenDaylight’s mission is to
facilitate a community-led, industrysupported open source
platform, including c...
OpenDaylight Project Framework
OpenDaylight “Hydrogen” Release
OpenDaylight GUI
OpenStack

To produce the ubiquitous open
source cloud computing platform
that will meet the needs of public
and private c...
OpenStack Official Programs

S

Compute (Nova)

S

Orchestration (Heat)

S

Quality Assurance (QA)

S

Object Storage (Swi...
OpenStack CLI: Boot a VM
OpenStack CLI: List VMs
OpenStack Horizon GUI
devstack

DevStack’s mission is to provide
and maintain tools used for the
installation of the central
OpenStack services ...
devstack: local.conf example
Puppet, Chef, Ansible, Salt
Where Does This Lead Us?
Building Blocks Are Here

Applications!

Yay to applications!

Automation

DevOps at scale!

OpenDaylight
OpenStack or Clo...
References

S VirtualBox

S stackforge

S OpenStack

S devstack

S OpenDaylight

S Puppet Labs

S Open vSwitch

S Chef

S ...
References Cont.

S Brent Salisbury’s Blog:
S http://networkstatic.net/

S Scott Lowe’s Blog:
S http://blog.scottlowe.org/...
Next Generation Network Developer Skills
Next Generation Network Developer Skills
Upcoming SlideShare
Loading in …5
×

Next Generation Network Developer Skills

10,575 views

Published on

A talk I gave at the Cisco Partner DC-SEVT around what skills Network Engineers need as the world moves to SDN, DevOps, and CI/CD.

Published in: Technology
  • Login to see the comments

Next Generation Network Developer Skills

  1. 1. Next Generation Network Developer Skills Kyle Mestery Principal Engineer, Office of the Cloud CTO, Cisco S
  2. 2. My background • Principal Engineer, Office of the Cloud CTO • • Chief OpenStack Architect OpenStack Neutron Core Team Member • • • Open vSwitch VXLAN contribution Modular Layer 2 (ML2) Plugin OpenDaylight OVSDB Contributor • • OpenDaylight MechanismDriver for ML2 Open vSwitch Contributor • • • VXLAN Flow-based tunneling libvirt contributor • Open vSwitch Support • Live migration support for OVS
  3. 3. The Frontier of Networking Existing New S CLIs S APIs S Closed Source S Open Source S Vendor Lead S Customer Lead S Classic Network Appliances S Network Function Virtualization (NFV)
  4. 4. Components of the New Frontier
  5. 5. All of This Leads Us To … Software Defined Networking DevOps DevOps Defined Networking
  6. 6. People Like SDN Because SDN promises to make networks: 1. Dynamically provisioned 2. Provide scalable capacity 3. Provide abstracted HW complexity 4. Bandwidth on demand
  7. 7. Arming Yourself To Explore This New Frontier Transformation of Network Engineer 1. Programming skills 2. Tools 3. Getting your hands dirty
  8. 8. From Engineer to Developer
  9. 9. Programming Skills S
  10. 10. 5 Reasons Why You Should Learn Basic Programming 1. You’re already programming, even if you don’t know it 2. Everything has an API 3. It’s all about the applications 4. Prototypes 5. New skills, new opportunities
  11. 11. It’s All About the Apps
  12. 12. Top 10 Languages on github.com Rank Language # of Repositories Created 1 JavaScript 264131 2 Ruby 218812 3 Java 157618 4 PHP 114384 5 Python 95002 6 C++ 78327 7 C 67706 8 Objective-C 36344 9 C# 32170 10 Shell 28561 [1] As of August, 2013: http://adambard.com/blog/top-github-languages-for-2013-so-far/
  13. 13. What are Open Source Networking Projects Written In? Project Primary Language Written In Open vSwitch C OpenDaylight Java Floodlight Java Ryu Python OpenStack Python CloudStack Java OpenContrail C++
  14. 14. What Languages To Learn S Focus on languages for the APIs you are using S Java S Python S Maybe C and/or C++
  15. 15. Tools of the Trade S
  16. 16. IRC (Internet Relay Chat) S Open Source projects all use IRC S Recommended channels in Open Source networking: S #openstack-neutron S #opendaylight S #opendaylight-ovsdb S #openvswitch
  17. 17. Mailing Lists S Open Source projects all use mailing lists for communication S Documents things in the archives S Allows searching for new participants
  18. 18. git S Source code management tool of choice S github is used to share code S Most projects use github S If github is not used, the projects likely have their own git server S Get a github ID S https://github.com/
  19. 19. Wikis S All Open Source projects have Wikis S Provide an easy way to share information S Warning: Information can get stale S Warning: Humans don’t like correcting stale information S An easy way for new contributors to help is to update wikis!
  20. 20. Getting your hands dirty S
  21. 21. Linux S The kernel of choice in the Open Source world S KVM or Xen for virtualization S OpenStack S CloudStack S Prevalent in IaaS world S Amazon AWS S Rackspace S Popular Switch Operating System S Cisco NX-OS S Arista EOS S Cumulus Linux
  22. 22. Datacenter On Your Laptop
  23. 23. Open vSwitch S Open vSwitch is an Open Source extensible virtual switch S Licensed under the Apache 2.0 and GPL licenses S Supports a wide array of protocols S Netflow S sFlow S SPAN S RSPAN S CLI S LACP
  24. 24. Open vSwitch Specifics S Security S Overlay network building block S Monitoring S Used by many virtualization and IaaS platforms S QoS S Kernel module is upstream S Many Linux platforms supported S Automated Control
  25. 25. Sample Open vSwitch Commands
  26. 26. OpenDaylight OpenDaylight’s mission is to facilitate a community-led, industrysupported open source platform, including code and architecture, to accelerate adoption of Software-Defined Networking and Network Functions Virtualization.
  27. 27. OpenDaylight Project Framework
  28. 28. OpenDaylight “Hydrogen” Release
  29. 29. OpenDaylight GUI
  30. 30. OpenStack To produce the ubiquitous open source cloud computing platform that will meet the needs of public and private cloud providers regardless of size, by being simple to implement and massively scalable.
  31. 31. OpenStack Official Programs S Compute (Nova) S Orchestration (Heat) S Quality Assurance (QA) S Object Storage (Swift) S Database Service (Trove) S Deployment (TripleO) S Image Service (Glance) S Bare Metal (Ironic) S Devstack (DevStack) S Identity (Keystone) S Queue Service (Marconi) S Release cycle management S Dashboard (Horizon) S Networking (Neutron) S S Block Storage (Cinder) Telemetry (Ceilometer) S Data processing (Savanna) S Common Libraries (Oslo) S Infrastructure S Documentation
  32. 32. OpenStack CLI: Boot a VM
  33. 33. OpenStack CLI: List VMs
  34. 34. OpenStack Horizon GUI
  35. 35. devstack DevStack’s mission is to provide and maintain tools used for the installation of the central OpenStack services from source (git repository master, or specific branches) suitable for development and operational testing. It also demonstrates and documents examples of configuring and running services as well as command line client usage.
  36. 36. devstack: local.conf example
  37. 37. Puppet, Chef, Ansible, Salt
  38. 38. Where Does This Lead Us?
  39. 39. Building Blocks Are Here Applications! Yay to applications! Automation DevOps at scale! OpenDaylight OpenStack or CloudStack or Eucalyptus or oVirt Linux (Fedora, Ubuntu, Red Hat, etc.) Xen or KVM SDN for the masses! IaaS for the masses! At the heart of all of this …
  40. 40. References S VirtualBox S stackforge S OpenStack S devstack S OpenDaylight S Puppet Labs S Open vSwitch S Chef S Freenode S Ansible S Github S Saltstack
  41. 41. References Cont. S Brent Salisbury’s Blog: S http://networkstatic.net/ S Scott Lowe’s Blog: S http://blog.scottlowe.org/ S Kyle Mestery’s Blog: S http://www.siliconloons.com/

×