가상화 - Virtualization 개념 및 종류

앙금빵·2021년 4월 14일
0
post-thumbnail
post-custom-banner

가상화(Virtualization)란?

가상화(Virtualization): 한줄 요약

하나의 물리적 서버에서 여러 운영체제와 애플리케이션을 실행할 수 있도록 하는 소프트웨어 기술

가상화(Virtualization)는 물리적인 컴포넌트(Components, HW장치)를 논리적인 객체로 추상화 하는 것

  • 마치 하나의 장치를 여러개처럼 동작
  • 여러 장치를 묶어 마치 하나의 장치인 것처럼 사용자에게 공유자원으로 제공

가상화 대상이 되는 컴퓨팅 자원은 CPU, Memory, Stroage, Network를 포함하며, 이들로 구성된 서버나 장치들을 가상화함으로써 높은 수준의 자원 사용율과 분산 처리 능력을 제공할 수 있다.

가상화 역사

▶ 가상화 용어는 1960년도에서부터 등장하여 2000년 이후 상용화를 거쳐왔다.
1) 1964년 IBM 메인프레임에서 최초로 시도
2) 서버의 성능은 무어의 법칙을 따랐음.
3) 한 서버에서 한 개의 어플리케이션 동작하는 상황이 늘어나기 시작

서버 한 개당 하나의 어플리케이션을 구동 → 서버의 성능을 전부 활용 X
이렇게 서버가 구동되면 비효율적 → 가상화 기술을 통해 해결하자!

▶ 70년대 현대 컴퓨터 시스템에 맞게 수정되면서 다양한 Vendor 솔루션이 등장.

  • 첫 상용 솔루션은 2001년 발표된 x86용 VMware ESX 솔루션
  • 2003년 Citrix Xen 병렬 오픈소스 솔루션

가상화 종류

가상화 대상에 따라 아래와 같이 나뉜다.

  • 서버 가상화 (Server Virtualization)
  • 데스크톱 가상화 (Virtual Desktop Infrastructure, VDI)
  • 애플리케이션 가상화 (Application Virtualization)

1. 서버 가상화 (Server Virtualization)

  • 가상화 개념의 시초
  • 서버의 효율성을 올리기 위해 등장
  • 하이퍼바이저(Hypervisor)를 통해 제어

    하이퍼바이저(Hypervisor)란?

    하드웨어의 물리적인 리소스들을 가상머신(VM)들에게 제공하고 VM과 하드웨어간의 I/O 명령을 처리한다.
    ※ I/O : Input Output ※

2. 데스크톱 가상화 (Virtual Desktop Infra, VDI)

  • 데이터 센터의 서버에서 운영되는 가상의 PC환경을 의미
  • 가상의 컴퓨터 환경을 중앙서버에서 제공하는 소프트웨어 기술
  • 중앙에 있는 가상화기술을 사용해서 생성된 VM 컴퓨팅 환경을 사용자 PC에서 사용할 수 있도록 화면 값을 전달해 주는 형태

    동일한 데이터와 애플리케이션을 사용하기위해 같은 컴퓨터 필요 X
    아무 컴퓨터나 사용하여 웹을통해 데스크톱 작업을 연속적으로 수행할 수 있다!

  • 중앙서버에 저장된 사용자 데이터는 서버가상화의 보안기능으로 안전하게 보호된다.
  • 망분리나 보안 이슈 이유로 구성하는 경우가 대부분
  • 중앙서버의 네트워크와 스토리지 성능에 따라 VDI 성능이 결정.
    (사용자 PC사양과 관계없음)
  • Network Storage를 사용하기에 인터넷 속도 매우 중요
  • 스토리지 성능에 따라 VDI 작업이 얼마나 쾌적하게 되는지 정해진다.
    (중앙서버를 나눈 스토리지를 나누어 쓰는 형태)

VDI를 사용하는 이유

  • 보안
    업무 환경을 VDI를 통해 인터넷망과 업무망을 구성 가능
  • 관리의 용이성
    (1) 제품의 일관성을 유지하기 위해 배호 및 회수 역시 손쉬워야 함
    (2) VDI 서버에서 동일한 OS나 프로그램을 일괄적으로 생성 및 복제하고 이를 클라이언트에게 할당&회수 하기가 용이하다.
  • 스마트 오피스 구현
    (1) 사내 또는 외부에서 자신의 PC환경에 접속 가능
    (2) 위치에 구애받지 않는 업무환경 → 유연한 업무 환경 조성

3. 애플리케이션 가상화 (Application Virtualization)

  • 애플리케이션을 중앙 서버에 설치하고 가상의 인터페이스만 네트워크를 통해 보내는 기술
  • 응용프로그램은 실제로 설치되지 않으나 마치 설치된 것 처럼 실행

Benefit

  • 관리의 효율성
    수백 수천대의 컴퓨터에 대하여 관리자가 배포 및 업데이트 할 때 일일이 하나하나 모두 설치할 필요 없이, 운영체계나 시스템이 제 각각인 PC에서도 애플리케이션 설치 없이 바로 사용할 수 있다.

  • 응용프로그램간 상호작용
    한 응용프로그램을 업데이트할 때 다른 응용프로그램이 동작하지 않는 문제가 발생하는 경우를 방지

  • 보안
    (1) 보안을 위한 솔루션은 아님
    (2) 액세스 과정에 대한 관리가 가능하며 실제 데이터가 클라이언트 디바이스에 저장되지 않으므로 보안 및 유출의 위험을 원천적으로 봉쇄
    (3) 기업에서 보안용도로 많이 검토 및 도입중


참고

https://www.redhat.com/ko/topics/virtualization/what-is-virtualization
http://www.opennaru.com/cloud/physical-server-virtualization-container/
https://judo0179.tistory.com/m/36
https://spri.kr/files/1544421791_k7LnlkLc9mgJgots3jU7H3BR_0.pdf
http://jongroinf.com/news_Magazine/18474
https://www.comworld.co.kr/news/articleView.html?idxno=8610

Hits

profile
Cloud 관련 개인 공부 지식들을 기록하는 공간입니다.
post-custom-banner

0개의 댓글