본문 바로가기

Infra/Linux

(2)
Control groups, Name spaces, Union mount filesystem 컨테이너를 구성하는 3가지 주요 리눅스 기술 Control groups Name spaces Union mount filesystem cgroups(Control Groups) 프로세스들이 사용하는 시스템 자원의 사용 정보를 수집 및 제한 시키는 리눅스 커널 기능 제한 가능한 자원: CPU, Memory, Network, Device, Block I/O 사용 가능한 서브시스템 cpu - 스케줄러를 이용해 cgroup에 속한 프로세스 CPU 사용 시간을 제어 memory - 해당 cgroup에 속한 프로세스의 메모리 사용량에 대한 제어 freezer - cgroup의 작업을 일시 중지하거나 다시 시작 blkio - cgroup에 블록 장치에 대한 입력/출력 제한을 설정 net_cls - Linux 트래픽 ..
VM과 컨테이너 비교 Virtual Machines Containers 특징 저수준 하드웨어 장치(CPU, Disk, Network)를 가상화 애플리케이션 구동에 필요한 모든 종속성을 포함한 소프트웨어 패키지를 운영체제 위에서 가상화 장점 - 같은 서버에 다양한 운영체제를 실행 - 물리 머신 대비 동일한 자원을 더 효율적으로 사용 - 물리 머신 대비 빠른 서버 프로비저닝 - 컨테이너를 어느 환경에나 배포 가능 - OS를 부팅하거나 라이브러리를 로드할 필요가 없음 - 수 초 이내의 빠른 시작 시간 - 하나의 호스트에 더 많은 어플리케이션 실행 가능 - OS 패치 업데이트 등 유지 관리와 관련된 오버헤드 감소 단점 - OS 이미지, 라이브러리, 어플리케이션 등을 반복적으로 포함 - 컨테이너가 정의된 운영체제에 종속성 참고 Upl..