Kubernetes(K8s)在设置容器运行时(如Docker)时,通常需要选择一个用于隔离容器的 Linux 内核特性,即 cgroups 的驱动。主要的选择是 cgroupfs 和 systemd。
cgroupfs:这是 Docker 的默认设置。每个 Docker 守护进程创建并管理自己的 cgroups,而不依赖于任何其他进程来管理它。如果你的系统中并没有运行 systemd 作为 init 系统,那么你可能会倾向于使用 cgroupfs。
systemd:如果你的系统中正在运行 systemd,那么使用 systemd 作为 cgroups 驱动可能更有意义。在这种情况下,Docker 守护进程将会将 cgroups 委托给 systemd 来管理。这样可以让 systemd 成为系统中唯一的 cgroups 管理器,它可以更好地协调各个服务的资源使用。
在 Kubernetes 中,如果你使用的容器运行时(如 Docker)的 cgroups 驱动被设置为 systemd,但是 Kubelet 还在使用默认的 cgroupfs 作为其 cgroups 驱动,这可能会导致一些问题。因此,如果你在容器运行时中使用了 systemd,那么在 Kubelet 中也应该使用 systemd。
总的来说,选择 cgroupfs 还是 systemd 主要取决于你的系统是否使用 systemd 作为其 init 系统,以及你是否希望让 systemd 管理你的 cgroups。
网友回复
如何编写一个chrome插件实现多线程高速下载大文件?
cdn版本的vue在网页中出现typeerror错误无法找到错误代码位置怎么办?
pywebview能否使用webrtc远程控制共享桌面和摄像头?
pywebview6.0如何让窗体接受拖拽文件获取真实的文件路径?
如何在linux系统中同时能安装运行apk的安卓应用?
python有没有离线验证码识别ocr库?
各家的ai图生视频及文生视频的api价格谁最便宜?
openai、gemini、qwen3-vl、Doubao-Seed-1.6在ui截图视觉定位这款哪家更强更准?
如何在linux上创建一个沙箱隔离的目录让python使用?
pywebview如何使用浏览器自带语音识别与webspeech 的api?