6+ Hours of Video Instruction
Linux Web Operations LiveLessons guides system administrators, developers, and other Linux professionals through the layers of technology underlying modern web applications. The videos discuss the relationship between web and application servers, load balancers, and databases and introduce configuration management, monitoring, containers, cryptography, and DNS.
In Linux Web Operations LiveLessons, Ben Whaley covers the architecture underlying a modern web stack. Based upon a simple example Python web application hosted in the AWS cloud, each lesson begins with general principles and uses command line examples to reinforce the concepts. Since the web is composed of a huge array of languages and platforms, the tutorials teach the viewer how to think about designing web applications for scalability more than deeply understanding a single technology. The videos cover web, application, and database servers; DNS records and servers; exchanging confidential and authenticated messages using cryptography; Ansible for orchestration and configuration management; working with APIs; and running applications in Docker containers.
About the Instructor
Ben Whaley is the coauthor of the UNIX and Linux System Administration Handbook, widely considered the de facto standard system administration text, and author of the highly regarded Linux System Administration LiveLessons. He has been running applications on the web for more than a decade and recently built the cloud-based back-end web systems for Apigee, a software-as-a-service API management platform, and for Anki, a robotics and artificial intelligence company. Ben is a consultant in the San Francisco Bay area.
Learn How To
Who Should Take This Course
Aimed at web developers, system administrators, site reliability engineers, and other technology professionals interested in learning how the modern web functions.
Table of Contents
Lesson 1, "Web Applications," reviews the common layers in a web application software stack. The lesson covers the role of load balancers, web and application servers, databases, and the underlying systems environment. An example application on a hosted cloud environment is demonstrated using curl to interact with HTTP.
Lesson 2, "Databases," shows how to set up MySQL to serve as a persistence store for the example application. Viewers learn how to use a script to perform automatic backup to S3 cloud storage and configure replication. They also see how to access a redis key-value store from the command line.
Lesson 3, "Web Servers and Load Balancers," explores the Apache and nginx web servers and uses haproxy as a load balancer. Viewers learn about Lua as a powerful enhancement for nginx.
Lesson 4, "DNS," reviews DNS fundamentals covering the most common record types. Viewers learn how to configure a master/slave BIND server for the example.com domain and then restrict the daemon to a chroot jail. Finally, viewers see how to use TSIG to perform dynamic updates and secure zone transfers.
Lesson 5, "Monitoring," walks viewers through how to decide on the best approach to monitoring the example application. Then, viewers see how to install and configure collectd to gather data from hosts. Next, they see how to send the collected data to Graphite, a django application for storing and querying data. Finally, they see how to use Nagios to set up checks and alerts.
Lesson 6, "Configuration Management," discusses the purpose of configuration management and orchestration. Viewers learn about Ansible plays and playbooks and how to control hosts by role with Ansible.
Lesson 7, "Cryptography," covers what to consider about the various forms of cryptography before applying it while using OpenSSH. Viewers then see how to use the OpenSSL command line tools to create a certificate authority and an SSL certificate. They also learn how to use GPG to encrypt and sign files.
Lesson 8, "Containers," covers the concept of containers and how they fit in the application environment. The lesson focuses on running and building containers with Docker and Dockerfiles.
About LiveLessons Video Training
LiveLessons Video Training series publishes hundreds of hands-on, expert-led video tutorials covering a wide selection of technology topics designed to teach you the skills you need to succeed. This professional and personal technology video series features world-leading author instructors published by your trusted technology brands: Addison-Wesley, Cisco Press, IBM Press, Pearson IT Certification, Prentice Hall, Sams, and Que. Topics include: IT Certification, Programming, Web Development, Mobile Development, Home and Office Technologies, Business and Management, and more. View all LiveLessons on InformIT at: http://www.informit.com/livelessons
Lesson 1: Web Applications
1.1 Envision the components of a web application
1.2 Walk through a simple example application
1.3 Design the application environment
1.4 Host the example application on cloud infrastructure
1.5 Query APIs using curl, resty and jq
1.6 Intercept HTTP traffic with Charles web proxy
Lesson 2: Databases
2.1 Choose appropriate database software
2.2 Connect the example application to MySQL
2.3 Backup and restore a MySQL database
2.4 Replicate a MySQL database
2.5 Query a redis key-value store
Lesson 3: Web Servers and Load Balancers
3.1 Host websites using Apache
3.2 Control HTTP with Nginx
3.3 Level up Nginx with Lua
3.4 Load balance web traffic
3.5 Debug HTTP problems
Lesson 4: DNS
4.1 Understand DNS records and their uses
4.2 Configure a BIND DNS master
4.3 Configure a BIND DNS slave
4.4 Confine BIND to a chroot jail
4.5 Update DNS dynamically
Lesson 5: Monitoring
5.1 Design a monitoring solution
5.2 Collect metrics using collectd
5.3 Graph all the things with Graphite
5.4 Alert about errors and problems using Nagios
Lesson 6: Configuration Management
6.1 Understand configuration management in context
6.2 Write an Ansible playbook
6.3 Control hosts by role with Ansible
Lesson 7: Cryptography
7.1 Conceptualize cryptography
7.2 Open tunnels and securely copy files using SSH
7.3 Use the OpenSSL CLI
7.4 Sign messages and encrypt data with GPG
Lesson 8: Containers
8.1 Grok containers
8.2 Run a container using Docker
8.3 Automate Docker using Dockerfiles
8.4 Contain the example application