With the announcement of CentOS discontinuation by the CentOS community, along with the set dates for service termination, we have put the switch to a new container operating system on our agenda.
AlmaLinux 9 defaults to using cgroup v2, and this configuration affects some underlying components.
cgroups are a Linux kernel capability that establish resource management functionality like limiting CPU usage or setting memory limits for running processes.
cgroup v2 has been in development in the Linux Kernel since 2016 and in recent years has matured across the container ecosystem.
This article presents the best practices for migrating Kubernetes cluster nodes from CentOS to AlmaLinux which involves removing dockershim and utilizing cgroup v2 for node resource management.
Enabling cgroup v2 support for kubelet is proving to be challenging and several adjustments need to be made to various components.
The configuration of the sandbox image and registry can be customized based on specific requirements.
SystemD versions greater than 245 automatically set the rp_filter value to 1 for all network interfaces. This conflicts with Cilium, which requires rp_filter to be 0 on its interfaces, leading to a disruption in out-of-node IPv4 traffic.
Our long-term analysis revealed that the benefits of adopting the Cgroup v2 technology roadmap far outweigh the initial investment.
We are considering submitting a proposal for a presentation at KubeCon 2023, where we will have the opportunity to share the latest developments and insights with the conference attendees.