Mai 2016 Archive

Ein aktuelles systemd (z.B. das in Ubuntu 16.04) instrumentiert via TasksMax mittlerweile die pid Cgroups. Quasi ein ulimit -u via Cgroups.

Folgender Commit ändert die Beschränkt die Prozesse/Thread aller Services.

commit 9ded9cd14cc03c67291b10a5c42ce5094ba0912f
Author: Lennart Poettering <lennart@poettering.net>
Date:   Fri Nov 13 19:28:32 2015 +0100

    core: enable TasksMax= for all services by default, and set it to 512

    Also, enable TasksAccounting= for all services by default, too.

    See:

    http://lists.freedesktop.org/archives/systemd-devel/2015-November/035006.html

Damit haben wir leider:

$ systemctl show -p TasksMax docker
TasksMax=512

$ systemctl show -p TasksMax mysql
TasksMax=512

Damit stoßen schon bei mittelmäßiger Belastung an die Grenzen /o\ Also nicht wundern, wenn nach einem Upgarde auf z.B. Ubuntu 16.04 nichts mehr skaliert :)

Folgendes stellt das vorherige Verhalten wieder her.

TasksMax=infinity

Dieser darf jetzt gerne angepasst werden;)

Viel Spaß

Erkan \o/

Update 1: Zumindest in Debian/Ubuntu wird in einem Update wieder TaskMax=infinity sein

Update 2: Ab Version 230 gibt es einen neuen Default: KillUserProcesses=yes. Einfach nachlesen und heulen :)