Virtual Machine 과 Server ?

inasys의 이미지

흠.
요즘, 가상 머신과 관련되어 이슈가 많이 되고 있네요.
ms에서 가상머신을 출시한것도 그렇고,
vmware에서 휴대식 미디어 장치에 데스크탑을 구축할 수 있는 가성머신을 출시한 것도 그렇고.

근데, 당최 서버분야에서 왜 가상머신이 이슈가 되고 있는건지 궁금하네요.

서버에서 가상머신을 이용함에 있어서 뭔가 얻을 수 있는 장점 같은거라도 있는건가요?

혹시, 알고 계시는 분?

jj의 이미지

예를 들면, 호스팅 회사에서 하나의 고성능 서버로, 각 고객에게 가상머신을 서비스해주면, 고객은 물리적으로 서버를 하나 할당 받는것 처럼 사용 할 수 있겠죠. 관리자권한까지 갖는 호스팅 서비스를 저렴한 비용에... 꽤 오래전부터 이런 호스팅 서비스도 실제로 있는걸로 알고 있습니다.

--
콘쏠의힘

--
Life is short. damn short...

superwtk의 이미지

해볼만한 사업인것 같습니다.

--------------------------------------------------------------------------------
http://blog.superwtk.com

jj의 이미지

또 문득 드는 생각이, 안정성을 위한 시스템 이중화를 가상머신으로 할 수 도 있겠구요... 뭐 이건 이런식으로 생각하면 끝이 없지만...

이 뭐 ... 나중엔 가상머신 사이에 퍼포먼스 QoS까지 제공하려나...

--
콘쏠의힘

--
Life is short. damn short...

익명사용자의 이미지

컴퓨터쪽에는 뭐든지 dynamic한 것이 비용 절감면에서 장점이 많은 경우가 많습니다.

예를들어 웹 호스팅이나 서버 호스팅처럼 서버와 회선을 설치해서 판매해 준다고 생각해 보세요. 서버 하나당 오에스 하나 깔아 판다고 생각하면 이에 맞추어 하드웨어를 "물리적으로" 설치해야 하는 특성이 따라옵니다. 예를들어, 2기가 시피유에 메모리는 1기가 꽂고.. 하드는 40기가 연결해 주고 이런 것들이죠.

그런데 이걸 가상화 시키면 메모리나 하드는 서비스 제공업자 마음대로 바꿀 수 있겠죠. 물리적으로 컴퓨터를 뜯고 램 소켓을 갈아끼우고... 하드를 뺏다 넣었다 하지 않고서도 말입니다.

그렇다면 빠르고 용량 큰 서버를 하나 설치하고 이것을 여럿 가상 머신으로 쪼개어서 서버 호스팅을 하면 서비스 업체에서도 관리 비용이 적게 들고, 사용자 입장에서도 자신에 형편에 맞추어 메모리나 하드 용량을 조절하기가 쉬워집니다. 기술적으로 가능하다면, 노는 서버쪽에는 잠깐 리소스를 줄여서 주었다가 로드가 많이 걸리면 다시 리소스를 늘려주는 것도 가능하겠죠. 이렇게 되면 만명의 전화 가입자가 실제 동시 통화가 100밖에 쓰지 못하는 회선을 공유해도 별다른 문제가 없듯이 컴퓨터 자원을 좀 더 효율적으로 비용을 적게 들이고 관리할 수 있게 됩니다.

뭐... 이건 그런데 서버 호스팅 업자 입장에서의 얘기이고... 그 외에도 가상 머신의 활용도는 많습니다.

일례로 디비, 웹서버, 파일서버를 같이 구현해 본다고 칩시다. 보안이나 안정성의 문제 때문에 디비서버 웹서버 파일서버는 물리적으로 따로 설치하고 백업용 서버를 하나 더 설치한다고 해 봅시다.

실전에 이 서비스를 투여하기 전에 이 시스템을 어떻게 테스트 할 수 있을까요? 뭐 간단합니다. 컴퓨터 넉대 사서 적절히 리눅스 설치하고 네트웍에 연결한 다음 셋업 작업을 해 나가면 되겠죠.

