Linux is the dominant operating system in data centers and the cloud. Its robust networking and IO stacks can support high volume transaction processing. Linux has a rich set of resource management, monitoring and tracing capabilities. Well-tuned Linux systems can deliver low latency transactions and high throughput computing, even on commodity servers. This course introduces common methodologies for hosting workloads on Linux in the cloud and in data centers, including workload characterization, system profiling, performance management and benchmarking. The course is ideal for system administrators and solution integrators who want to learn the fundamentals of performance measurement, debugging and optimization methods used in these environments.
The course begins with measurement and tuning concepts. It reviews how the components of Linux kernel (scheduler, network and IO stacks) and application API (with asynchronous and multi-threaded programming) interact and work together seamlessly as scalable solutions. You will learn how to identify resource contention issues resulting in lower throughput and higher latencies. You’ll also learn how to use the Linux resource management framework (Cgroups, containers) and server virtualization technologies to improve agility in resource provisioning. Additionally, you’ll gain experience simulating production workload for problem isolation and benchmarking.
You will gain hands on experience using the rich set of monitoring and tracing tools available in Linux, including pidstat, iotop, fio, and sysbench, as well as advanced tools to perform full software stack analysis such as systemtap, perf and sysdig. Students will also be exposed to the key cloud technologies such as data sharding, auto-scaling, Service Oriented Architecture (SOA) and the DevOps model, which allow companies to deploy cloud native services to provide new services at a scale not possible in the data center-based environment.
Learning Outcomes
At the conclusion of the course, you should be able to
- Describe keys, Linux System metrics and Tunables
- Identify performance inhibitors and build scalable and optimized solutions by applying methodologies learned in class
- Complete profiling complex workloads and performing full stack analysis by hands on experience with advanced Linux tool
- Build custom tools for deeper system analysis by using Linux Tooling frameworks
- Identify differences in public cloud and datacenter resource utilization that help companies on cloud migration strategies
NOTE: Students are required to bring their own laptops to do labs in class.
- Save Your Seat
Help us confirm course scheduling. Enroll at least seven days before your course starts. - Accessing Canvas
Learn more about gaining access to your course on Canvas in our FAQ section. -
Accessibility and Accommodation
For accessibility questions or to request an accommodation, please visit Access for Students with Disabilities or email the Extension registrar. -
Finance Your Education
Here are ways to pay for your education.
Prerequisite(s):
Estimated Cost: TBD
Course Availability Notification
Please use this form to be notified when this course is open for enrollment.