티스토리 뷰

본 포스팅 글은 필자가 네트워크 타임즈 단행본 "클라우드 빅 데이터"에 기고한 글입니다.


“클라우드컴퓨팅을 위한 새로운 x86 선택기준을 제시한다.”


최근 인텔은 코드명 Sandy Bridge 라는 이름의 새로운 범용 서버 프로세스인 E5 프로세스를 발표했다.

범용 서버도 이제는 CPU당 코어가 8개가 넘는 집적도와 성능을 자랑하고, x86 서버당 16개의 Core를 제공하는 시대가 도래한 것이다.

메모리 역시 점점 저전력, 고집적 용량을 제공하며 1.6GHz 16GB 단일 메모리 제공시대를 열었다. 뿐만 아니라 디스크도 SSD 기반의 서버 시대가 점점 현실화 되어 가고 있다.

x86을 이제는 모든 업무와 모든 서비스, 어플리케이션에서 안정적이고 고성능으로 제공할 수 있는 시대가 도래한 것이다.


이러한 하드웨어의 기술적 성장에 힘입어 서버/시스템 중심의 클라우드 컴퓨팅은 더욱 각광을 받게 되었다.  이런 기반환경의 변화는 국내외 업계에 오픈 소스, 오픈 아키텍쳐를 핵심 기술 슬로건으로 표방한 클라우드 컴퓨팅이 업계 전반에 휘몰아치게 되었다. 특히 x86 기반의 오픈 시스템 아키텍쳐는 데이터센터를 운영하거나, 클라우드 컴퓨팅으로 전환을 꿈꾸는 이들에게 매우 매력적으로 다가오기 충분했다.


2012년 현재 흔히 말하는 메이저 벤더의 x86 시스템을 사용하는 고객사의 수는 큰 변화는 없고, 오히려 클라우드 컴퓨팅을 진행하면서 벤더의 x86 시스템을 제외한 오픈 x86을 적용한 고객은 그리 많지 않다.


오히려 진화된 모습의 새로운 x86 아키텍쳐 기술이 새롭게 조명되고, 이러한 요구에 부응하는 시스템들이 더욱 각광받고 있다. 이러한 시대적 흐름과 변화는 현재 클라우드 컴퓨팅과 가상화를 진행하면서 겪고 있는 문제에서 그 해답을 찾을 수 있다.


본 기고에서 필자는 x86의 하드웨어에 대한 단상보다는, 클라우드 컴퓨팅 기반에서의 x86의 이슈와 이를 변화시키고저 등장한 시스코 UCS와 같은 혁신적인 기술을 소개하고저 한다.


과연 클라우드컴퓨팅 환경에서의 x86은 어떤 고민들을 가지고 있을까?


첫번째로 클라우드 컴퓨팅을 위한 프로비저닝에 대한 이슈이다.


일반적으로 클라우드 컴퓨팅에서 가장 핵심적인 기술 요소로 평가되는 부분이 바로 설치 및 서비스 준비를 위한 플랫폼을 제공하는 Provisioning 이다.
이러한 서비스 준비를 위한 Provisioning 은 클라우드 컴퓨팅을 구현하지 않더라도, 시스템을 많이 운영하는 기업이라면 현재 자체개발한 솔루션이나 프로세스 등으로 최대한 자동화를 구현해서 사용하고 있다.

그런데 이러한 자동화 설치 및 서버 장애시 복구 또는 설치 단계를 보면 현재의 고민을 충분히 들여다 볼 수 있다.


기본적으로 서버의 설치는 아래와 같은 단계로 자동화를 구현하는 것이 일반적이다.


①    서버의 주요 자원 구성 – CPU, Memory, HDD, IO Card

②    물리적 서버의 데이터센터 배치

③    IO Cable 구성
④    전원 공급 후 PXE Booting을 통한 서버 자동 설치
⑤    클라우드 프로비저닝 설치 툴 기반의 VM 설치
⑥    설치 후 IPMI 기반의 서버 관리 및 클라우드 관리 기반의 VM 관리


