更改cgroup pid.max值?

问题描述 投票:-1回答:1

我目前正在Ubuntu服务器上跟踪cannot fork()错误,并且能够将其精确定位到pid.max700/sys/fs/cgroup/pids/值。但是,我只能设置/system.slice/pids.max/user.slice/pids.max值,而不能设置pids.max。另外,这些在重启后重置为max值,这再次强制了全局pids.max值。

是否可以将其从700更改为更高的值?root+ sudo没有帮助。

还有其他方法可以覆盖此值吗?

linux ubuntu systemd cgroups
1个回答
0
投票

我认为您正在从DefaultTasksMax=寻找/etc/systemd/system.conf指令。

您可以通过发出systemctl show -p DefaultTasksMax来检查运行时值:

$ systemctl show -p DefaultTasksMax
DefaultTasksMax=19096

如果要更改它,只需在/etc/systemd/system.conf中编辑相应的指令行。存在类似的指令(TasksMax=)以逐个单位调整此设置。

相关文档[0] [1]代码段:

TasksMax = N

指定单位中可以创建的最大任务数。这样可以确保该单元的任务数(请参见上文)保持在特定限制以下。这要么是绝对任务数,要么是相对于系统上配置的最大任务数所占的百分比值。如果分配特殊值“ infinity”,则不应用任何任务限制。这将控制“ pids.max”控制组属性。有关此控制组属性的详细信息,请参见Process Number Controller

此设置的系统默认值可以通过systemd-system.conf(5)中的DefaultTasksMax =控制。

DefaultTasksMax =

配置每单位TasksMax =设置的默认值。有关详细信息,请参见systemd.resource-control(5)。此设置适用于所有支持资源控制设置的单元类型,但切片单元除外。默认值为15%,等于主机上内核的默认值4915,但在OS容器中可能会更小。

© www.soinside.com 2019 - 2024. All rights reserved.