가상 머신(vritual machine, VM)은 물리적 서버에서 가상 컴퓨팅 리소스로 작동하는 디지털 환경입니다. 애플리케이션을 실행하고 배포하기 위해 물리적 컴퓨터 시스템 대신 소프트웨어를 사용합니다. 서버, 즉 호스트 1개에는 동시에 실행되는 여러 VM, 즉 게스트가 있을 수 있습니다. 각 가상 머신은 하드웨어 호스트에 있는 다른 VM과 독립적으로 실행되는 자체 운영 체제, 메모리, 스토리지, CPU, 네트워크 인터페이스가 있습니다. 따라서, 예를 들면, 물리적 PC에 문제 없이 MacOS 또는 Linux VM을 실행할 수 있습니다.
VM을 사용하면 단일 컴퓨터에서 다양한 운영 체제를 동시에 실행할 수 있습니다. 각 VM은 다른 VM과 독립적으로 실행되며, 가상 머신을 사용하지 않거나 하나의 물리적 머신에 연결된 하나의 운영 체제를 사용할 때와 같은 엔드투엔드 경험을 제공합니다. 사용자는 VM에서 전용 하드웨어 컴퓨터 시스템과 똑같이 애플리케이션을 사용할 수 있습니다. 원격으로 컴퓨팅 시스템에 액세스하는 대부분의 사용자는 VM을 사용 중인지, 전용 컴퓨터 시스템을 사용 중인지 인식하지 못합니다.
VM은 하나의 물리적 서버 또는 컴퓨터 워크스테이션에 수많은 가상 환경을 호스팅할 수 있는 기술인 가상화에 의존합니다. 호스트 머신은 호스트의 컴퓨팅, 네트워킹, 스토리지 리소스를 필요에 따라 각 VM에 배포하기 위한 하나의 풀로 관리하고 분리하는 하이퍼바이저라는 소프트웨어를 사용합니다.
예를 들면, 가상 머신이 실행 중일 때 사용자(또는 애플리케이션)가 VM에게 현재 리소스보다 많은 리소스를 요구하는 일을 하도록 지시한 경우, 하이퍼바이저는 이 요구를 파악하고 요구를 충족하기 위해 호스트의 풀 또는 공유 리소스의 일부를 재할당합니다.
VM은 기본적으로 "컴퓨터 안의 컴퓨터"로 기능하기 때문에 VM을 사용하면 하나의 머신에 수십 개의 별도의 컴퓨터 시스템을 둘 수 있습니다. 각 VM은 호스트 머신의 기존 OS에 추가하여 애플리케이션 윈도우에서 실행될 수 있습니다. 사용자는 전용 컴퓨터에서와 같이 구성을 변경하고 VM OS를 업데이트할 수 있습니다. 또한 VM에 애플리케이션을 설치하거나 삭제할 수도 있습니다. 가상 머신은 로그, 구성, NVRAM 설정, 가상 디스크 파일 등 많은 공통 파일을 포함하고 있습니다.
가상화 기술은 오랫동안 존재해 왔지만, VM은 원격 근무 및 엔드 유저 컴퓨팅의 인기가 높아지면서 점점 더 보편화되어 왔습니다. 오늘날 VM은 여러 이유로 온프레미스 및 클라우드 환경에서 사용되고 있습니다. 사용 사례의 예는 다음과 같습니다.
가상 머신은 두 가지 기본 유형이 있습니다.
이 가상 머신은 이전 섹션에서 설명한 것과 매우 유사하게 컴퓨터 시스템 전체를 모방합니다. 이러한 가상 머신은 물리적 서버 또는 컴퓨팅 워크스테이션의 격리된 파티션에 위치해 있고 서로 독립적으로 실행되는 자체 운영 체제, 구성, 애플리케이션, 서비스를 가지고 있습니다. 이러한 유형의 VM은 하나의 공유 풀에서 리소스를 가져와 각 VM에 할당하는 하이퍼바이저가 필요합니다. 시스템 VM의 예로는 Nutanix AHV, VMware Fusion, 오픈소스 Xen이 있습니다.
애플리케이션 VM 또는 관리형 런타임 환경(MRE, Managed Runtime Environment)이라고도 불리는 프로세스 VM은 Java 프로그램 또는 Microsoft .NET Framework 등을 실행하기 위해 단일 프로세스를 애플리케이션으로 임시적으로 실행하도록 설정됩니다. 이러한 가상 머신은 지정된 해당 프로세스를 위한 런타임 환경이며, 플랫폼에 의존하지 않습니다. 이들은 호스트의 운영 체제 및 기타 하드웨어를 "숨기기" 위해 고도의 추상화를 제공합니다. 프로세스 VM은 임시적입니다. 즉, 사용자가 특정 프로세스를 시작할 때 생성되고 해당 프로세스가 완료되면 파기됩니다.
퍼블릭 클라우드 제공업체는 워크로드 전반에서 유연성과 확장성을 향상하고자 하고 여러 운영 체제를 기반으로 다양한 애플리케이션을 더 효과적으로 지원하고자 노력 중이므로 가상화와 VM을 점점 더 많이 사용하고 있습니다.
클라우드의 VM은 조직의 데이터센터에 있는 서버의 VM과 같은 방식으로 작동합니다. 유일한 차이점은 여러분의 데이터센터가 아니라 클라우드 VM은 클라우드 서비스 제공업체의 데이터센터에 호스팅된다는 것입니다.
클라우드 VM은 일반적으로 종류가 두 가지입니다.
싱글 테넌트 VM은 단일 고객(일반적으로 조직)이 사용하도록 설계됩니다. 이러한 VM은 전용 호스트 또는 전용 인스턴스일 수 있습니다.
퍼블릭 VM이라고도 불리는 멀티 테넌트 VM은 다중 사용자 물리적 인프라의 여러 고객이 공유합니다. 각 고객의 데이터는 다른 고객의 데이터로부터 격리되지만, 고객은 단일 세트의 애플리케이션, 데이터베이스, 서버 리소스를 공유합니다. 이러한 VM은 일부 고객이 선호하는 높은 수준의 격리와 맞춤화 기능을 제공하지 못하지만, 일반적으로 싱글 테넌트 VM보다 낮은 가격으로 제공되므로 확장성과 비용 효율성이 뛰어납니다.
VM은 물리적 호스트 머신에 비해 많은 장점을 제공하지만, 몇 가지 문제점도 있습니다.
조직들은 여러 가지 현명한 이유로 VM을 사용하며, 이러한 이유 중 다수는 이전 섹션에서 설명했습니다. VM은 대규모 메인프레임 컴퓨터를 공유하는 각 사용자의 데이터를 격리하기 위해 1960년대 초부터 처음 사용되었지만, 현재는 하드웨어 활용도를 높이고, 물리적 하드웨어 상면을 줄이고, 장비 및 물리적 작동 비용을 절약하기 위해 기업들이 더 많이 사용합니다.
가상 데스크탑 인프라(VDI)도 기업에서 VM의 사용을 촉진하는 한 요인입니다. VDI 플랫폼을 통해 직원은 원격 위치와 디바이스에서 데스크탑에 액세스할 수 있습니다. 원격 및 하이브리드 근무 모델이 인기를 얻고 있으므로 이는 분명한 플러스 요인입니다.
조직들은 점점 더 많이 워크로드를 클라우드로 이동하면서 클라우드 기반 VM을 사용하여 하이브리드 환경을 만들고 기존 온프레미스 레거시 환경과 함께 인프라를 구축하고 있습니다.
분리된 VM은 시스템 침입이 발생할 경우 추가적인 보호 레이어를 제공하므로 VM의 보안 이점 또한 또 다른 플러스 요인입니다.
다른 모든 이점과 더불어 비용 절감 및 매우 뛰어난 확장성을 제공할 가능성 역시 큰 이점입니다. 이러한 이점을 통해 현대적인 엔터프라이즈 IT 인프라에서 VM이 왜 중요한 구성 요소로 자리잡았는지 분명히 확인할 수 있습니다.
가상화 플랫폼을 선택할 때 조직은 여러 가지 옵션 중에서 선택할 수 있습니다. 대부분의 플랫폼은 새로운 가상 머신 생성 및 배포를 위한 간소화된 프로세스를 갖추고 있습니다. 많은 솔루션이 편리한 설정 마법사 또는 템플릿을 제공하므로 빠르고 쉽게 시작할 수 있습니다.
많은 가상화 플랫폼이 기업을 위해 설계되고 많은 고급 기능과 맞춤화 옵션을 제공하지만, 비용이 저렴한 단순한 가상화 플랫폼도 있습니다. 그 예로 Oracle의 오픈소스 VirtualBox를 들 수 있습니다.
20,000명 이상의 사용자가 신뢰하는 Nutanix는 가상화를 잘 압니다. Nutanix의 가상화 및 VM 솔루션은 온프레미스, 엣지, 멀티클라우드 또는 이 모든 환경에서 IT 생태계 전체에 걸쳐 쉽게 가상화를 수행하는 데 필요한 고급 엔터프라이즈급 기능을 제공합니다.
Nutanix AHV를 사용하면 높은 워크로드 가용성, 완전히 최적화된 성능 및 활용도, 스택 전체를 대상으로 하는 라이프사이클 관리를 제공하는, 오늘날의 하이브리드 멀티클라우드를 위해 구축된 안전한 플랫폼을 얻을 수 있습니다.
Nutanix VDI는 Nutanix 클라우드 플랫폼의 강력한 성능을 활용하여 컴퓨팅, 가상화, 스토리지, 네트워킹, 보안을 통합함으로써 엔드 유저 컴퓨팅을 간소화합니다.