私はDebian Bullseyeとsystemd
247を使用しています。cgroups
使用したいユーザーが100人を超えるユーザーがいます。たとえば、メモリとプロパティset-property
に対して期待どおりに機能します。AllowedCPUs
systemctl set-property user.slice MemoryHigh=300G
systemctl set-property user.slice MemoryMax=305G
systemctl set-property user.slice AllowedCPUs=9-64
アイデアは、一般ユーザーにメモリの80〜90%とほとんどのCPUを使用させることです。別の10〜20%は常に他のスライスで利用可能でなければなりません。そしてユーザーのためにroot
(私たちは制限設定に非常に自由であり、最近の学生によって誤ってフォーク爆撃を受けました)。
ただし、これらの制限はユーザーにも影響を与えるように見え、同様のものがroot
見つかりません。問題が発生した場合は、余分なリソースを使用できる[email protected]
ようにし、常に余分なI / O、メモリ、およびCPUを残すことがアイデアです。スイッチが全部あってよさそうです。誰でもこれを達成する方法を教えたり、マルチユーザー環境でいくつかの一般的なベストプラクティスを提供したりできますか?それとも、私はこのことを完全に間違っているので、別のものにする必要がありますか?root
cgroups
systemd
cgroups
提案された回答(2022年6月19日):
以下の説明どおりに処理したようですが、これが「正しい」方法かどうかはわかりません。
systemd
drop-in
ディレクトリ内に階層があります。通常、より具体的なdrop-in
ディレクトリ定義は、あまり具体的でないディレクトリ定義よりも優先されます。 (https://www.freedesktop.org/software/systemd/man/systemd.unit.html#)/etc/systemd/system/user-.slice.d/somethin.conf
上書きされます/etc/systemd/system/user-0.slice.d/something.conf
。前のディレクトリに設定された制限は、を含むすべてのユーザーに適用されますが、後者のディレクトリのroot
定義はそれを無視して適用されます。ただ到着するroot
。 (https://www.freedesktop.org/software/systemd/man/[Eメール保護])root
ユーザー用に予約された代替リソースを使用するには、root
TTYまたはコンソール(仮想マシンの場合)を介した適切なログインが必要です。sudo
または、su
権限を高めるがシステムを接続しない方法cgroup
(または少なくともそうする方法がわかりません)。使用量sudo
またはsu
ユーザーにはまだスライス制限が適用されますuser-UID@
。
ありがとう 〜〜K
。