You are here
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.
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.
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.
What you need to deploy an IaaS cloud based on Apache CloudStack in an enterprise environment.
- Deploying Apache CloudStack
- Next-generation network topologies, including SDN
- Scaling storage without becoming indentured to SAN vendors
- Making CloudStack scale to tens of thousands of physical nodes
- Maintaining availability in a "failure-is-assured" 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.
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.
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.
Real world usage of Jenkins for better automation of testing and deployment with your team's software project.
- Continuous integration concepts and best practices
- Jenkins concepts and configuration
- Jobs, job history, and build artifacts
- SCM integration and job triggering
- Jenkins cluster farming: multi-node management made easy
- Authentication with Active Directory, LDAP, and role-based authorization
- Jenkins plugins and third-party integration
- Distributed builds for heterogeneous architectures
- Build/test/deploy pipelines
- Hands-on lab incorporating a GitHub project into an automated Build Pipeline
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.
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.
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.
How to design large distributed systems, how to evaluate design proposals, and how to explain such designs to third parties.
- 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