Tuesday, June 2, 2015

Tutorial: NetOps Coding 101

Tutorial: NetOps Coding 101
"David Swafford is a Network Engineer on Facebook's Production Engineering team. Having coming to FB a few years back as traditional network engineer, he quickly shifted focus to the software side after realizing that there simply wasn't enough time in the day to do things the traditional way. That shift has paid off well for FB as the entire network team shifted in the same manner and now we focus on much more interesting problems together. When nerding out the most, he loves to look deep into the things that make networking and large systems tick. Topics like routing protocols, TCP, and Linux fall into his favorite bedroom reading. Outside of all this, he loves to to cook any and everything under the theme of Italian-American following in the footsteps of his favorite chef Scott Conant. He also loves being active with his dog Cocoa. Best reached using daswafford@gmail.com, you can also find him regularly at the SF Python Meet-ups (www.meetup.com/sfpython/). Any and all levels are welcome!
Abstract: Note: this is a single 3-hour session spanning two back-to-back tutorial slots. No coding / Python experience needed or assumed.

Do you find yourself wanting to write a robot but not quite sure where to start? Ever find yourself typing the same set of commands on the CLI all day long? If so, this is the class for you!

In this session, we'll focus on scripting in Python as a way to tackle a few common problems faced by all of us in the network world -- issues that typically steal your attention, but don't have to anymore. We'll take a practical approach to automating the humans and give you the foundation to go out and build your own version of Facebook's FBAR (https://www.facebook.com/notes/facebook-engineering/making-facebook-self-healing/10150275248698920).

This session will be targeted to the scripting n00b -- assuming no prior coding or Python knowledge. While we won't have time to cover a proper "Intro to Python", relevant syntax will be explained as we walk through the session and you'll be armed with the knowledge to go out and build!

One tip! We will be working from a virtual machine of Ubuntu Desktop throughout the session. A copy will be distributed on USB sticks, but if you would prefer a direct link, please download DEVBOX01.zip from https://drive.google.com/folderview?id=0BweIzzj21fzEfllZbnJOQXoxbmIyeHJjS2VZWFY3ajBsMEZXZFBlTVhTTTFnQjJuWnhTM0k. This VM was built using Virtual Box and will open natively, but has also been tested / confirmed to work under VMware. VirtualBox is a free download available from https://www.virtualbox.org/wiki/Downloads"
Tutorial materials:
https://drive.google.com/folderview?id=0BweIzzj21fzEfllZbnJOQXoxbmIyeHJjS2VZWFY3ajBsMEZXZFBlTVhTTTFnQjJuWnhTM0k.

Notes:
Excellent intro to Python tutorial organized by the Facebook engineer who made this presentation on Monday

Tutorial provides a copy of VirtualBox and a Linux VM pre-loaded with iPython IDE. Next, the tutorial steps through the process of developing Python regex library for parsing syslog files, and then taking action on them. This is a minimal/intro version of what they do at Facebook to help run their network: https://www.facebook.com/notes/facebook-engineering/making-facebook-self-healing/10150275248698920

3 comments:

  1. I believe material from Google Drive has been removed now. Can I get it ?

    ReplyDelete
  2. This comment has been removed by the author.

    ReplyDelete
  3. This worked for me.

    https://drive.google.com/folderview?id=0BweIzzj21fzEfllZbnJOQXoxbmIyeHJjS2VZWFY3ajBsMEZXZFBlTVhTTTFnQjJuWnhTM0k

    ReplyDelete