☁️ 클라우드 컴퓨팅과 가상화 기술
가상화(Virtualization) 기술은 클라우드 컴퓨팅을 가능하게 만든 핵심 기술이다.
클라우드에서 자원을 효율적으로 집약하고, 다수의 사용자를 동시에 서비스하기 위해 반드시 필요하다.
1. 가상화 기술이 등장한 배경
초기의 컴퓨팅 환경을 생각해보자.
- 사용자 100명 → 컴퓨터 100대 제공
- 하지만 실제 사용률을 분석해보니
실제 사용 중인 자원은 약 30대 분량에 불과함
그렇다면 이런 의문이 생긴다.
“100명을 서비스하기 위해 꼭 100대의 컴퓨터가 필요할까?”
“30대의 컴퓨터로 100명을 서비스할 수는 없을까?”
이 질문에서 가상화 기술이 출발했다.
자원 집약(Resource Consolidation)의 필요성
- 하나의 물리적 머신을 여러 사용자가 나눠서 사용
- 단, 사용자는 혼자 쓰는 것처럼 느껴야 함
이를 위해 반드시 필요한 조건:
- 자원 분리(Resource Isolation)
→ CPU, 메모리, 디스크, 네트워크가 철저히 분리되어야 함 - 리소스 간섭이 없어야 함
→ “같이 쓰고 있다”는 느낌이 들면 안 됨 - 추상화(Abstraction)
→ 사용자에게는 항상 동일한 인터페이스 제공
이 문제를 해결하기 위해 등장한 기술이 바로 가상화다.
2. 가상화 기술이란?
가상화 기술은 물리적인 자원을 추상화하여 가상의 자원으로 만들어내는 기술이다.
- 하나의 물리 머신 위에
- 여러 개의 가상 머신(VM) 을 생성
- 각 VM은 서로 완전히 독립적인 컴퓨터처럼 동작
즉,
“나는 지금 독립적인 리소스를 쓰고 있다”
라는 사용자 경험을 제공하는 것이 가상화의 핵심이다.
3. 가상화 기술의 동작 방식
기본적인 구조는 다음과 같다.
- 호스트 머신(물리 서버)
- 호스트 머신 위에 호스트 운영체제(OS) 설치
- 그 위에 가상 머신 관리 도구 설치
- 관리 도구를 통해:
- 가상 머신 생성
- 실행 / 중지 / 삭제
- 각 VM에 서로 다른 운영체제 설치 가능
이 구조 덕분에 다수의 가상 머신을 독립적으로 생성·관리할 수 있다.
4. 가상화 기술의 핵심 장점 – 템플릿화
가상화 기술의 가장 큰 장점 중 하나는 템플릿(이미지)화가 가능하다는 점이다.
- 가상 머신은 파일 형태로 저장됨
- 사전에 구성된 VM을 템플릿으로 저장
- 동일한 환경을 빠르고 반복적으로 생성 가능
템플릿 활용 예시
- 팀원 간 개발 환경 공유
- 동일한 개발/테스트 환경 보장
- 오토 스케일링 시 VM을 빠르게 복제
- 장애 발생 시 신속한 복구
이 구조가 바로 클라우드의 자동 확장(Auto Scaling) 을 가능하게 만든다.
5. 가상화 기술의 분류


1️⃣ 호스트 가상화 (Host Virtualization)
구조
- 물리 머신 위에 호스트 OS 설치
- 그 위에 가상 머신 관리 소프트웨어 설치
- 가상 머신마다 게스트 OS 설치
특징
- 설치 및 사용이 비교적 쉬움
- 일반 PC에서도 사용 가능
단점
- 하드웨어 접근 단계가 많음
- 성능 오버헤드 존재
대표 예시
- VMware Workstation
- VirtualBox
2️⃣ 하이퍼바이저 가상화 (Hypervisor Virtualization)
구조
- 호스트 OS 없음
- 하이퍼바이저가 하드웨어 위에서 직접 동작
장점
- 하드웨어 접근 단계 감소
- 성능 향상
단점
- 설치와 관리가 어려움
- 비용이 높음
- 추상화 수준이 낮아 제어가 어려움
하이퍼바이저의 종류
- Type 1 (네이티브형)
→ 하드웨어 위에서 직접 실행
→ 예: VMware ESXi - Type 2 (호스트형)
→ OS 위에서 실행
→ 예: VirtualBox
3️⃣ 컨테이너 가상화 (Container Virtualization)
구조
- 호스트 OS 위에 컨테이너 엔진 실행
- 게스트 OS 없음
장점
- 오버헤드 거의 없음
- 리소스 사용 효율 매우 높음
- 빠른 실행 속도
단점
- 호스트 OS에 의존적
- 커널 공유로 인한 제약 존재
대표 기술
- Docker
6. 가상화 기술의 장점 정리
- 자원 활용성 향상
→ 적은 물리 자원으로 많은 사용자 서비스 가능 - 안정성
→ 논리적 자원 분리로 서비스 간 영향 없음 - 신속한 복구
→ 파일 기반 관리로 빠른 복원 가능
7. 하이퍼바이저 정리
- 가상화 소프트웨어
- VMM(Virtual Machine Monitor)라고도 함
- 가상 머신 생성 및 관리 담당
주요 개념
- Type 1 하이퍼바이저
→ 물리 시스템 위에 직접 설치 - Type 2 하이퍼바이저
→ 호스트 OS 위에 설치
KVM (Kernel-based Virtual Machine)
- 리눅스 커널에 KVM 모듈이 설치되면
- 리눅스 OS 자체가 Type 1 하이퍼바이저 역할 수행
QEMU
- 하드웨어 에뮬레이션
- 이기종 환경 테스트 및 성능 실험에 활용
8. IaC (Infrastructure as Code)
IaC란?
- 인프라 구성을 코드로 정의하는 방식
- 물리 또는 가상 인프라 자동화
- IaaS 환경에서 필수 개념
장점
- 인프라 일관성 유지
- 자동화된 배포
- 재현 가능한 환경 구성
Vagrant
- 가상 시스템 환경 구축 도구
- 코딩 가능한 명령어 조합
- 가상 머신 환경을 자동으로 생성
마무리 정리
가상화 기술은
✔️ 클라우드의 자원 집약
✔️ 자동 확장
✔️ 안정성
✔️ 복원성
을 가능하게 만든 클라우드 컴퓨팅의 기반 기술이다.
'DevOps > AWS' 카테고리의 다른 글
| [AWS] ECS는 Running인데 계속 Unhealthy? ALB Health Check 실패의 진짜 원인 (보안그룹 아웃바운드 문제) (Product : SpeakNote) (0) | 2026.02.16 |
|---|---|
| [AWS - ECS & ALB]ECS + ALB+RDS 기반 서비스 아키텍처 정리 (0) | 2026.02.10 |
| [cloud computing] 클라우드 컴퓨팅 (CC) 이란? (0) | 2025.12.10 |