이러한 일련의 과정에는 특별한 문제가 없어 보이지만, 사실 가장 큰 난관은 바로 물리적인 서버의 구성과 설치 과정에서 주로 발생한다.

인텔의 서버 프로세스에 대한 로드맵이 계속 진화하고, 그 때 마다 서버의 모델들이 바뀌어서 회사에 입고 된다. 뿐만 아니라 같은 벤더의 서버라고 하더라도 입고 시기에 따라 하드웨어 사양과 내부의 드라이버 버전 , 펌웨어 버전이 다르다.

현재 사용하는 서비스를 추가요청에 따른 서버 증설 또는 장애시 다른 서버로 대체하는 작업을 할 때마다, 자동화가 어려운 부분은 바로 이러한 아주 Low Level의 이슈이다.

뿐만 아니라 외장형 스토리지 연동과 네트워크 연동 부분까지 고려한다면 반드시 자동화가 모든 것을 해결해 주는 것은 아니다.

그래서 일각에서는 클라우드 컴퓨팅이 운영자를 더욱 어렵게 하고 퇴근시간을 더욱 늦춘다는 불만까지 쏟아내고 있다.



[그림-1] 일반적인 서버 설치 프로세스


[그림-1]은 일반적인 서버의 설치 프로세스를 표현한 부분으로 실제 x86 서버의 설치 및 서비스 개통하기 위한 과정들이 녹록하지 않음을 표현해 준다.


시스코는 이러한 이슈를 해결하기 위해, UCS(Unified Computing System)을 업계에 소개할 때부터 주장한 것이 바로 하드웨어에 대한 추상화 개념이다.

즉 x86의 모든 자원이 고유의 값을 개별서버가 소유하는 것이 아니라, 중앙의 관리 솔루션에서 소유하여 서버가 증설 또는 장애가 발생하여 추가 할 때 회사 정책에 따른 서버의 하드웨어 구성이 자동으로 x86 서버에 심어지도록 하는 방식을 취한다.

즉 하드웨어 추상화 또는 가상화를 구현해 놓은 것이다.

 


[그림2-시스코 UCS 기반의 하드웨어 가상화]


이러한 방식은 15분이면 기존 서버와 똑 같은 서버를 OS나 Application 레벨이 아닌 하드웨어 레벨에서 복제함으로써, MAC address, WWN, BIOS 구성, RAID 구성, Firmware, Booting 정보, Driver Version, 시스템 UUID를 완벽하게 복제한다. 더 이상 Low Level의 구성 이슈로 클라우드 컴퓨팅의 자동화에 대한 발목을 잡는 일을 제거하겠다는 것이다.


두번째는 IO에 대한 고민이다.


흔히 x86 서버에는 외부로 노출이 되는 두가지 IO를 가지고 있다.

하나는 네트워크 IO, 즉 네트워크 카드 또는 랜카드라는 부분이 있다.

또 하나는 Storage IO, 즉 SAN 기반의 HBA 카드 또는 네트워크 기반의 iSCSI,NAS 등이 여기에 해당이 된다.


특히 클라우드 컴퓨팅에서 서버의 근간이 되는 서버 가상화 기반 기술에서는 보통 IO 포트를 8개 이상을 요구하게 된다. 이러한 구성은 물리적 서버 입장에서는 PCI 슬롯이 그 만큼 많이 필요하다는 것을 의미하게 되며 랙마운트 기반을 예를 들어 보더라도 1U 기반의 서버에서는 제공하기 어려운 PCI 슬롯 구성이 요구된다.


물론 2U 크기의 서버를 선택해서 가상화 서버를 구성해도 되지만, 이것은 서버랙당 서버의 집적도를 절반으로 떨어뜨리게 되므로 결국 운영비에 엄청난 영향을 끼치게 된다.


 


[그림3-일반적인 x86 서버의 IO 구조]


