Outdated/Infrastructure

[Infra] 가상화(Virtualization)

해달 2019. 7. 1. 08:00

목차

  1. 가상화(Virtualization)란?

  2. 가상화의 작동 원리

  3. 가상화를 통해 얻을 수 있는 이점

  4. 가상화 적용 분야

  5. 참고자료


1. 가상화(Virtualizaiton)란?

 가상화란 단일한 물리 하드웨어 시스템에서 여러 시뮬레이션 환경이나 전용 리소스를 생성할 수 있는 기술을 말한다. 그래서 물리적 머신의 기능을 여러 사용자 또는 환경에 배포해 물리적 머신을 최대한 활용할 수 있습니다. 즉, 효용률(utilization rate)을 올린다.

2. 가상화의 작동 원리

 가상화는 하이퍼바이저[각주:1](hypervisor) 또는 가상 머신 모니터(VMM, virtual machine monitor)라고도 불리는 기술을 이용해 단일 물리 하드웨어 시스템을 가상 머신(virtual machine)이라는 별도의 고유하고 안전한 환경으로 분할되어 이뤄진다. 여기서 하이퍼바이저가 설치된 물리 하드웨어를 호스트(host),  가상화된 리소스를 사용하는 가상 머신을 게스트(guest)라고 한다.


 이후, 사용자는 가상 환경과 상호 작용을 하게 된다. 사용자 또는 프로그램이 물리 환경에서 추가 리소스를 요구하는 명령을 내리면 하이퍼바이저가 그 요청을 물리 시스템에 전달하고 변경사항을 캐시한다.

3. 가상화를 통해 얻을 수 있는 이점

 가상화가 이뤄지면 물리 리소스를 풀링[각주:2](pooling)할 수 있어 하드웨어를 범용적으로 사용할 수 있고, 가상 머신의 모든 상태가 파일에 저장되기 때문에 이동과 복사가 매우 쉽다. 또한, 보안적인 측면에서도 하드웨어 수준에서 오류와 보안의 독립성이 보장되기 때문에 안전하다고 할 수 있다. 정리하자면 다음과 같다.


  • 자본 및 운영 비용 절감

  • 다운타임[각주:3](downtime) 최소화 또는 제거

  • IT 생산성, 효율성, 대응력, 응답성 향상

  • 애플리케이션과 리소스를 더 신속하게 프로비저닝[각주:4](provisioning)

  • 비즈니스 연속성 및 재해 복구 향상


4. 가상화 적용 분야

 많이 사용되는 것만 나열한다.


  • 서버 가상화(Server Virtualization)

    • 단일의 물리 서버에서 여러 가상 서버를 운용하여 다양한 서비스를 제공할 수 있게 한다. 


  • 운영 체제 가상화(Operation System Virtualization)

    • 단일의 물리 머신에서 여러 OS를 실행할 수 있게 해준다.

  • 네트워크 가상화(Network Virtualization)

    • 물리적인 네트워크 형태를 따르지 않는 가상적/논리적 망 또는 회선을 말한다.

    • 보통, 매우 다양한 네트워크가 하나의 물리 매체 상에 혼재되어 구성된다.

    • 1개의 원래 네트워크로부터 가상의 격리된 네트워크를 생성할 수 있다.

    • 디렉터리 서비스, 파일 공유, IP 설정과 같은 네트워크의 주요 기능을 분리하여 이러한 기능을 환경에 배포한다.

    • ex) VLAN, VPN, 가상회선, 클라우드 가상화, SDN 등

  • 메모리 가상화(Memory Virtualization)

    • 실제 사용가능한 메모리보다 더 큰 메모리를 사용할 수 있게 한다.

    • ex) 페이징, 세그멘테이션

  • 스토리지 가상화(Storage Virtualization)

    • 물리적인 저장장치를 논리적으로 나누거나 결합시켜 사용률을 극대화시킨다.

    • ex) 디스크 파티셔닝, 네트워크 기반 스토리지 가상화 등

  • 어플리케이션 가상화(Application Virtualization)

    • 각 어플리케이션이 플랫폼 자원요소(OS, 하드웨어 등)를 독립적으로 제공 받게 한다.

    • 주로, 유사 어플리케이션 간 자원 사용 충돌을 회피하는 기술

    • ex) LXC, Microsoft App-V 등

  • 클라우드 컴퓨팅(Cloud Computing)

    • 네트워크를 통해 흩어져 있는 IT 자원을 하나처럼 쉽게 다루게 하는 기술

    • ex) 구글 드라이브, AWS 등

5. 참고자료


  1. 가상 머신을 생성하고 실행할 수 있는 컴퓨터 소프트웨어, 펌웨어 혹은 하드웨어를 일컫는다. 종류에는 native 혹은 bare-metal과 hosted로 나뉜다. 전자는 직접적으로 하드웨어를 제어하며 Microsoft Hyper-V 등이 있고, 후자는 OS 위에서 작동되는 것으로 VirtualBox 등이 있다. [본문으로]
  2. 사용할 수 있게 준비된 리소스들의 집합 [본문으로]
  3. 시스템을 이용할 수 없는 시간 [본문으로]
  4. 사용자의 요구에 맞게 시스템 자원을 할당, 배치, 배포해 두었다가 필요 시 시스템을 즉시 사용할 수 있는 상태로 미리 준비해 두는 것 [본문으로]

'Outdated > Infrastructure' 카테고리의 다른 글

[Infra] 컨테이너(Container)  (0) 2019.07.02