TIL

3.2.4 도커 컨테이너의 자원 사용에 대한 런타임 제약

3.2.4 도커 컨테이너의 자원 사용에 대한 런타임 제약

서버 자원 모니터링

서버 시스템을 운영하면 자원 사용량이나 활용도를 모니터링하는데 다음의 도구들을 종종 사용한다.

컨테이너를 호스트 OS에서 실행한 경우에도 위 도구들을 사용할 수 있다. (컨테이너는 프로세스)

```docker
$ grep cgroup /proc/mounts

$ docker info | grep Cgroup
Ggroup Driver: croupfs
Cgroup Version: 1
```

- croup 기능이 비활성화된 경우 출력 마지막에 경고 표시가 나타나거나 컨테이너를 생성하는 `docker run` 이후에 세부 경고 표시가 출력된다.

컨테이너 리소스 런타임 제약 옵션 - CPU

컨테이너 리소스 런타임 제약 옵션 - 메모리

만일 호스트 시스템의 메모리 부족을 감지하면 OOME(Out Of Memory Exception)를 발생시키고 메모리 확보를 위해 프로세스를 종료한다.

컨테이너 리소스 런타임 제약 옵션 - 디스크 블록 I/O

서버 컨테이너 상관 없이 제한된 자원이라는 환경에서 애플리케이션을 운영하는 경우 항상 제약을 통해 호스트 시스템 및 다른 컨테이너 서비스에 영향을 미치지 않도록 자원 제약에 관심을 가져야 한다.