가상화: 10가지 가상화 모범 사례

가상화가 기술로서 성숙해갈수록, 가상화 응용 프로그램에 대한 모범 사례 역시 정립되고 있습니다. 여러분의 가상화 인프라에 부족한 부분이 있다고 생각하시면 이 점검 목록을 확인해 보시기 바랍니다.

Wes Miller

가상화는 이미 데이터센터와 가상 데스크톱 인프라 분야에서 실험적인 기술을 넘어 주력 구성 요소로 성장했습니다. 그 과정에서 가상화는 일반적인 길과는 다른 길을 걷게 되었고, 실제 컴퓨터에 적용되는 수준의 효율적인 IT 방법론이 적용되지 못했습니다. 이는 명백한 실수입니다.

예산에 제한이 없다면 조직 내의 누구든 새 시스템을 주문해서 네트워크에 연결할 수 있도록 허용하시겠습니까? 아마 아닐 것입니다. 가상화가 처음 도입되었을 때, 하이퍼바이저 응용 프로그램에 대한 비용이 든다는 사실 때문에 제한되지 않고 관리되지 않는 확장은 경계 대상이 되었습니다. 이로 인해 인프라 내에 떠도는 가상 컴퓨터에 대한 일종의 방어막이 생겨났습니다. 하지만 이제는 그렇지 않습니다.

이제는 무료로 사용할 수 있는 하이퍼바이저 기술이 있습니다. Type 1과 Type 2 하이퍼바이저 모두 마찬가지입니다. 조직 내의 누구든 Windows 설치 미디어가 있고 약간의 시간만 할애할 수 있다면 새 시스템을 네트워크에 추가할 수 있습니다. 하지만 가상 컴퓨터에 대해 잘 알지 못하는 사람이 가상 컴퓨터를 배포하면 이 새 시스템이 잘못 활용될 수 있고, 새로운 제로 데이 취약점이 될 수도 있으며 네트워크에 있는 다른 시스템에 업무상 치명적인 해를 입힐 수도 있습니다.

가상 시스템은 비효율적이 되어서도, 그렇게 되도록 묵인되어서도 안 됩니다. 가상 인프라에도 실제 시스템과 동일한 모범 사례가 적용되어야 합니다. 가상 시스템을 사용할 때 항상 염두에 두어야 할, 10가지 중요한 모범 사례를 알아보도록 하겠습니다.

1. 가상화의 장점과 단점을 이해하라.

불행히도 가상화는 여러분을 괴롭히는 모든 것에 대한 해결책이 되어 버렸습니다. 시스템을 더 빠르게 재구축하려면, 가상화하면 됩니다. 오래된 서버를 새 것으로 만들려면, 가상화하면 됩니다. 가상화가 차지하는 분야와 역할은 많습니다. 하지만 기존의 모든 물리적 시스템을 가상 시스템으로 마이그레이션하거나 특정한 작업을 위해 새 가상 서버를 배포하기 전에, CPU 활용, 메모리, 디스크라는 관점에서 가상화의 한계와 현실을 이해해야 합니다.

예를 들어 지정된 한 호스트에 얼마나 많은 가상화된 게스트를 가질 수 있겠습니까? 각 게스트는 얼마나 많은 CPU 또는 코어, RAM과 디스크 공간을 소비할까요? 즉 저장소를 고려해야 합니다. 실제 SQL 서버에 시스템, 데이터, 로그 공간을 어떻게 별도로 할애할지 생각해야 합니다. 또한 백업과 복구도 고려해야 하며, 장애 조치도 고려해야 합니다. 사실 가상 시스템에 대한 장애 조치는 실제 시스템에 대한 장애 조치보다 몇 가지 면에서 더 강력하고 유연합니다. 이는 하드웨어, 저장소, 그리고 특히 사용하는 하이퍼바이저 기술에 의해 좌우됩니다.

2. 서로 다른 시스템 역할의 서로 다른 성능 병목 지점을 이해하라.

