Overview
Explore the current status of cgroups v2 in the Kubernetes and container ecosystem in this 30-minute conference talk by Giuseppe Scrivano from Red Hat. Delve into the efforts to enable cgroups v2 in container runtimes and Kubernetes, allowing users to benefit from new kernel features like PSI and improved OOM handling through projects such as oomd. Focus on the necessary changes in OCI specifications and container runtime adaptations. Learn about cgroups, their history, and usage, including cgroup file systems, Quality of Service classes, and OOM scoring in Kubernetes. Understand the limitations of cgroup v1, the need for cgroup v2, and its new controllers and rules. Discover Pressure Stall Information metrics, memory protection, cgroup namespaces, and the conversion process from cgroup v1 to v2. Gain insights into the future developments of cgroups in the Kubernetes ecosystem.
Syllabus
During the talk
What are cgroups?
How do we use them?
History
Cgroup /proc files
Cgroup vi file system API
Quality of Service classes
OOM score in Kubernetes
How the Kubelet uses cgroup vi
Running containers
Monitoring
Some issues with cgroup v1
How we got here?
Why do we need cgroup v2?
Cgroup v2 controllers
Cgroup v2 rules
Pressure Stall Information metrics
Memory Protection
Cgroup namespace
OCI runtime specifications
Conversion from cgroup v1 to cgroup v2
What is next?
Taught by
CNCF [Cloud Native Computing Foundation]