가상 시스템은 애플리케이션 및 게스트 운영 체제가 실행되는 논리적 컨테이너입니다. 설계에 따라 모든 VMware 가상 시스템은 서로 분리됩니다. 이러한 분리를 통해 하드웨어를 공유하면서 여러 가상 시스템을 안전하게 실행할 수 있으며 하드웨어에 액세스하는 기능과 중단 없는 성능을 활용할 수 있습니다.

가상 시스템의 게스트 운영 체제에 대한 시스템 관리자 권한이 있는 사용자도 이 분리 계층을 침해하여 다른 가상 시스템에 액세스할 수 없습니다. 이러한 액세스에는 ESXi 시스템 관리자가 명시적으로 부여한 권한이 필요합니다. 가상 시스템이 분리되어 있으므로 한 가상 시스템에서 실행되고 있는 게스트 운영 체제에 장애가 발생해도 동일한 호스트에 있는 다른 가상 시스템은 계속 실행됩니다. 사용자는 다른 가상 시스템에 계속해서 액세스할 수 있으며 다른 가상 시스템의 성능에는 영향이 없습니다.

각 가상 시스템은 동일한 하드웨어에서 실행되는 다른 가상 시스템과 분리됩니다. 가상 시스템이 CPU, 메모리, I/O 디바이스 등과 같은 물리적 리소스를 공유하지만 개별 가상 시스템의 게스트 운영 체제는 사용하도록 지정된 가상 디바이스만 감지할 수 있습니다.

그림 1. 가상 시스템 분리
가상 시스템 분리

VMkernel은 모든 물리적 리소스를 중재합니다. 모든 물리적 하드웨어 액세스가 VMkernel을 통해 발생하며 가상 시스템은 이 분리 수준을 무시할 수 없습니다.

물리적 시스템이 네트워크 카드를 통해 네트워크의 다른 시스템과 통신하는 것과 마찬가지로 가상 시스템은 가상 스위치를 통해 동일한 호스트에서 실행되고 있는 다른 가상 시스템과 통신합니다. 또한 가상 시스템은 물리적 네트워크 어댑터를 통해 다른 ESXi 호스트에 있는 가상 시스템을 비롯한 물리적 네트워크와 통신합니다.

그림 2. 가상 스위치를 통한 가상 네트워킹
ESXi에 대한 가상 스위치를 통한 가상 네트워킹

가상 네트워킹도 가상 시스템 분리의 영향을 받습니다.

  • 다른 가상 시스템과 가상 스위치를 공유하지 않는 가상 시스템은 호스트 내의 기타 가상 시스템과 완전히 분리됩니다.
  • 가상 시스템에 물리적 네트워크 어댑터가 구성되어 있지 않으면 가상 시스템이 완전히 분리됩니다. 즉 물리적 및 가상 네트워크 모두에서 분리됩니다.
  • 방화벽, 백신 소프트웨어 등으로 네트워크를 보호하는 경우 가상 시스템이 물리적 시스템 수준으로 보호됩니다.

또한 호스트에서 리소스 예약 및 제한을 설정하여 가상 시스템을 추가로 보호할 수 있습니다. 예를 들어 리소스 할당을 사용하여 가상 시스템이 항상 호스트 CPU 리소스의 10% 이상, 20% 이하를 사용하도록 구성할 수 있습니다.

리소스 예약 및 제한은 다른 가상 시스템이 공유 하드웨어 리소스를 과도하게 사용할 경우 발생할 수 있는 성능 저하로부터 가상 시스템을 보호합니다. 예를 들어 호스트의 가상 시스템 중 하나가 서비스 거부(DoS) 공격으로 무력화되는 경우에도 해당 시스템에 적용된 리소스 제한으로 인해 서비스 거부 공격이 하드웨어 리소스를 많이 점유할 수 없으며 다른 가상 시스템에도 영향이 없습니다. 마찬가지로, 각 가상 시스템의 리소스 예약은 DoS 공격의 목표가 된 가상 시스템의 리소스 요구량이 높아진 경우에도 다른 모든 가상 시스템이 작동에 충분한 리소스를 사용할 수 있도록 보장합니다.

기본적으로 ESXi는 다른 시스템 구성 요소가 사용하는 특정 리소스 비율을 유지한 채 사용 가능한 호스트 리소스를 가상 시스템 간에서 동등하게 나누는 분배 알고리즘을 적용하여 리소스 예약을 처리합니다. 이 기본 동작은 DoS 및 분산 서비스 거부(DDoS) 공격에 대한 자연스러운 보호 수준를 제공합니다. 가상 시스템 구성에서 동등한 분배를 사용하는 대신 개별 시스템 단위로 구체적인 리소스 예약 및 제한을 설정하여 기본 동작을 사용자 지정할 수 있습니다.