서버의 IO가 많다는 것은 IO 카드와 케이블이 많다는 것을 의미하게 되므로, IO 카드당 전력 사용량과 많은 케이블들로 인한 데이터센터의 공조를 방해하는 요소가 있다는 것을 이야기 하게 되므로 저전력 데이터센터에는 매우 큰 악재로 다가온다.


시스코는 이러한 이슈를 해결하기 위해 FCoE 기반 기술과 서버 IO 가상화 카드를 기본적으로 제공한다.

FCoE(FiberChannel Over Ethernet)은 2009년 6월에 T11 FC-BB-5 v2.0 표준화가 완료된 기술로써 10GE 이더넷에 FC 기술을 넣어서 운반하겠다는 의미를 담고 있다.
어차피 40G, 100G가 표준화가 완료되고, FC 보다 훨씬 저렴한 매체 기술이기 때문에 향후 확장성도 매우 높다. 그런데 실제 이러한 대역폭을 대부분 사용하는 경우는 거의 없으므로 충분히 여유 있는 대역폭에 FC 나 iSCSI 등의 스토리지 IO를 실어서 보내겠다는 것이 핵심이다.


물론 FC와 같은 매우 중요한 스토리지 IO는 FC 고유의 Lossless 데이터 전송기술을 그대로 사용하게 되므로 관리자 입장에서는 신기술을 적용하는 거부감도 전혀 없다.

여기에 서버 IO 카드 가상화를 함께 구현하게 되면 서버 가상화 , 서버 담당자는 물리적으로는 하나의 IO 카드에서 250개 이상의 가상 IO 기반으로 FC HBA, 10GE Network Card, iSCSI Network Card 등을 자유롭게 만들고 삭제할 수 있으므로 유연성과 경제성을 동시에 취할 수 있는 매우 획기적인 기술이다.


클라우드 컴퓨팅은 데이터센터 10년을 좌지우지 할수 있는 매우 중요한 선택이다.

그런데 iSCSI 냐 FC냐 아니면 NAS를 선택할 것이냐로 엄청난 고민을 하고 도입후에 후회를 한다면…

그래서 다시 다른 IO를 선택하고 싶은데, 수백대 수천대의 서버 IO Card를 모두 교체하거나 추가한다는 상상을 해 보라. 얼마나 끔찍한 일인가?


 
[그림4-시스코의 FCoE/ Network IO 가상화]


셋째, 서버 및 가상화 플랫폼 관리에 대한 부분이다.


필자는 클라우드 컴퓨팅의 핵심은 오픈소스, 오픈 아키텍쳐가 아니라 관리와 프로비저닝에 있다고 강하게 어필하고 싶다. 결국 클라우드 컴퓨팅은 IT 자원을 활용하는 사람 그리고 관리하는 사람 모두가 편하려고 만들어 가는 기술이지, 학자나 CxO, 벤더들을 위한 기술이 아니다.


아무리 좋은 솔루션과 아키텍쳐가 있더라도 기술이 어렵고, 관리하기 복잡하면 안쓰는 것이 좋다. 아무리 공짜 솔루션이고 시대를 앞서간다고 해도 결국은 사람이 관리하고 구성해야 한다.


F1 전용 자동차가 아무리 좋아도, 고급 스포츠카가 아무리 좋아도, 자동차를 조립할 수 있다고 해도 사람들은 일반 자동차회사의 패밀리카와 세단을 선호한다. 가격이 문제가 아니라 관리와 운영의 편리성 때문이다.
아래 그림은 현재 일반적인 서버들의 관리 운영체계이다.


[그림5 – 일반적인 x86 서버 관리 구조]


정말 이 모습에 클라우드 관리 프레임 워크까지 연동하면 관리가 쉬울까? 서버의 펌웨어와 하이퍼바이져의 버전이 올가가고 패치 버전이 나오면 클라우드 관리 프레임워크와 기가 막히게 연동되서 계속 프로비저닝이 잘될까?


이러한 이슈를 해결하기 위해 시스코는 통합관리 체계와 유연한 API 연동 체계를 제공한다.