가상 시스템을 배포할 때는 실제 서버와 마찬가지로 각 가상 시스템이 차지하는 역할을 고려해야 합니다. 서버를 SQL, Exchange 또는 IIS 서버로 구축할 때, 모두 같은 구성을 사용하지는 않을 것입니다. CPU, 디스크 및 저장소 요구 사항이 완전히 다르기 때문입니다. 가상 시스템의 구성 범위를 결정할 때는 실제 시스템 배포와 동일한 설계 접근 방식을 사용해야 합니다. 즉 서버와 저장소 옵션을 이해하고, 너무 많은 게스트를 허용하여 호스트에 무리를 주지 않고, CPU와 디스크가 잘못 할당되지 않도록 충분히 고려해야 합니다.

3. 가상 시스템의 관리, 패치 및 보안에 주의하라.

지난 주에만 두 개의 새로운 바이러스가 탄생했습니다. 많은 가상 시스템들이 패치되지 않고, 늦게 패치되고, 적절히 관리되지 않으며 보안 정책 관점에서 방치되고 있는 것이 사실입니다. 최근 연구에 따르면 바이러스의 확산, 특히 대상이 명확한 위협 요소의 확산에 USB 플래시 드라이브가 큰 몫을 하고 있다고 합니다. 많은 실제 시스템 역시 패치되지 않고 안전하지 않은 것이 사실입니다. 가상 시스템, 특히 무단으로 생겨난 시스템은 더 많은 위험을 초래할 수 있습니다. 시스템 변경 사항을 취소할 수 있는 기능이 문제를 더합니다. 패치와 보안 서명을 제거하기 너무 쉽기 때문입니다. 의도하지 않은 경우라도 마찬가지입니다. 가상 컴퓨터의 확산을 제한하고, 모든 가상 컴퓨터에 패치를 적용하고, 관리 및 보안 정책 인프라를 확고히 해야 합니다.

4. 반드시 필요한 경우가 아니라면 가상 시스템을 실제 시스템과 다르게 취급하지 말라.

다시 반복되는 얘기지만 그만큼 중요한 부분입니다. 가상 시스템을 실제 시스템과 다르게 취급해서는 안 됩니다. 무단 시스템이라면 적으로 취급할 수도 있겠죠. 네트워크에 잠입하는 맬웨어에 대한 다리가 될 수도 있으니까요.

5. 초기에, 자주 백업하라.

실제 시스템과 마찬가지로 가상 시스템 역시 백업 계획에 포함되어야 합니다. 전체 가상 컴퓨터를 백업할 수도 있고, 포함된 데이터만 백업할 수도 있습니다. 후자의 방법이 더 가치가 있고 더 유연할 것입니다. 전체 가상 컴퓨터를 백업하려면 많은 시간이 소요되고 빠른 복구를 위한 방법이 줄어듭니다. 업무에 핵심적인 실제 시스템을 보호하는 것과 마찬가지로, 가상 시스템 역시 신속하고 안정적으로 복구할 수 있습니다. 가상 시스템을 자주 백업하여 안정적으로 보호하십시오.

6. “실행 취소” 기술은 주의해서 사용하라.

가상 기술에는 “실행 취소” 기술이 포함되는 경우가 많습니다. 이 기술을 주의해서 사용하십시오. 이는 모든 가상 시스템을 여러분의 IT 관리 작업에 대상으로 포함시켜야 하는 하나의 이유이기도 합니다. 이 기술을 사용하면 디스크를 하루 또는 한 주 전으로 되돌리는 것이 너무나 쉽습니다. 이렇게 하면 적용했던 패치가 사라져 취약점이 노출되고, 나머지 네트워크를 감염시킬 수 있는 관문이 될 수도 있습니다.

7. 장애 조치 및 확장 전략을 이해하라.

가상화는 흔히 완벽한 장애 조치와 완벽한 확장을 위한 최고의 방법으로 여겨지곤 합니다. 이는 호스트 하드웨어, 하이퍼바이저, 네트워크 및 저장소에 달려 있습니다. 여러분은 가상화한 각 역할이 각 서버 게스트별로 얼마나 확장 가능한지 모든 공급업체가 이해하도록 해야 합니다. 또한 얼마나 장애 조치를 잘 수행할 수 있는지, 장애 조치 동안 게스트를 얼마 동안이나 사용할 수 없는지, 응답성과 사용 가능성은 어떤지를 알아야 합니다.

8. 가상 컴퓨터의 증가를 제어하라.

