Diese Präsentation wurde erfolgreich gemeldet.
Die SlideShare-Präsentation wird heruntergeladen. ×

Next Generation Network Developer Skills

Wird geladen in …3

Hier ansehen

1 von 43 Anzeige

Weitere Verwandte Inhalte

Diashows für Sie (20)

Ähnlich wie Next Generation Network Developer Skills (20)


Aktuellste (20)


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/

Hinweis der Redaktion

  • Happy to speak on the changing landscapeOpen Source driving changeAccelerated innovationAutomation/DevOpsWhat Skills are required?From Network Engineer to Network Developer
  • ----- Meeting Notes (12/10/13 10:36) -----Where are things headed?By customer lead, I mean customers are much more involved. ONF Open Compute Customer involvement in upstream projects
  • ----- Meeting Notes (12/11/13 08:52) -----Lets not get into the SDN debate hereBusiness agilityRemoving complexity, not just moving complexity
  • 3thingsneeded for success in this new world order:Programming skillsTools of the tradeGetting your hands dirty
  • ----- Meeting Notes (12/10/13 16:29) -----1. Bash. Python. PowerShell. Javascript. Ruby.2. Switches. Routers. Your phone.3. Applications drive everything. Scale at this level.4. Get what you want vetted faster.5. Expand your skills to open up new oppurtunities
  • ----- Meeting Notes (12/10/13 16:29) -----Freenode is the most popularProject meetinsg held on IRCCommunity and collaboration begin hereWorking with people across the globe
  • ----- Meeting Notes (12/10/13 16:32) -----The most critical and long last communiation tools for Open Source projects.Everything is tracked and archived here.Can get overwhelmingFilter rules are your friend
  • ----- Meeting Notes (12/10/13 16:32) -----Think of this as a resume for your code.Pull requests are #FTW
  • Build using the “C” language
  • Virtualization on your laptopAllows you to run what you need as VMsVirtualBox, KVM, VMware Fusion, VMware Workstation----- Meeting Notes (12/10/13 16:32) -----Today's laptops can double as servers 8GB RAM SSD disks Multi-core CPUs
  • Broad lineup of committers:Vmware/Nicira, Cisco, Red Hat, Canonical, etc.
  • Security: VLAN isolation, GRE/VXLAN/LISP isolation, traffic filteringMonitoring: Netflow, sFlow, SPAN, RSPANQoS: traffic queuing and shapingAutomated Control: OpenFlow, OVSDBOverlay networks: GRE, VXLAN, LISPVirt platforms: XenServer, Xen Cloud Platform. Works with Xen, KVM, Proxmox VE, VirtualboxIaaS: OpenStack, openQRM, OpenNebula, oVirtLinux: Ubuntu, Debian, Fedora, RHEL. FreeBSD and NetBSD in developmentOpen vSwitch is built using C code
  • OpenDaylight is an open community that is building:An evolvable SDN platform capable of handling diverse use cases and approaches.Common abstractions of capabilities NorthBound people can program to.Intermediation of those capabilities to multiple SouthBound implementations.Programmable Network services.Network applications.Whatever the hell else we need to make it all work. 
  • Proposed Hydrogen Release Vehicles:Base EditionVirtualization EditionService Provider Edition
  • Written in PythonReleases:Austin (Q1 2010)Bexar (Q3 2010)Cactus (Q1 2011)Diablo (Q3 2011)Essex (Q1 2012)Folsom (Q3 2012)Grizzly (Q1 2013)Havana (Q3 2013)
  • Many many projectsGrowth has been phenomenal
  • Used by the CI/CD infraEach commit is run through Tempest testsTempest tests use devstack
  • Configuration managementDeployment at scaleDevOps
  • ----- Meeting Notes (12/10/13 16:44) -----Hopefully not into a giant mosh pit circle like these folks.
  • Infrastructure components to build with are hereApplications are what really mattersMaking application developers happy matters a ton!