가상화

조민철·2024년 8월 24일

가상화 (vSphere)

목록 보기
1/11

💡가상화

가상화란 실제 사람 눈에 존재하는 물리적 장치가 아닌 논리적으로 추상화 되어 만들어지는 장치가 존재한다. Virtual Computer Hardware Platform (가상 컴퓨터 하드웨어 플랫폼), Virtual Storage Device (가상 저장 장치), Virtual Network (가상 네트워크) 를 포함해 동일한 추상화 수준에서 가상 버전을 생성한다.

💡서버 가상화

우리가 속히 서버를 가상화 한다 라고 많이들 표현한다. 현재 서버 가상화라는 기술은 x86(인텔) 기반의 서버라고 불리는 CPU 구조 위에서 동작하는 운영체게 (Linux, Windows)를 사용하는 범용 시스템이 메인프레임/Unix 환경보다 더 빠른 발전을 하게 되어 x86 서버가 일반화 되었다. 그래서 서버 가상화는 하나의 물리적 서버 위에서 여러개의 서버 운영을 할 수 있는 소프트웨어 아키텍처 이다.

💡Hypervisor (하이퍼 바이저)

하이퍼 바이저는 하나의 물리적 시스템에서 다수의 가상머신 (서버)를 실행 시키는 소프트웨어 이다. 가상머신(VM)에 필요한 자원 할당/관리하는 역할을 하기 때문에 가상 머신 모니터 (Virtual Machine VMM)이라고도 불린다.
하이퍼 바이저는 가상화 계층 (Virtualization Layer)를 구현해주는 소프트웨어이다. 가상화 구조에는 하드웨어와 가상 머신이 직접 연결되지 않는다. 중간에 가상화를 도와줄 무언가가 필요한데 하드웨어 위에서 가상 머신을 생성하고, 필요한 만큼 자원을 할당해주고, 가상 머신들을 요청을 처리해주는 매니저가 필요하다. 그 역할을 하는 소프트웨어가 하이퍼 바이저이다.
즉, 하이퍼 바이저는 물리 하드웨어 와 가상 머신의 영역을 분리하고 자신이 그 사이 에서 중간 관리자 인터페이스 역할을 한다.
하이퍼바이저가 요청을 가상서버를 만들어달라는 요청을 받게 된다면 물리 서버가 가진 컴퓨팅 리소스 (CPU, 메모리, Storage, Network)를 가상 서버에 할당해주게 된다. 자체 컴퓨터 자원 OS를 갖춘 컴퓨팅 환경을 VM(Virtual Machine)이라고 불린다. 각 VM들은 별도의 시스템 처럼 행동하고 VM들이 구성되는 컴퓨터(서버)를 호스트 서버라고 부르고 각 VM들을 게스트 서버라고 부른다.

💡하이퍼 바이저의 유형

  • Type 1 하이퍼 바이저 (Bare-Metal Hypervisor)

    1유형의 하이퍼바이저는 Bare-Metal 하이퍼바이저라고도 불리게 되는데 하드웨어 위에서 직접 구동이 되어 게스트 OS를 관리하게 된다. 장점은 오버헤드가 적고, 각 게스트 OS의 문제가 다른 게스트 OS에 영향을 주지 않는다. 하지만 단점으로 VM들을 자체적인 관리 기능이 없어 VM 관리를 위한 컴퓨터, 콘솔이 필요하다. VMware의 ESXi, Citrix의 Xen, MS의 Hyper-V가 대표적인 1 유형의 하이퍼바이저로서 기업용 데이터 센터에서 일반적으로 사용된다.

  • Type 2 하이퍼 바이저 (Hosted Hypervisor)

    2 유형의 하이퍼바이저는 Hosted 하이퍼바이저라고도 불리며 HostOS 위에서 동작하는 형태이다. 호스트OS가 이미 존재하고 하이퍼바이저는 OS위에서 소프트웨어로서 동작한다.
    2 유형은 기존 시스템 위에서 쉽게 사용할 수 있다는 점이 가장 큰 장점이지만 오버헤드가 크고 호스트 OS에 문제가 생기면 게스트 OS에 영향을 줄수있다는 단점이 존재한다.
    대표적으로 VMware의 Workstation 또는 Oracle의 VirtualBox가 존재한다.

💡완전 가상화 (Full Virtualization) VS 반 가상화 (Para Virtualization)

💡완전 가상화 (Full Virtualization)

완전 가상화는 전가상화라고도 하는데 하드웨어를 완전히 가상화하는 방식을 말한다. 전 다 가상화 하기 때문에 Guest OS 가 Host 시스템과 완전히 분리되어 실행된다. Host 하드웨어 와 Guest OS 사이에 하이퍼바이저가 존재하나 가상화된 하드웨어를 물리 하드웨어로 인지하고 실제 물리 자원에 대해 요청을 보낸다고 생각하게 된다.

💡반 가상화(Para Virtualization)

완전 가상화인 경우 거쳐야 할 단계가 많아 오버헤드가 발생하며, 성능이 느려진다 이를 해결하려고 반 가상화가 등장하게 된다. 반가상화는 HyperCall을 사용하는데 Guest OS는 HyperCall이라는 인터페이스를 통해 하이퍼바이저에 직접 요청을 날리게 된다.

💡VM의 각 장단점

VM은 격리된 환경을 제공 하므로 다른 시스템을 방해를 받지 않는다. 격리된 환경으로 인해 다양한 OS 사용 또는 유지 관리 및 자원 활용률에서 장점을 갖게 된다.
장점이 존재하면 단점이 존재하듯이 VM에 단점도 존재하게된다. VM 갯수가 많아지면 성능 및 안정성이 떨어지고 각각 OS를 갖고 있기 때문에 부담이 되기도 한다. 그래서 컨테이너와 많은 비교가 된다.

💡중첩 가상화

중첩 가상화란 물리적 하이퍼바이저 내부에서 가상 하이퍼바이저를 가상머신으로 실행되는 것을 의미한다. 간단히 말해 VM내부에서 VM을 실행하는 경우이다.
주로 사용하는 경우는 교육을 위해서 또는 테스트를 위해서 사용하게 된다.

💡VMware

VMware 라는 회사에는 VMware Workstation 말고도 또 다른 제품이 존재하는데 type 1 하이퍼바이저이다. 기업 환경에서 가상 환경으로 데이터센터를 사용할때 사용되는 환경이다.

  • ESXi
    VMware에서 개발한 Hypervisor (가상화 환경을 만들 수 있도록 최소한의 기능만을 지원하는 축소버전의 OS type 1 Hypervisor 로서 Bare-Metal 환경에서 동작한다.

  • vCenter
    가상화 환경을 만드는 가장 큰 이유는 여러 컴퓨터를 하나의 큰 성능과 용량의 컴퓨터 처럼 사용하기 위함인데 이러 한 기능을 지원하는 것이 vCenter이다.
    vCenter는 가상화 환경 구축을 위한 핵심SW로서 ESXi가 설치된 다수의 머신을 하나의 가상화 환경으로 만들어 주는 기능을 제공한다. 여러가지 기능을 제공한다. (DES, HA 등) vCenter를 이용해 여러 ESXi 호스트를 쉽게 추가 제가가 가능하고 vMotion DRS와 같은 고가용성 기능을 제공한다.

  • vSphere
    엔터프라이즈급 가상화 플랫폼이다. vSphere 환경이 ESXi 와 vCenter를 전부 포함하고 있는 말그대로 플랫폼이다.

profile
기록의 힘은 대단하다

0개의 댓글