| 구분 | 컨테이너 (Container) | 가상머신(VM) |
|---|---|---|
| 아키텍처 | OS 커널 공유 | OS 별도 설치 (게스트 OS 필요) |
| 무게(자원 사용량) | 가볍고 빠름 | 무겁고 비교적 느림 |
| 유지 관리 | 효율적이며 관리가 편함 | 관리 복잡성 높음 |
| 시작속도 | 수 초 이내 | 수 분 이상 |
| 용도 | 특정 애플리케이션 다량 배포에 적합 | 다양한 OS 환경, 높은 보안 환경에 적합 |
| 비용 | 운영체제 비용 절약 | OS 별도 설치 비용 발생 |
| 장점 | 설명 |
|---|---|
| 가벼움 | VM 대비 리소스 사용량이 적어 빠르게 실행 |
| 탄력성 | 리소스를 유연하게 배분, 증가/감소에 따라 자원 효율적 활용 |
| 밀도 | 물리 서버 자원을 최적화하여 여러 개의 컨테이너 운영 가능 |
| 높은 성능 | OS 커널을 공유하여 자원 사용 최적화 및 성능 향상 |
| 쉬운 유지관리 | 한번에 다수의 컨테이너를 쉽게 배포하고 관리 가능 |
| 기능 | 설명 |
|---|---|
| 서비스 디스커버리 | 서비스 위치(IP, 포트 등) 자동 탐색 및 관리 |
| 로드 밸런싱 | 트래픽을 여러 서버로 분산하여 부하 관리 |
| 스케줄링 | 컨테이너 배치를 최적화, 장애 시 재배치 |
| 클러스터링 | 여러 대의 서버를 묶어 하나처럼 관리 |
| 로깅/모니터링 | 전체 컨테이너 상태를 중앙에서 관리하고 모니터링 |