I need to set the default CPU affinity for all the daemons managed by systemd, except a specific service.
Setting service's CPU affinity at /etc/systemd/system/myname.service.d/scheduler.conf
works just fine, so I guessed I could set my service affinity to, say, cores 2-11, and let the rest of the system to live with cores 0-1.
It seems I can't.
I tried /etc/systemd/system.conf.d/default.conf
and even changed /etc/systemd/system.conf
.
All the daemons (except my one) still start with all the CPUs allowed.
It seems too much hassle to setup an override /etc/systemd/system/*.service.d
configuration file for each other system service.
The systemd version is 215 (from Debian Jessie)
Update: I revisited /etc/systemd/system.conf
and found that I misspelled the CPU cores list. I experimented a bit more and found that, although I can setup default CPU Affinity in /etc/systemd/system.conf
, the setting in /etc/systemd/system.conf.d/
doesn't seem to have any effect.
I would prefer to keep this setting in /etc/systemd/system.conf.d/scheduler.conf
as the whole fleet is managed by ansible. I found a couple of examples at github with the section ([Manager]
) line absent, but this doesn't work for me, too. Documentation clearly mention /etc/systemd/system.conf.d
. What do I miss?
system.conf.d
is much better that changing system default file