25장. systemd에서 제어 그룹 버전 1 사용
systemd 시스템 및 서비스 관리자 및 제공하는 유틸리티를 사용하여 cgroup 을 관리할 수 있습니다. 이는 cgroups 관리의 기본 방법이기도 합니다.
25.1. 제어 그룹 버전 1에서 systemd의 역할 링크 복사링크가 클립보드에 복사되었습니다!
RHEL 8은 cgroup 계층 구조 시스템을 systemd 장치 트리와 바인딩하여 리소스 관리 설정을 프로세스 수준에서 애플리케이션 수준으로 이동합니다. 따라서 systemctl 명령을 사용하거나 systemd 장치 파일을 수정하여 시스템 리소스를 관리할 수 있습니다.
기본적으로 systemd 시스템 및 서비스 관리자는 슬라이스,범위 및 서비스 단위를 사용하여 제어 그룹의 프로세스를 구성하고 구조화합니다. systemctl 명령은 사용자 지정 슬라이스 를 생성하여 이 구조를 추가로 수정할 수 있습니다.systemd 는 /sys/fs/cgroup/ 디렉터리에 중요한 커널 리소스 컨트롤러에 대한 계층을 자동으로 마운트합니다.
리소스 제어에 세 가지 systemd 장치 유형이 사용됩니다.
service - 장치 구성 파일에 따라
systemd가 시작된 프로세스 또는 프로세스 그룹입니다. 서비스는 지정된 프로세스를 하나의 세트로 시작하고 중지하도록 캡슐화합니다. 서비스의 이름은 다음과 같습니다.<name>.service
<name>.serviceCopy to Clipboard Copied! Toggle word wrap Toggle overflow scope - 외부에서 생성된 프로세스 그룹입니다. 범위는
fork()함수를 통해 임의의 프로세스에서 시작 및 중지된 프로세스를 캡슐화한 다음 런타임 시systemd에 의해 등록됩니다. 예를 들어 사용자 세션, 컨테이너 및 가상 머신은 범위로 처리됩니다. 범위 이름은 다음과 같습니다.<name>.scope
<name>.scopeCopy to Clipboard Copied! Toggle word wrap Toggle overflow 슬라이스 - 계층적으로 구성된 단위 그룹입니다. 슬라이스는 범위 및 서비스가 배치되는 계층을 구성합니다. 실제 프로세스는 범위 또는 서비스에 포함됩니다. 슬라이스 단위의 모든 이름은 계층 구조의 위치에 대한 경로에 해당합니다. 대시("-") 문자는
-.slice루트 슬라이스에서 슬라이스에 대한 경로 구성 요소의 구분 기호 역할을 합니다. 다음 예제에서는 프로세스가 포함된 서비스 및 범위가 자체 프로세스가 없는 슬라이스에 배치됩니다.<parent-name>.slice
<parent-name>.sliceCopy to Clipboard Copied! Toggle word wrap Toggle overflow parent-name.slice는parent.slice의 하위 슬라이스입니다. 이 하위 슬라이스는-.slice루트 슬라이스의 하위 슬라이스입니다.parent-name.slice는parent-name-name2.slice라는 자체 하위slice를 포함할 수 있습니다.
서비스, 범위 및 슬라이스 단위는 제어 그룹 계층 구조의 오브젝트에 직접 매핑됩니다. 이러한 장치가 활성화되면 장치 이름에서 빌드된 그룹 경로를 직접 제어합니다.
제어 그룹 계층 구조의 예
프로세스를 포함하는 서비스 및 범위는 자체 프로세스가 없는 슬라이스에 배치됩니다.