저는 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/[이메일 보호됨])root
사용자를 위해 예약된 대체 리소스를 사용하려면root
TTY 또는 콘솔(가상 머신의 경우)을 통한 적절한 로그인이 필요합니다.sudo
또는su
권한을 높이지만 시스템을 연결하지 않는 방법cgroup
(또는 적어도 그렇게 하는 방법을 모르겠습니다). 사용량sudo
이나su
사용자에는 여전히 슬라이싱 제한이 적용됩니다user-UID@
.
감사합니다
~~
K.