서버 가상화란 무엇입니까?
서버 가상화는 조직이 서버 소프트웨어를 하드웨어로부터 분리하여 하나의 물리적 서버에서 실행되는 자체 운영 체제와 애플리케이션을 사용하는 여러 가상 서버를 만드는 프로세스입니다. 각 가상 서버는 다른 가상 서버로부터 분리되며 호환성 문제 없이 완전히 독립적으로 실행됩니다. 서버 가상화는 클라우드 컴퓨팅을 위한 기본 기술이며 다양한 하이브리드 클라우드 모델을 지원합니다.
서버를 가상화하면 비용 효율적으로 웹 호스팅 서비스를 사용하거나 제공할 수 있으며, 인프라 전체에서 컴퓨팅, 스토리지, 네트워킹 리소스를 최대한 활용할 수 있습니다. 서버가 하루 종일 작동하는 경우는 거의 없으므로 많은 서버 리소스가 사용되지 않은 상태로 있습니다. 사실, 전문가들에 따르면 특정 시간에 서버가 15%~25%만 사용되는 경우가 흔하다고 합니다. 워크로드가 조직의 전체 서버 중 일부에 배포되면서 서버는 몇 시간 또는 며칠 동안 유휴 상태에 있을 수 있습니다. 이러한 유휴 상태의 서버는 데이터센터의 공간을 불필요하게 차지하고, 전력을 낭비하고, IT 직원의 관심과 관련한 노력이 필요합니다.
서버 가상화를 통해 수십 개의 가상 서버(가상 머신 또는 VM이)를 로드하여 서버의 리소스를 더 효과적으로 사용할 수 있습니다. 그러면 더 적은 물리적 머신으로 데이터센터의 효율성을 높일 수 있습니다. 가상화를 통해 리소스 활용도를 쉽게 향상하고 각 워크로드의 변화하는 요구 사항에 동적으로 대응할 수 있습니다.
가상 서버란 무엇입니까?
가상 서버는 전용 물리적 서버에서 가상화된 "인스턴스"입니다. 자체 운영 체제, 정책, 애플리케이션, 서비스를 가진 격리된 공간입니다. 가상 서버는 독립적으로 작동하지만 다른 많은 가상 머신과 함께 단일 서버에 상주하며, 하이퍼바이저를 사용하여 다른 머신들과 소프트웨어 및 하드웨어 리소스를 공유합니다. 각 가상 서버는 주 물리적 서버인 호스트의 게스트로 간주됩니다.
서버 가상화의 작동 원리
IT 관리자는 하나의 물리적 서버에서 여러 가상 머신을 만들어 각 가상 머신을 독립적으로 구성할 수 있습니다. 관리자는 가상 머신 모니터라고도 불리는 하이퍼바이저를 사용하여 이 작업을 수행합니다. 하이퍼바이저는 서버의 소프트웨어를 하드웨어로부터 분리하도록 지원할 뿐만 아니라 컨트롤러로서 호스트 서버의 모든 가상 머신을 정리 및 관리하고 리소스를 할당합니다.
하이퍼바이저는 추상화를 통해 네트워크 인터페이스, 스토리지, 메모리, 프로세서 등 모든 컴퓨터의 리소스를 정리하고 각 리소스에 논리적 별칭을 부여합니다. 하이퍼바이저는 이러한 리소스를 사용하여 가상 서버, 즉 VM을 만듭니다. 각 VM은 가상화된 프로세서, 메모리, 스토리지, 네트워킹 툴로 구성되어 있으며, 다른 여러 VM과 함께 상주하지만 자신이 여러 VM 중 하나라는 것을 "인식"하지 못합니다. 이러한 VM은 마치 하나의 물리적 서버가 있는 것처럼 완전히 독립적으로 작동합니다.
조직에 하나의 물리적 서버가 있다고 생각해 봅시다. 이 물리적 서버 안에는 완전히 별도로 기능하는 여러 컴퓨터가 작동 중입니다. 호스트 서버에는 서로 다른 OS를 사용하는 VM과 일반적으로는 함께 작동하지 않을 수 있는 다양한 애플리케이션과 시스템이 있을 수 있습니다.
하이퍼바이저는 모든 호스트 서버의 VM을 모니터링하고 감독하면서 필요에 따라 리소스를 재할당할 수 있습니다. 예를 들어, 한 VM이 하룻밤 동안 유휴 상태라면, 이 VM의 컴퓨팅 및 스토리지 리소스는 이 시간 동안 추가 리소스가 필요할 수 있는 다른 VM으로 재할당 될 수 있습니다. 이러한 방식으로 서버의 리소스를 전반적으로 훨씬 더 많이 활용할 수 있습니다.
또한 VM은 필요시 간단한 복제 또는 클로닝 작업을 통해 다른 호스트 서버로 이동할 수 있습니다. 호스트 서버에 수용할 수 있는 VM 개수를 제한하는 유일한 요인은 컴퓨터 리소스입니다. 따라서 더 많은 리소스가 있는 새로운 컴퓨터가 당연히 더 많은 VM을 지원합니다.
서버 가상화는 클라우드 컴퓨팅의 중요한 구성 요소입니다. 많은 전문가들은 서버 가상화를 자동화, 셀프 서비스, 종합적인 모니터링 등의 다른 구성 요소와 함께 클라우드 컴퓨팅의 주요 구성 요소 중 하나로 간주합니다. 가상화를 통해 여러 VM 사이에 서버 리소스를 분배하고 워크로드 격리를 포기하지 않고 필요한 확장을 매우 빠르게 수행할 수 있으므로 클라우드 컴퓨팅이 가능해집니다.
서버 가상화의 유형
서버 가상화의 유형은 세 가지이며, 이 세 가지의 주된 차이는 각 VM의 격리 정도입니다.
- 완전 가상화 – 이 서버 가상화 유형은 위에서 설명한 가상화와 가장 유사합니다. 물리적 호스트 서버의 리소스가 나뉘어져 서로 완전히 분리되고 호스트에 있는 다른 VM을 인식하지 못한 채 독립적으로 작동하는 여러 가상 머신을 만듭니다. 이 유형을 위한 하이퍼바이저를 흔히 베어메탈 하이퍼바이저라고 부릅니다. 이러한 하이퍼바이저는 물리적 하드웨어에 직접 설치되고 하드웨어와 VM 그리고 VM의 고유한 운영 체제 사이의 레이어로 기능하기 때문입니다. 이러한 유형에서 발생할 수 있는 유일한 단점은 매우 중요한 하이퍼바이저가 자체 리소스 요구 사항을 갖게 되어 때로는 성능 저하를 유발할 수 있다는 점입니다. 완전 가상화의 경우 호스트 서버는 운영 체제가 필요하지 않습니다.
- 반가상화 – 이 유형에서는 VM이 호스트 서버의 다른 VM을 완전히 인식하지 못하지 않습니다. VM은 어느 정도 격리되지만, 여전히 네트워크 전역에서 함께 작동합니다. VM이 리소스 할당 작업을 어느 정도 직접 수행하기 때문에 하이퍼바이저가 시스템 전체를 관리하는 데 필요한 처리 성능이 더 적습니다. 반가상화의 경우 호스트 서버에 운영 체제가 있어야 하며, 호스트 서버는 하이퍼콜 명령을 통해 하이퍼바이저와 함께 작동해야 합니다. 하이퍼콜 명령으로 하이퍼바이저는 VM을 생성하고 관리할 수 있습니다. 이 유형은 초기 베어메탈 하이퍼바이저의 성능 문제를 해결하기 위해 등장했습니다. 하이퍼바이저는 호스트 서버의 물리적 베어 하드웨어에 직접 설치되는 대신 호스트 서버의 OS와 VM 사이의 레이어가 됩니다. 최신 서버는 베어메탈 하이퍼바이저를 더 효과적으로 지원하고 이와 함께 작동하도록 설계되고 있기 때문에 현재 반가상화는 흔하게 사용되지 않습니다.
- OS 수준 또는 호스팅 가상화 – 이 가상화 유형은 하이퍼바이저를 필요로 하지 않습니다. 모든 가상화 기능은 하이퍼바이저를 대신하는 호스트 서버의 운영 체제가 지원합니다. 이 유형의 한계점 한 가지는 각 VM이 여전히 독립적으로 작동하지만, 모든 VM이 호스트 서버와 같은 OS를 사용해야 한다는 것입니다. 이는 VM이 호스트 OS의 공통 바이너리와 라이브러리도 공유함을 의미합니다. 이 유형은 가장 기본적인 서버 가상화 방법으로 간주되지만 다른 유형보다 적은 리소스를 사용하여 관리하고 유지보수할 수 있습니다. OS 수준 가상화는 각 VM을 위한 OS를 복제하지 않아도 되므로 단일 서버에서 수천 개의 VM을 지원할 수 있습니다. 그러나 한 가지 단점은 이 유형이 단일 장애 지점을 유발한다는 것입니다. 호스트 OS가 공격을 받거나 특정 이유로 인해 다운되면 모든 VM도 영향을 받습니다.
서버 가상화의 이점
서버 가상화의 이점은 다음과 같습니다.
- 더 적은 비용과 물리적 하드웨어로 서버 리소스 활용 효율성 향상
- 서버 통합을 통한 비용 절감, 하드웨어 상면 감소, 낭비되거나 유휴 상태인 리소스 방지
- 서로 다른 OS와 애플리케이션을 사용하는 VM을 만들 수 있는 유연성을 통해 서버 활용 다양성 향상
- 전용 워크로드에 VM을 사용할 수 있어 애플리케이션 성능 향상
- 빠르고 쉬운 VM 복제 및 클로닝, 그리고 필요시 다양한 호스트 서버로 VM을 이동할 수 있는 유연성을 활용하여 워크로드를 더 신속하게 배포
- 서버의 무분별한 확장과 다수의 물리적 서버 관리 및 유지보수를 줄여 IT 생산성과 효율성을 향상
- 기존 VM, 스냅샷을 손쉽게 복제하고 원하는 대로 이동하여 재해 복구 및 백업 이점 추가
- 공간을 차지하고 냉각과 전원이 필요한 물리적 머신의 수를 줄여 에너지 소비 감소
- 각 VM이 호스트 서버에서 격리되므로 보안 위협 감소, 하나의 VM이 공격을 받아도 다른 VM이 반드시 침해되는 것은 아님
서버 가상화의 문제점
서버 가상화의 이점이 많지만, 문제점도 존재합니다.
- 하나의 물리적 서버가 다양한 애플리케이션과 서비스를 사용하는 수십 개의 다양한 VM을 호스팅할 수 있으므로 소프트웨어 라이선스 적용이 복잡할 수 있습니다(그리고 비용이 많이 들 수 있습니다). 예를 들어, 완전 서버 가상화의 경우 각 VM에 자체 OS가 있으므로 각 OS는 별도의 라이선스를 요구합니다.
- 호스트 서버 장애 발생 시 모든 VM에 악영향이 발생할 수 있습니다. 예를 들면, 애플리케이션 1개가 아니라 10개가 다운될 수 있습니다.
- IT 팀이 VM의 위치, 사용 방식 및 시기를 파악하고 있지 않으면 VM의 무분별한 확장이 문제가 될 수 있습니다. 예를 들면, 새로운 인스턴스 스핀업이 너무 쉽기 때문에 많은 VM이 테스트를 위해 일시적으로 사용된 후 방치될 수 있습니다. 그리고 이러한 VM을 시스템에서 삭제하지 않으면, 백그라운드에 남아 활성 VM에 필요한 전력과 리소스를 계속 소비할 수 있습니다.
- 사전에 숙고하고 계획하지 않고 VM을 계획하여 생성할 경우, 호스트에 많은 리소스가 필요한 너무 많은 VM이 있게 되어 서버 성능이 느려질 수 있습니다. 특히 네트워킹과 메모리 측면에서 그렇습니다.
서버 가상화는 안전합니까?
서버 가상화는 내재적인 보안 이점이 있습니다. 예를 들면, 데이터가 승인되지 않았거나 보안이 약한 엣지 또는 사용자 디바이스에 저장되는 대신 관리하기가 상당히 간편한 중앙집중화된 장소에 저장된다는 이점이 있습니다. VM 간 격리 또한 공격, 멀웨어, 바이러스 및 기타 취약점을 격리하는 데 도움이 됩니다.
가상화의 액세스 제어는 세분화되어 있으므로 IT 팀은 누가 시스템에 저장된 데이터에 접근할 수 있는지에 대해 더 큰 통제력을 가질 수 있습니다. 단일 워크로드 수준까지 특정 애플리케이션 또는 리소스에만 사람들에게 액세스를 허용하는 데 마이크로세그멘테이션이 흔히 사용됩니다. 또한, 데스크탑을 가상화하면 IT 직원이 운영 체제 및 애플리케이션 업데이트와 패치 적용을 책임지도록 하는 데 도움이 됩니다. 이러한 작업은 사용자가 개인적으로 파악하지 못할 수 있습니다.
하이퍼바이저는 더 적은 리소스로 실행될 수 있으므로 하드웨어 솔루션에 비해 공격 표면이 더 작아 보안 위험이 줄어듭니다. 또한 자동으로 업데이트되므로 진화하는 위협으로부터 보호하는 데 도움이됩니다.
반면, 서버 가상화는 몇 가지 보안 위험을 제시할 수 있습니다. 가장 흔한 위험 중 하나는 가상화된 환경의 복잡성 증가입니다. VM은 상당히 쉽게 복제할 수 있고 워크로드는 다른 위치로 이동할 수 있으므로 IT 팀이 보안 모범 사례를 준수하기가 더 어렵습니다. 생태계 전체에 일관적인 구성 또는 정책을 유지하는 일도 더 어렵습니다.
VM의 무분별한 확장 역시 보안 위험을 야기할 수 있습니다. 유휴 상태의 방치된 VM은 리소스와 전력을 계속 소비할 뿐만 아니라 패치 또는 업데이트가 적용되지 않을 가능성이 높습니다. 이로 인해 취약성과 잠재적 공격 위험이 증가합니다.
VM 간의 격리는 한 측면에서는 보안 위험을 감소시킬 수 있지만, 분산 서비스 거부(DDoS) 공격의 영향을 줄여주지는 못합니다. DDoS 공격의 악의적인 트래픽으로 VM을 폭격하여 VM의 성능에 영향이 발생하면, 호스트 서버의 리소스를 공유하는 다른 VM도 영향을 받습니다.
IT 팀은 모범 사례를 따라 서버 가상화가 제기하는 보안 위험을 줄일 수 있습니다. 여기에는 시스템 전체에서 모든 소프트웨어와 펌웨어를 최신 상태로 유지하는 것, 가상화 솔루션을 위해 설계된 바이러스 백신 및 기타 소프트웨어를 설치하고 업데이트하는 것, 누가 시스템에 액세스하는지 파악하는 것, 네트워크 트래픽을 암호화하는 것, 사용되지 않는 VM을 삭제하는 것, VM과 물리적 서버에 정기적 백업을 수행하는 것, VM 및 호스트 서버에 분명하고 상세한 사용자 정책을 실행하는 것 등이 포함됩니다.
서버 가상화 사용 사례
- 데이터센터 통합 – 서버를 가상화하여 물리적 하드웨어의 필요성을 줄이고 전력 및 냉각 비용을 절감할 수 있습니다.
- 테스트 환경 – 새로운 VM 인스턴스를 스핀업하고 프로비저닝하는 것이 너무 쉽기 때문에 많은 조직이 개발 및 테스트 이니셔티브를 위해 VM을 사용하고 있습니다.
- 데스크탑 가상화 – 가상화된 데스크탑 인프라는 유연성, 중앙집중식 관리, 보안 강화, 단순성이라는 이점을 제공합니다.
- 백업 및 재해 복구 – 가상화를 통해 VM의 백업과 스냅샷을 간편하게 만들고 재해 발생 시 신속하게 복구할 수 있으므로, 가상화는 훌륭한 백업 및 재해 복구 방법입니다.
- 클라우드 컴퓨팅 – 클라우드 컴퓨팅은 가상화와 자동화에 크게 의존합니다.
- 가용성 향상 – VM . 라이브 마이그레이션을 통해 서비스를 중단하지 않고 물리적 서버 간에 VM을 이동할 수 있습니다. 또한 가상화는 비즈니스 크리티컬 시스템과 애플리케이션이 유지보수 주기 동안 또는 새 환경을 테스트할 때 계속 실행되도록 지원합니다.
- 여러 플랫폼 지원 – 가상화를 통해 OS 전용 하드웨어 없이 서로 다른 운영 체제로 다양한 워크로드를 실행할 수 있습니다.
서버 가상화 구현
조직 전체에 서버 가상화를 구현하려고 계획 중일 때 몇 가지 중요한 단계를 염두에 두어야 합니다. 다음은 도움이 될 만한 몇 가지 모범 사례입니다.
- 계획 수립 – 모든 이해 관계자가 본격적인 이니셔티브를 추진하기 전에 가상화 플랫폼이 어째서 왜 필요한지 제대로 이해해야 합니다. 비용과 잠재적 복잡성을 고려하십시오. 가상화 플랫폼이 비즈니스 계획에 부합합니까?
- 기존 솔루션 파악 – 프로젝트의 규모에 대한 감을 잡기 위해 하드웨어 및 솔루션을 평가하는 것이 중요합니다. 사용 가능한 솔루션은 무엇이 있습니까? 경쟁사는 무엇을 사용 중입니까? 이 단계에서 실사를 수행하면 성공적인 구현에 많은 도움이 될 것입니다.
- 테스트 및 실험 – 고려 중인 솔루션이 실제 환경에서 어떻게 작동하고 일상적 운영에 어떤 영향을 끼칠지 알아보기 위해 해당 솔루션을 사용해 봐야 합니다. IT 팀이 생성할 작업을 손쉽게 관리할 수 있을까요? IT 팀은 구매 결정을 내리기 전에 솔루션이 마음에 드는지 확인해야 합니다. 결국 솔루션을 관리하고 실행할 사람들은 IT 팀입니다. IT 팀은 솔루션의 잠재적 단점과 문제를 잘 알고 있어야 합니다.
- 비즈니스 요구 사항 고려 – 제안된 솔루션이 조직의 고유한 가상화 요구 사항을 충족합니까? 이 솔루션은 IT 인프라의 보안, 규정 준수, 재해 복구 계획 등에 어떤 영향을 끼칠까요? IT 팀은 솔루션이 생태계 전체에 가져올 파급효과를 충분히 이해하고 있어야 합니다.
- 소규모로 시작 후 확장 – 조직이 가상화를 처음 시도해 본다면 비필수 시스템에 대해 소규모 배포 환경으로 먼저 실험해 보는 것이 현명합니다. 이를 통해 IT 팀은 일상적으로 이러한 솔루션을 실행하고 관리하는 데 필요한 것이 무엇인지 배울 수 있습니다.
- 일련의 가이드라인 개발 – VM 프로비저닝과 그 라이프사이클 그리고 모니터링 방법에 대해 충분히 생각해 봐야 합니다. 가이드라인은 예산 범위 내에서 리소스를 낭비하지 않고 VM의 무분별한 확장을 방지하는 데 도움이 됩니다. 또한, 시스템 유지를 위해 합의된 행동 및 책임을 준수하는 데 도움이 됩니다.
- 적절한 툴 선택 – 가상화 플랫폼에 대해 결정을 내린 후에도 솔루션의 고급 기능을 더 활용하고 시스템 관리 효율성을 높이는 데 도움이 되는 추가 툴 사용을 고려해 봐야 합니다.
- 자동화 기억하기 – 자동화는 가상화와 밀접한 관련이 있으므로 IT 직원은 자동화 방법과 툴을 잘 이해하고 있어야 합니다.
VM 관리를 위한 모범 사례로는 무엇이 있습니까?
서버 가상화의 이점 중 하나는 서버 관리를 중앙집중화하고 단순화한다는 것이지만, 서버 가상화는 몇 가지 문제도 야기할 수 있습니다. 특히 IT 직원이 가상화 기술 및 방법에 익숙하지 않은 경우 그렇습니다. VM을 효율적으로 관리하기 위한 모범 사례 몇 가지는 다음과 같습니다.
셀프 서비스 관리를 통해 VM의 무분별한 확장 억제 – 이 글에서 앞서 언급한 대로, VM을 만드는 것은 매우 쉽고, VM이 더 이상 사용되지 않을 때 이에 대해 잊어 버리는 것은 훨씬 더 쉽습니다. 셀프 서비스 VM 관리에 의존하면 이러한 사용되지 않는 VM을 삭제할 책임을 사용자의 손에 쥐어주게 됩니다. 셀프 서비스는 이들이 자체 VM을 요청해야 함을 의미합니다. 즉, VM을 더 쉽게 관리할 수 있습니다(그리고 삭제할 수 있습니다).
VM을 적절한 크기로 조정하기 위해 템플릿 사용 – 필요한 수준보다 더 많은 리소스로 VM을 만들고 싶은 유혹에 빠질 수 있습니다. CPU를 추가한다고 해서 반드시 성능이 더 나아지지는 않지만, 리소스를 낭비하게 되는 경우는 많습니다. 특정 기능을 위한 VM 템플릿을 만들면 과다프로비저닝을 줄이는 데 도움이 될 수 있습니다.
성능 모니터링에 도움이 되는 적합한 툴 찾기 - 하이퍼바이저와 가상화 플랫폼과 함께 제공되는 툴은 VM 성능에 대한 좋은 인사이트를 제공할 수 있습니다. 그러나 환경이 더 크게 확장됨에 따라 사용되지 않는 VM에 대한 심층적 뷰와 배포 효과성 및 전반적인 성능에 대한 정보를 제공할 수 있는 더 강력한 도구가 필요하게 됩니다.
VM 보안 유지를 위해 적절한 권한을 제공 – 가상화된 환경에서 IT 팀은 관리 작업을 다른 사용자에게 위임할 수 있습니다. 그러나 올바른 사용자에게 위임하는 것이 중요합니다. 인프라의 어느 부분에 어떤 권한이 필요한지 보여주는 계층 구조를 설정할 수 있어야 합니다. 권한 할당을 간단하게 수행할 수 있도록 하되, 필요할 경우 권한 취소도 간단하게 수행할 수 있도록 하는 것이 좋습니다.
VPN 및 다단계 인증을 통해 원격 액세스 지원 – 하이브리드 업무 모델로 재택 근무자가 증가했기 때문에 가상화된 환경에 원격으로수 접속할 수 있는 좋은 방법을 제공하는 것이 중요합니다. 다단계 인증을 통한 VPN 연결이 권장됩니다.
VM을 위해 설계된 백업 및 복구 플랫폼 사용 – VM으로 호스트 서버를 백업할 경우 개별 VM 파일을 복구할 수 있도록 지원하는 백업 플랫폼을 선택하십시오.
Nutanix와 서버 가상화
Nutanix는 서버 가상화와 이 기술이 어떻게 조직의 생산적 업무 수행을 가능하게 하고 향상하는지를 이해하고 있습니다. Nutanix는 배포부터 일상적 관리에 이르기까지 프로세스 전체를 단순화하도록 설계된 다양한 가상화 툴과 솔루션을 갖추고 있습니다.
Nutanix AHV를 사용하면 양보 없이 가상화의 모든 이점을 누릴 수 있습니다. 오늘날의 하이브리드 클라우드 환경을 위해 구축된 AHV는 VM 및 컨테이너 배포와 관리를 쉽고 직관적으로 수행할 수 있도록 해줍니다. 자가 회복 보안 그리고 재해 복구, 풍부한 분석 등을 지원하는 자동화된 데이터 보호와 같이 비용과 복잡성을 발생시키지 않고 필요한 모든 것을 제공합니다.