이는 강요하기 어렵고도 매우 중요한 부분입니다. 무료로 제공되는 하이퍼바이저나 유료 하이퍼바이저의 경우에도 마찬가지로, 게스트를 “복제”하는 것이 너무나 쉽습니다. 이로 인해 다음과 같은 문제가 확산될 수 있습니다.

  • **보안: ** 새 시스템 또는 오류로 인해 복제된 시스템은 적절히 보호되지 않을 수 있으며 복제 원본 시스템과 충돌을 일으킬 수 있습니다.
  • 관리: 복제 원본 시스템과 복제된 시스템의 충돌로 인해 정책에 따라 관리되지 않거나, 패치되지 않거나, 다른 충돌 또는 불안정 상태를 유발할 수 있습니다.
  • 법률: 아직까지 Windows는 항상 가상화할 수 있는 것은 아닙니다. 하지만 중요한 것은 비밀리에 새 게스트로 복제되고 있다는 점입니다. 복제가 쉽다는 이유 때문에 게스트가 증가하고, 이로 인해 불법 행위가 조장되고 있는 것도 사실입니다. 이는 위험한 태도이며 여러분의 조직에서 최소한의 규제라도 만들어 차단해야 합니다.

시스템을 복제하는 것은 너무나 쉽습니다. IT 조직은 지나친 게스트 복제가 얼마나 위험한지 인식해야 합니다. 실제 시스템과 동일한 정책을 준수하는 경우에만 새 가상 컴퓨터를 배포하십시오.

9. 저장소를 중앙화하라.

가상 컴퓨터의 확산을 이끄는 요소는 조직 내 여기 저기 위치한 호스트입니다. 직원 누군가가 외장 하드 디스크 또는 CD를 가지고 서버에 접근한다면 이유가 무엇인지 궁금해 해야 합니다. 가상 시스템을 사용하면 전체 게스트를 복제하는 것이 너무나 쉽습니다. 복제가 쉽다는 이유로 가상 컴퓨터가 늘어나게 되는 것입니다. 이로 인해 데이터 손실이 발생할 수도 있습니다. 가상 컴퓨터를 물리적으로 보호할 수 없다면, 기밀 데이터 손실을 막기 위해 가상 또는 실제 디스크를 암호화해야 합니다. 가상 컴퓨터 호스트를 중앙에 위치한 저장소에 두면 가상 컴퓨터의 증가와 데이터 손실 가능성을 최소화할 수 있습니다.

10. 보안 경계를 이해하라.

소프트웨어 또는 관리 시스템을 개발할 때는 보안이 일상의 전략이 되어야 합니다. 실제 시스템을 관리하고 패치하는 것과 마찬가지로 가상 시스템도 관리하고 패치해야 합니다. 암호 정책을 배포한다면 가상 시스템에도 적용해야 합니다. 위험은 항상 있습니다. 가상 시스템을 어떻게 관리할지 철저히 준비하여 위험 요소가 복제되거나 확산되지 않도록 하십시오. IT 관리 계획의 일부가 아닌 가상 컴퓨터는 적으로 간주해야 합니다. 호스트와 게스트 사이의 보안 위협 요소 때문에 근래의 많은 하이퍼바이저에는 무료 버전 또는 평가판 버전의 바이러스 백신 소프트웨어가 포함되어 있습니다.

현재와 미래

가상화는 앞으로도 더 주요한 IT 구성 요소로 발전할 것입니다. 여러분이 할 수 있는 가장 바람직한 일은 활용하고 관리할 방법을 찾는 것입니다. 무시하거나 스스로 관리되도록 방치하지 마십시오. 실제 시스템에 적용하는 정책을 VM에도 적용해야 합니다. 가상화가 조직 어디에서 사용되고 있는지 파악하고, 실제 시스템과 다르게 가상 시스템을 다루면 위험하다는 사실을 팀 구성원에게 알리십시오.

Wes Miller

Wes Miller는 텍사스 주 오스틴에 위치한 CoreTrace에서 제품 관리 책임을 맡고 있으며, 이전에는 Winternals Software에서 근무했고, Microsoft에서 프로그램 관리자로도 일했습니다. 문의 사항이 있으면 wm@getwired.com으로 연락하시기 바랍니다.

관련 콘텐츠