[리눅스] 리눅스 리소스 사용량 제한 설정

목차

  1. CPU 제한 설정
  2. 메모리 제한 설정
  3. 디스크 제한 설정
  4. 참고 자료

CPU 제한 설정

리눅스에서 CPU 사용량을 제한하기 위해 cgroups를 사용할 수 있습니다. cgroups는 컨트롤 그룹을 관리하여 프로세스 그룹의 리소스를 제한하고 모니터링하는 기능을 제공합니다. 아래는 CPU 사용량을 제한하는 예제 코드입니다.

# cgroups 디렉토리 생성
mkdir /sys/fs/cgroup/cpu/mygroup

# CPU 사용량 제한 설정
echo 50000 > /sys/fs/cgroup/cpu/mygroup/cpu.cfs_quota_us
echo 100000 > /sys/fs/cgroup/cpu/mygroup/cpu.cfs_period_us

# 프로세스를 cgroup에 할당
echo <pid> > /sys/fs/cgroup/cpu/mygroup/cgroup.procs

메모리 제한 설정

메모리 사용량을 제한하기 위해서도 cgroups를 사용할 수 있습니다. 아래는 메모리 사용량을 제한하는 예제 코드입니다.

# cgroups 디렉토리 생성
mkdir /sys/fs/cgroup/memory/mygroup

# 메모리 사용량 제한 설정
echo 100M > /sys/fs/cgroup/memory/mygroup/memory.limit_in_bytes

# 프로세스를 cgroup에 할당
echo <pid> > /sys/fs/cgroup/memory/mygroup/cgroup.procs

디스크 제한 설정

디스크 공간 사용량을 제한하기 위해서는 quota를 이용하여 디스크 사용량을 제한할 수 있습니다. 다음은 quota를 사용하여 디스크 사용량을 제한하는 예제 코드입니다.

# quota 설정을 위해 파일시스템을 리마운트
mount -o remount,usrquota /dev/sda1

# 사용자의 디스크 공간 제한 설정
edquota -u username

참고 자료

리눅스에서 리소스 사용량을 제한함으로써 시스템 안정성을 유지하고 공정한 자원 분배를 할 수 있습니다. CPU, 메모리, 디스크 등 다양한 리소스에 대한 제한 설정을 통해 시스템을 안정적으로 운영할 수 있습니다.