Full Training Program

Half Day Morning

David Nalley is a recovering systems administrator of 10 years and acted as a consultant for a an additional 3 years. David is a committer on the Apache CloudStack project. Within the Fedora Project, David is the maintainer of a few dozen software packages, and is a sponsor for new packagers in Fedora, and currently serving on the Fedora Project Board. David is a frequent author for development, sysadmin, and Linux magazines and is frequently found speaking at IT and F/LOSS conferences.

David Nalley is a recovering systems administrator of 10 years and acted as a consultant for a an additional 3 years. David is a committer on the Apache CloudStack project. Within the Fedora Project, David is the maintainer of a few dozen software packages, and is a sponsor for new packagers in Fedora, and currently serving on the Fedora Project Board. David is a frequent author for development, sysadmin, and Linux magazines and is frequently found speaking at IT and F/LOSS conferences.

9:00 am-12:30 pm

Riverview A

IaaS provides infrastructure as a service, allowing your customers to spin up VMs, services, and even machine images on demand. In this class, you will learn about building IaaS clouds using Apache CloudStack. We'll cover everything from initial configuration to scaling and maintaining availability. Apache CloudStack works with KVM, vSphere, and XenServer/XCP for virtualization, and also supports Amazon Web Services.

Who should attend:

Intermediate to advanced sysadmins or enterprise architects wanting to deploy a production Infrastructure as a Service cloud.

Prerequisites: Experience with virtualization platforms and deep understanding of layer two and three (L2/L3) networking is preferred but not required.

Take back to work:

What you need to deploy an IaaS cloud based on Apache CloudStack in an enterprise environment.

Half Day Afternoon

Joshua Jensen has been working with Linux for 18 years and is currently a Linux/Virtualization/Cloud Architect for EMC. He has worked in the past as the Lead Linux IT Architect for Cisco Systems, and was Red Hat's first instructor, examiner, and RHCE. At Red Hat, he wrote and maintained large parts of the Red Hat curriculum: Networking Services and Security, System Administration, Apache and Secure Web Server Administration, and the Red Hat Certified Engineer course and exam.

Joshua Jensen has been working with Linux for 18 years and is currently a Linux/Virtualization/Cloud Architect for EMC. He has worked in the past as the Lead Linux IT Architect for Cisco Systems, and was Red Hat's first instructor, examiner, and RHCE. At Red Hat, he wrote and maintained large parts of the Red Hat curriculum: Networking Services and Security, System Administration, Apache and Secure Web Server Administration, and the Red Hat Certified Engineer course and exam.

1:30 pm-5:00 pm

Riverview A

Your software development project needs a butler. Why? Your development team may be guilty of writing great code while only sporadically testing it, and pushing your code-base to production is tedious at best. Enter Continuous Integration with Jenkins. Learn how this development methodology and open source project can improve your software development process by consistently and continuously automating your software projects’ integration, testing, and deployment. I will walk you through a scenario of setting up a project using Jenkins. This course will conclude with a hands-on lab incorporating a GitHub project into an automated Jenkins Build Pipeline.

Who should attend:

DevOps administrators in need of sanity when testing and deploying software

Lab requirements: Each participant in this class will need a laptop with two virtual machines preinstalled with any Jenkins-compatible Linux distribution.

Take back to work:

Real world usage of Jenkins for better automation of testing and deployment with your team's software project.

Full Day

Salim Virji has been developing software and administering systems for 20 years. After working as an applications software engineer at several startups, he found his interest drawn to distributed file systems and cluster computing while pursuing a hobby project with friends.

At Google, he has worked on developing and deploying the company's core software building blocks. Since 2003, he has held the the position of Site Reliability Engineer, responsible for technical
infrastructure such as Bigtable, Chubby, and GFS; more recently, he has joined the team developing software infrastructure for Google Apps such as Docs and Presentations. He also collaborates with Google's in-house training programs for engineers, developing curriculum and presenting hands-on workshops to introduce engineers to Google technology and techniques.

Salim Virji has been developing software and administering systems for 20 years. After working as an applications software engineer at several startups, he found his interest drawn to distributed file systems and cluster computing while pursuing a hobby project with friends.

At Google, he has worked on developing and deploying the company's core software building blocks. Since 2003, he has held the the position of Site Reliability Engineer, responsible for technical
infrastructure such as Bigtable, Chubby, and GFS; more recently, he has joined the team developing software infrastructure for Google Apps such as Docs and Presentations. He also collaborates with Google's in-house training programs for engineers, developing curriculum and presenting hands-on workshops to introduce engineers to Google technology and techniques.

He received an A.B. in Classics from the University of Chicago.

9:00 am-5:00 pm

Riverview A

In this class, you will learn about large system design. Truly large-scale systems are still rare, and in a world of outsourcing and cloud computing, it's harder for system administrators to get the opportunity to design large systems. It's even harder to get the design right. Most organizations don't have the in-house expertise to build a large system, and outsource the detailed design to external contractors. If your organization doesn't have the expertise to design a large system, it's unlikely that it has the expertise to confirm that a proposal is fit for purpose and cost effective.

While anyone can wave their hands convincingly and come up with a rough outline of a large distributed system, those who can also fill in the details are highly prized. This class will teach you how to design software systems like Imgur and Twitter, then estimate the hardware needed to ensure you can deliver to an SLA. You will learn how requirements like queries-per-second, multi-site reliability, and data security impact the cost of implementation. You will be involved in classroom exercises in small groups, each with its own Google SRE mentor, while working out these designs.

Who should attend:

System administrators, SREs, and DevOps who have some familiarity of distributed systems, server hardware, and systems programming, especially those who would like to work with, procure, or build large distributed systems.

Take back to work:

How to design large distributed systems, how to evaluate design proposals, and how to explain such designs to third parties.

Topics include:

Design patterns for large distributed systems

Monitoring large-scale systems

Large-scale design workshop and presentations

Non-abstract design; taking a design and producing a "bill of materials"

Designing to fail; how to work around rack, networking, and datacenter failures