컨테이너 가상화
- 하이퍼바이저 방식보다 더 가볍고 더 빠르다.
- 리눅스 커널이 제공하는 LXC, 리눅스 컨테이너 라는 자체 격리 기술에서 출발했다.
- 커널 자체의 공간만 사용하여도 격리된 공간을 만들 수 있다.
- 커널의 Namespace 와 Cgroups 를 이용한다.
- Namespace: 프로세스, 하드드라이브, 네트워크, 사용자, 호스트 네임처럼 리소스를 나누는 기준의 역할
- Cgroups: 메모리, CPU, Disk, Network Bandwidth 처럼 리소스의 사용량을 배분하는 기술
- LXC 라는 기술을 통해 분리된 공간 각각을 컨테이너라고 부른다.
- Host OS 의 커널을 공유하는데, 이게 컨테이너 가상화의 가장 큰 특징 중 하나이다.
- Guest OS 를 사용하는 하이퍼바이저 방식보다 오버헤드가 작다.
- 하이퍼바이저 방식은 Guest OS 의 커널에서 시스템 콜을 하고 그게 번역이 되어 Host OS 에 전달되는 오버헤드가 있었다.
- Guest OS 를 사용하는 하이퍼바이저 방식보다 오버헤드가 작다.
반응형
'인프라 > 도커' 카테고리의 다른 글
컨테이너 런타임 (Container Runtime) 이란 무엇인가? 그리고 runc (0) | 2024.02.04 |
---|---|
도커의 아키텍처 (0) | 2024.02.04 |
LXC (Linux Container, 리눅스 컨테이너) 란? (0) | 2024.02.04 |
하이퍼바이저 (Hypervisor) 란 무엇인가? (1) | 2024.02.04 |
도커 실무 - Mariadb 를 사용하는 스프링부트 프로젝트 배포해보기 (0) | 2022.06.07 |