CS | 가상화(Virtualization)

성수당·2025년 8월 7일

나혼자 CS

목록 보기
16/18
post-thumbnail

🥔 가상화란?

가상화(Virtualization) 는 하나의 물리적인 컴퓨터(서버) 자원을 논리적으로 분리해서 여러 개처럼 사용하는 기술이다.

예를 들어, 컴퓨터 한 대를 🧑‍💻 개발자가 두 명이 나눠 쓴다고 할 때, 서로 간섭 없이 각각의 OS를 설치하고 독립적으로 사용할 수 있다면 얼마나 좋을까?

그걸 가능하게 하는 기술이 바로 가상화다.

🥔 가상화의 종류

1️⃣ 하드웨어 가상화 (서버 가상화)

  • 대표 예: VMware, VirtualBox, KVM

  • 물리적인 서버 하나에 여러 개의 가상 머신(VM) 을 띄움

  • 각 가상 머신은 자체 OS와 자원을 가짐

2️⃣ 운영체제 수준 가상화 (컨테이너 가상화)

  • 대표 예: Docker 🐳

  • 하나의 OS 커널을 공유하면서, 격리된 컨테이너를 실행

  • VM보다 가볍고 빠름

🥔 하이퍼바이저(Hypervisor)

가상화를 가능하게 해주는 핵심 기술이다.

종류설명예시
Type 1 (Native)하드웨어 위에 직접 설치VMware ESXi, Hyper-V
Type 2 (Hosted)기존 OS 위에 설치VirtualBox, VMware Workstation

| Hypervisor는 가상 머신의 생성, 자원 할당, 실행 등을 담당합니다.

🥔 가상화 vs 컨테이너 (Docker)

항목가상머신(VM)컨테이너(Docker)
OS 구조전체 OS 포함OS 공유 (커널만 공유)
무게감무거움가벼움
부팅 속도느림 (수 분)빠름 (수 초)
격리 수준높음낮음 (커널 공유)
대표 기술VMware, VirtualBoxDocker, Podman
  • VM은 완전히 독립적인 환경이 필요할 때

  • Docker는 빠르고 가벼운 실행 환경이 필요할 때

🥔 가상화의 장단점

👍 장점

  • 자원 활용도 향상

  • 유지/보수 효율 증가

  • 테스트 환경 격리

  • 물리 서버 비용 절감

👎 단점

  • 성능 손실 (VM은 오버헤드 존재)

  • 설정 복잡도

  • 하이퍼바이저의 보안 위협

🥔 가상화 활용 사례

분야사용 예시
개발테스트용 VM 생성, 다양한 OS 환경 검증
서버하나의 서버에 여러 VM을 띄워 서비스
클라우드AWS, Azure는 모두 가상화 기반
보안샌드박스 분석 환경 등
profile
말하는 감자🥔

0개의 댓글