그런데 만약 가상 머신을 여기 쓰면 어떻게될까요? 작업이 무척 간단해 집니다. 서버 하나에서 vmware 가상 머신을 넉대 만들고 가상적으로 네트워크를 구축합니다. 기본적으로 서버마다 리눅스 까는 것도 간단히 vanilla 서버 하나 깔고 그 파일 이미지를 그대로 복사 명령 한번이면 끝입니다. 네트워크 가상으로 연결하고 잘 돌아가는지 테스트 한 다음 역시 새 서버에 vmware만 잘 깐다음 이 서버 이미지들을 적절히 복사해서 돌려버리면 테스트 끝난 세팅 그대로 서버가 돌아가게 됩니다.

그래도 vmware 라는 wrapper가 하나 있으면 느려지지 않겠느냐... 그럴 수도 있습니다만 이 dynamic한 장점에 그정도의 스피드 희생은 상대적으로 크지 않습니다. 예를들어, 실제 이렇게 서비스를 운영하고 있는데 쓰다보니 웹서버에 별다른 로드가 걸리지 않아서 굳이 서버를 분리할 필요가 없더란 말이죠. 그래서 파일서버에 웹서버를 옮겨버리기로 했다고 칩니다. 이럴 때 서버가 물리적으로 따로 따로 설치되어 있으면 일이 복잡합니다. 파일서버에 웹서버 세팅을 처음부터 다시 차례대로 해야 됩니다.

그런데 파일서버도 vmware위에서 가상 머신으로 돌아가고 있다고 칩시다. 그럼 간단합니다. 파일 서버에 웹서버 돌아가고 있는 가상 머신 이미지를 그대로 옮겨주고 vmware 세션 하나만 더 돌리면 서버는 두대로 보이지만 결국은 두 서버를 물리적 하드웨어 한 대로 통합시킨 결과를 얻을 수 있는 것이지요. 마찬가지로 로드가 많이 걸리는 두 서버를 물리적으로 분리시킨다든가, 심지어는 하드웨어 업그레이드도 가상 머신이라는 layer하나가 더 있음으로 훨씬 쉽게 해결할 수 있게 됩니다.

amakusa의 이미지

IBM P 시리즈의 LPAR, DLPAR... hp rx, rp 시리즈의 nPar, vPar 와 같은 파티셔닝 기능과 가상화 기술이 최근의 추세인 듯 합니다.
발전 가능성도 많구요.....

익명사용자의 이미지

VMWARE, XEN, Virtuaso(?) 이런거죠...

그중에서 버추어소로 서비스하는 외국회사들이 좀 있죠. 한국은 모르겠고...
이거 벌써 5년도 넘었죠? 2001년에 나왔으니까.
요즘처럼 x86 서버 성능이 좋을때는 가능한 시스템일 듯, 2001년에 테스트
했을때도, 8way Xeon Server에서 root 계정을 줄 수 있는 시스템을
무진장 만들었으니까요...

실제로 가상화솔루션으로 비즈니스 할 수 있는 환경은 많다고 봅니다.
대부분의 기업내부 MIS 시스템의 경우 현업의 요구에 따라서 그때그때
서비스를 많이 만들게 되는데, 보통 하드웨어는 증설하지 않고 한시스템
내에 적당히 서비스를 나누어서 올립니다. 보통은 DB는 그냥 두고
웹서비스만 따로 올리는데, 이게 간혹 원래 하던 서비스를 잡아먹거나
혹은 어느 서비스가 부하가 더 걸리는지 알기가 참 힘들더군요.

이럴때 차라리 각각의 서비스를 VM에 올리게 되면, web1, web2, DB
이런거를 VM으로 처리하고, 부하가 늘어나는 쪽에 리소스를 더 할당하고
죽은 서비스는 VM째 날려버리면 아주 편하죠...

아직 실제 IT부서에서 잘 몰라서 안쓰는데가 많은데, 아마 좀만 알면
상당히 TCO를 절감할 수 있을 거라고 판단이 됩니다.