필자는 가상화를 구현하지 않고 있는 IT 인프라를 볼 때마다 놀라움을 금할 수 없다. 더 나아가, 가까운 장래에 가상화를 활용할 계획조차 세워놓고 있지 않다면, 놀라움을 넘어 당혹스럽기까지 하다. 1980년대 말부터 구입한 AS/400 같은 많은 리거시 시스템을 죽이는 것이 아까워서인지, 아니면 단순히 예산 문제인지는 모르겠지만 오늘날과 같은 환경에 전통적인 물리 기반을 고수하는 것은 미친 짓이나 다름없다.
먼저, 이들 기업이 서버를 구입하는 목적은 뭘까? 오래된 싱글 코어나 듀얼 코어 서버를 최소한 쿼드 코어 서버로 교체하고 서비스를 이전하게 되면, 필요보다 훨씬 많은 하드웨어를 보유하게 된다. 서버 워크로드 각각은 5~6개의 가상 서버들과 더 나아가 하이퍼바이저를 쉽게 처리하는 하드웨어에서 실행이 된다. 이들 기업들은 나머지 기업들이 이미 지나쳐 나간 서버 가상화만 수용하려는 것일까?
향후 2~3년 후를 살펴볼 경우, 필자는 가상 서버 관리 방식에 기본적인 변화가 있을 것으로 내다보고 있다. 전사적인 가상화는 이미 혁신으로 평가되지도 않는다. 다음 변화는 VM 전용으로 설계되고 실행되며, 드라이버 지원과 물리 서버로서의 다른 특징이 부족해 물리적 하드웨어에서는 기능을 하지 않는 운영체제를 보기 시작할 때 발생할 전망이다. VM에서 수천 개의 드라이버와 하드웨어용 기능을 운용할 필요가 무엇이겠는가? 이들은 쓸모가 없다.
하이퍼바이저와 통합된 운영체제 커널
결국에는 오늘날 다수를 점하고 있는 환경을 배격하고 하이퍼바이저 기반의 커널에 중심을 둔, 그리고 메모리와 CPU, I/O 자원 실행 및 관리 방식이 근본적으로 다른 운영체제가 널리 확산되는 것을 보게 될 전망이다.
이는 과거 물리 RAM과 CPU를 추가하기 위해 사용했던 핫플러그 방식 추가를 통해 VM에 CPU와 RAM을 추가하는 모험을 다시 시작하는 것이다. 사실 핫플러그 확장은 썩 효율적이지 못한 방식이다. OS 커널이 이런 호환성이 떨어지는 요소를 거치지 않고 즉각적으로 추가 컴퓨팅 자원을 요청, 조정, 사용할 수 있을 때, 진정한 클라우드 컴퓨팅 개념에 한발 더 가까이 다가설 수 있다.
즉 기반 하드웨어를 고려할 필요가 없는 서버 인스턴스, 고정 CPU 개념에서의 탈피, 고정 또는 동적 RAM 개념에서의 탈피를 기반으로 한 클라우드 컴퓨팅이다. 이는 프로세스 및 코어, NUMA 최적화, RAM을 신경 쓸 필요가 없는, 스케줄링 단계에서부터 하이퍼바이저와 탄탄하게 통합되는 운영체제를 의미한다.
마이크로소프트는 출시를 앞둔 윈도우 서버 2012 하이퍼- V에서 이와 같은 개념을 이미 구현할 준비를 마친 것으로 보인다. 이는 하이퍼바이저가 윈도우 서버 2003 R2 같이 오래된 운영체제에서도 핫애드 RAM 같은 기능을 구현할 수 있게 해줄 것이다. “RAM이 더 필요해”라고 이야기하면 바로 이루어지는 것이다.
물론 몇 년 후에나 이런 개념이 완벽하게 구현될 것이다. 그러나 반드시 그런 때가 올 것이다. 하이퍼바이저는 모든 호환 호스트 OS에서 이런 기능을 가져와 VM을 애플리케이션 사일로로 바꿀 수 있을 정도로 탄탄해지고, 스마트해질 것이다.
애플리케이션의 로드가 증가하면, 커널은 증가한 자원 요건을 하이퍼바이저에 전달하는데 더 중점을 둔다. 그리고 어떤 물리 자원을 VM에 할당해 소비시킬지, 필요 시 각각의 물리 서버에 여유를 주기 위해 인스턴스를 이전시킬지를 더 낮은 수준에서 결정한다.