서버 가상화 기술과 컨테이너 가상화
1. 서버 가상화 기술 (Hypervisor 기반)
개념
- 기존 하드웨어 위에 OS를 올리고, 그 위에 Hypervisor 프로그램을 실행.
- Hypervisor를 통해 여러 개의 Virtual Machine(VM)을 생성하여 가상화를 구현.
특징
- VM 단위 당 하나의 OS를 실행.
- 각 VM은 독립된 가상 하드웨어를 사용.
단점
- 성능 저하
- 가상 시스템이 사용하는 리소스가 많아질수록 성능 저하가 심함.
- 거대한 이미지 크기
- OS 이미지는 GB 단위.
- 느린 시작 시간
- VM 시작 시간이 분 단위로 소요.
- 환경 불일치
- VM 간의 환경이 일치하지 않아 운영의 복잡성을 증가.
2. 컨테이너 가상화
개념
- OS 위에 컨테이너 런타임(Container Runtime)을 실행하고, 이를 통해 여러 컨테이너를 생성.
- 컨테이너는 OS뿐만 아니라 특정 미들웨어나 애플리케이션(JVM 등)을 독립적으로 실행 가능.
특징
- 빠른 시작 시간
- 컨테이너는 초 단위로 시작 가능.
- 작은 이미지 크기
- 이미지 크기가 수백 MB 수준으로 효율적.
- Host OS와의 관계
- 컨테이너는 Host OS의 커널 수준에서 분리되며, 필요에 따라 리소스를 공유.
서버 가상화 vs 컨테이너 가상화
특징 | 서버 가상화 | 컨테이너 가상화 |
---|---|---|
기술 기반 | Hypervisor | Container Runtime |
이미지 크기 | GB 단위 | 수백 MB |
시작 시간 | 분 단위 | 초 단위 |
Guest OS 관계 | 별도의 가상 하드웨어로 인식 | Host OS와 커널 수준 분리 |
리소스 효율성 | 상대적으로 비효율적 | 효율적 |
'Docker' 카테고리의 다른 글
소프트웨어 아키텍쳐 (0) | 2024.12.04 |
---|