UCS Manager는 랙 마운트 서버, 블레이드 서버 등 모든 UCS의 네트워크, 스토리지, 서버 및 관리에 대한 부분을 통합 운영, 구성을 제공한다.

클라우드 관리자는 굳이 여러 개의 관리자와 부서들 그리고 솔루션과 연동할 필요 없이  단 하나의 관리 도구와 XML, IPIM, SMASH,WSMAN 등을 연동하면 되므로 클라우드 관리체계의 혁신을 가져 올 수 있다.


 [그림6- Cisco UCS의 관리 체계]


앞서 클라우드 컴퓨팅을 고려하는 고객이 x86을 선택할 때 매우 중요한 요소들을 일반적인 칩셋 기술 레벨이 아닌 관리,운영, 연동성에 대해 언급하였다.

실제 그렇다면 이러한 기반 기술과 혁신적인 기술이 집적화된 시스코 UCS와 같은 방식을 적용했을 때 TCO의 변화는 어떤 것들이 있을까?


 
[그림 7 – 일반적인 x86 160대 구성시 필요한 자원]


[그림7]은 160대의 서버를 10:1 가상화 기반으로 구성했을 때의 실제 모습이다.
우선 케이블 숫자가 눈에 띄인다. 서버당 7개의 케이블만 구성하더라도 1000개 이상의 케이블이 필요하고, 수많은 ToR(Top Of Rack) 스위치와 EoR(End of Row) 스위치들이 필요하다.

인텔 Westemere 5650 2개를 장착한 일반 x86 서버의 사용률을 50% 기준으로 계산해도 무려 64KWh 이상의 전력을 사용해야 한다.

하지만 앞서 언급된 시스코 UCS와 같은 구성을 하였을 때의 모습은 매우 혁신적인 구성을 제공한다.

즉 블레이드 서버 기반으로 서버의 집적도를 극대화 시키고, IO 가상화와 FCoE구현을 통해 IO Cable과 IO Card 숫자를 90% 이상 절감할 수 있다.

뿐만 아니라 대규모의 서버를 단일 도메인으로 관리함으로써 굳이 많은 수의 ToR 스위치와 SAN 스위치를 사용하지 않아도 된다. 마지막으로 운영과 프로비저닝의 편리성을 위한 하드웨어 추상화 기술과 네트워크/서버/스토리지 통합관리 솔루션과의 연동을 구현한다면 운영비의 절감도 크게 확보할 수 있을 것이다.



[그림8]은 실제 이러한 기술과 솔루션을 제공했을 때의 장점을 표기한 모습니다.


IO Cable이 99% 절감, ToR 스위치 100% 절감, 전력 사용률이 50% 가 되는 모습은 모두 CapEx, OpEx에 중요한 지표가 될 수 있는 부분이 될 것이다.
 


[그림8 – 시스코 UCS 기반의 160대 서버 구현시 장점]


클라우드 컴퓨팅은 많은 이들이 이야기하고 있고, 오픈 소스, 오픈 아키텍쳐의 필요성을 이야기 하고 있다.

사실 클라우드 컴퓨팅이 첫걸음을 떼기 위해서는 현재 당면한 과제와 문제점들을 풀고 가야 이러한 원대한 꿈을 품을 수 있을 것이다.

실제 서비스 설치와 구성의 어려움과 주변환경의 복잡성, 그리고 관리적인 문제를 해결하지 못한다면, 우리의 클라우드 플랫폼은 그저 실현 불가능한 이상으로 역사에 남을지도 모른다.


시스코는 이러한 x86이 당면한 과제와 클라우드 컴퓨팅에서 꿈꾸고 있는 아키텍쳐를 실현하기 위해 UCS라는 혁신적 플랫폼을 소개하고 있으며, 현재 국내외에서 놀랄만한 성장과 성과들을 제시하고 있다.


어떤 x86 서버들이 클라우드 컴퓨팅에 최적의 모습인지를 운영,관리,TCO 측면에서 꼭 따져보고 선택하길 바란다.


공지사항