[AWS] 가상화(Virtualization)

임유진·2025년 7월 29일

클라우드/인프라

목록 보기
15/25
post-thumbnail

1. 가상화(Virtualization)란?

클라우드의 핵심 기술이며, 하나의 물리적 컴퓨터 하드웨어를 다수의 가상 컴퓨터(Machine)로 분할하여 사용하는 기술

  • 실제 1대의 서버를 여러 개로 쪼개어 마치 여러 대의 컴퓨터처럼 활용
  • 리소스를 효율적으로 사용 가능
  • 사용률 낮은 서버들을 통합 → 비용 절감 및 운영 효율 증가

2. 왜 가상화가 필요한가?

  • 서버마다 CPU 사용률이 10~50% 정도로 낮음 → 잉여 자원 낭비
  • 여러 서버를 한 대로 통합 + 가상화 기술 적용
    운영비 절감, 리소스 최적화
  • 클라우드 컴퓨팅처럼 다수의 컴퓨터를 효율적으로 관리하기 위한 필수 기술

3. 가상화를 이해하기 위한 배경지식

운영체제(OS)

  • 컴퓨터 하드웨어와 소프트웨어를 관리하는 프로그램
  • ex) Windows, macOS, Linux, Android 등

특권 명령(Privileged Instruction)

  • CPU나 메모리 같은 시스템 자원과 직접 통신할 수 있는 권한 명령어
  • 일반 프로그램은 특권 명령 불가 → 동시에 여러 개 실행 가능
  • OS만 특권 명령 가능 → 1개의 하드웨어에는 1개의 OS만 설치 가능

4. 가상화 이전 상태: 베어 메탈(Bare Metal)

  • 하드웨어 위에 OS가 직접 설치된 전통적인 구조
  • 일반적인 개인용 PC 형태
  • 하드웨어당 하나의 OS만 설치 가능

5. 가상화의 진화 과정 (3세대)


출처 : https://www.openmaru.io/%EC%84%9C%EB%B2%84-%EC%A7%84%ED%99%94/

세대이름방식특징
1세대완전 가상화 (Full Virtualization)에뮬레이터 기반 가상 머신모든 하드웨어를 프로그램으로 모사 (느림, 성능 저하)
2세대하이퍼바이저 기반 (Para Virtualization)**하이퍼바이저(가상화 매니저)**가 OS와 하드웨어 중간 역할일부 가상화 지원, 속도 개선 (하지만 여전히 제한적)
3세대HVM (Hardware Virtual Machine)하드웨어가 직접 가상화 지원게스트 OS가 직접 하드웨어와 통신 → 베어메탈에 가까운 성능

1세대 – Full Virtualization (완전 가상화)

  • 하드웨어 전체를 프로그램(에뮬레이터)로 구현
  • 모든 구성 요소(CPU, 메모리, 디스크 등)를 소프트웨어가 흉내냄
  • 예시: 매트릭스 영화처럼 모든 것이 가상인 상태
  • 속도가 매우 느림, 현실적인 사용 어려움

2세대 – Para Virtualization

  • 하이퍼바이저라는 소프트웨어가 등장

    • OS와 하드웨어 사이에서 가상화를 관리
  • 게스트 OS가 하이퍼바이저와 통신

  • 속도는 개선되었지만 일부 요소는 여전히 에뮬레이션에 의존

3세대 – HVM (Hardware Virtualization)

  • 하드웨어가 직접 가상화 기능 내장
  • 게스트 OS가 하이퍼바이저를 거치지 않고 직접 하드웨어와 통신
  • 거의 베어메탈 수준의 속도
  • AWS EC2 인스턴스에서 HVM 기반 AMI 선택 가능

6. AWS에서 가상화가 중요한 이유

  • EC2 인스턴스 생성 시 HVM을 선택

    • HVM: Hardware-assisted Virtual Machine의 약자
    • 실제 하드웨어처럼 빠르고 유연한 가상 환경 제공
  • AWS에서는 사용자가 요청 시마다 실제 서버를 만들어주는 것이 아님

    • 미리 준비된 고성능 서버에 가상화 기술을 적용해 빠르게 자원을 할당
    • 사용 후 반납되면 다음 사용자에게 재할당

7. 클라우드와 가상화의 관계

  • 가상화는 클라우드의 기반이 되는 핵심 기술
  • 가상화 없이는 클라우드도 존재할 수 없음
  • 클라우드에서 리소스를 빠르게 생성·삭제할 수 있는 이유는 가상화 덕분

참고

profile
말하는 고구마

0개의 댓글