L1051/L1052 - LINUX CONTAINER INTERNALS
How they really work
Scott McCarty, 5/21/2018
ARCHITECTURE
ARCHITECTURE
The Internet is WRONG :-)
Important corrections
3
Scott McCarty, Twitter: @fatherlinux
Production-Ready Containers
What are the building blocks you need to think about?
4
Scott McCarty Twitter: @fatherlinux Blog: bit.ly/fatherlinux
TYPICAL ARCHITECTURE
Bringing it All Together
In distributed systems, the user must interact through APIs
5
Scott McCarty, Twitter: @fatherlinux
CONTAINERS ARE LINUX
The Libraries, and Data Structures
Userspace libraries interact with the kernel to isolate processes
6
Scott McCarty, Twitter: @fatherlinux
THE USER SPACE TOOL CHAIN
On a Single Host
The user space tool chain adds the following:
7
Scott McCarty, Twitter: @fatherlinux
THE ORCHESTRATION TOOLCHAIN
On Multiple Hosts
The orchestration toolchain adds the following:
8
Scott McCarty, Twitter: @fatherlinux
THE COMMUNITY LANDSCAPE
Open Source, Leadership & Standards
The landscape is made up of committees, standards bodies, and open source projects:
9
Scott McCarty, Twitter: @fatherlinux
OVERVIEW OF THE DIFFERENT STANDARDS
Vendor, Community, and Standards Body driven
Many different standards
10
Scott McCarty Twitter: @fatherlinux Blog: bit.ly/fatherlinux
WORKING TOGETHER
Standards in different places achieve different goals
Different standards are focused on different parts of the stack.
11
Scott McCarty Twitter: @fatherlinux Blog: bit.ly/fatherlinux
CONTAINER IMAGES
Fancy Files
People forget about Glibc...
Scott McCarty Twitter: @fatherlinux Blog: bit.ly/fatherlinux
Container Images
Virtual machines and container environments
Scott McCarty Twitter: @fatherlinux Blog: bit.ly/fatherlinux
Fancy Files
Actually, they are layers...
Scott McCarty Twitter: @fatherlinux Blog: bit.ly/fatherlinux
Fancy File Servers
Actually, they are repositories
Scott McCarty Twitter: @fatherlinux Blog: bit.ly/fatherlinux
Fancy Files
How do we currently collaborate in the user space?
Scott McCarty Twitter: @fatherlinux Blog: bit.ly/fatherlinux
Fancy Files
The future of collaboration in the user space....
Scott McCarty Twitter: @fatherlinux Blog: bit.ly/fatherlinux
Fancy Files
The future of collaboration in the user space....
Scott McCarty Twitter: @fatherlinux Blog: bit.ly/fatherlinux
CONTAINER HOST
Fancy Processes
People forget about Glibc...
Scott McCarty Twitter: @fatherlinux Blog: bit.ly/fatherlinux
Linux Containers
Fancy Processes
Regular Linux Process
Containerized Process
Scott McCarty Twitter: @fatherlinux Blog: bit.ly/fatherlinux
Containerized Processes
Starting the process with namespaces, cgroups, and security controls
Scott McCarty Twitter: @fatherlinux Blog: bit.ly/fatherlinux
Containerized Processes
Starting the process in a namespace
Scott McCarty Twitter: @fatherlinux Blog: bit.ly/fatherlinux
Containerized Processes
The containerized process still use the underlying kernel abstractions...
Scott McCarty Twitter: @fatherlinux Blog: bit.ly/fatherlinux
Mounts
Copy on write vs. bind mounts
Scott McCarty Twitter: @fatherlinux Blog: bit.ly/fatherlinux
CONTAINER ORCHESTRATION
Application Containers
This is what most people think of with Docker
RED HAT AND CONTAINERS - CONFIDENTIAL - NDA REQUIRED
Container Orchestration
Multiple nodes changes everything
RED HAT AND CONTAINERS - CONFIDENTIAL - NDA REQUIRED
Container Orchestration
You can hack a solution together yourself, but it’s ugly...
RED HAT AND CONTAINERS - CONFIDENTIAL - NDA REQUIRED
Kubernetes/OpenShift
This Standardizes Everything
RED HAT AND CONTAINERS - CONFIDENTIAL - NDA REQUIRED
The Daemons
Bringing it All Together
User -> OpenShift -> Docker -> Kernel
32
Scott McCarty, Twitter: @fatherlinux
THE LOGIC
Bringing it All Together
33
Scott McCarty, Twitter: @fatherlinux
THANK YOU
plus.google.com/+RedHat
linkedin.com/company/red-hat
youtube.com/user/RedHatVideos
facebook.com/redhatinc
twitter.com/RedHatNews
AGENDA
10:15AM—10:25AM
INTRODUCTION
11:35AM—12:05PM
CONTAINER ORCHESTRATION
10:25AM—10:40AM
ARCHITECTURE
12:05PM—12:15PM
CONCLUSION
10:40AM—11:05AM
CONTAINER IMAGES
11:05AM—11:35PM
CONTAINER HOSTS
L103118 - Linux container internals
35
Scott McCarty, Twitter: @fatherlinux
Materials
The lab is made up of multiple documents and a GitHub repository
36
Scott McCarty, Twitter: @fatherlinux
CONTACT INFORMATION
We All Love Questions
37
Scott McCarty, Twitter: @fatherlinux