블레이드 서버의 개요
이상민* 박종원** 박진원 ***
칼날처럼 얇은 초박형 블레이드를 슬롯에 꽂아 컴퓨터
시스템을 구성하는 블레이드 서버는 컴퓨팅 성능 향상에
따른 전력소비와 발열량 증가 문제를 해결할 수 있을
것으로 예상된다. 저전력 칩들을 기반으로 작은 크기로
모듈화시키는 블레이드 구성 방법은 전력소비량을 감소
시키는 것 외에도여러 가지 장점을 얻을 수 있다.
본 고에서는 블레이드 서버의 등장 배경, 장점, 구성 방법,
그리고 응용분야 등에 대해 살펴 볼 것이다. 특히, 최신
기술을 채택하여 제작된 블레이드 서버들의 개발사례를
통해서 블레이드 서버 구성 방법의 최근 동향을 소개할 것이다.
I. 서 론
고속 인터넷 및 인트라넷 기술의 발달에 따라 대량의 데이터를 고속으로 처리할 수 있는 서버 기술이 요구되어 왔고 시스템 확장성, 적용성, 그리고 높은 가격대 성능비도 만족시켜야 했다. 이와 같은 요구사항들을 만족시키기 위해서 랙 마운트형 클러스터 서버 기술이 등장하게 되었다. 그러나 랙 마운트형 클러스터 서버는 부피가 커지고 전력 소비량도 크게 증가하는 문제점을 갖고 있고 각 모듈들을 케이블로 연결함으로써 시스템 확장성과 유지 관리(maintenance and management)에 많은 어려움을 겪게 되었다. 이러한 문제들을 해결할 수 있는 새로운 대용량 서버 기술은 저전력, 고집적 마이크로 프로세서와 같은 효율적인 에너지 절약형 칩을 기반으로 부피, 발열량 등의 문제를 해결할 수 있어야 한다.
블레이드 서버는 랙 마운트형 서버처럼 가로로 랙 서버를 쌓아 올리지 않고, 슬롯에 칼날처럼 얇은 블레이드들을 세로로 꽂는 것이 특징이다. 얇은 초박형 블레이드를 슬롯에 꽂아 제작하는 블레이드 서버는 두께를 얇게 구성할 수 있으므로, 수십 개 혹은 수백 개의 서버들을 하나의 캐비넷에 장착할 수 있다((그림 1) 참조). 그리고 네트워크, 스위치, 스토리지, 어플라이언스 등을 특정한 기능에 따라 독립적인 블레이드로 구성할 수도 있다.
고속 프로세서의 엄청난 발열량은 블레이드 서버의 확장성을 제한하는 중요한 요인이다. 그러나 발열문제는 저전력에 기반한 인텔의 Tualatin과 트랜스메타의 Crusoe 프로세서와 같은 저전력 소비 기술의 등장으로 어느 정도 해소되고 있다.
저전력 프로세서와 고집적 칩 제조기술이 발전함에 따라, 블레이드 서버 제조회사는 더욱 더 얇고, 고집적화된 블레이드 서버의 설계가 가능하게 되었다. 이에 따라 블레이드 서버 제조회사는 전력소모뿐만 아니라 공간활용 면에서 우수한 블레이드 서버를 생산할 수 있다.
최근 여러 컴퓨팅 센터에서는 와트와 부피 당 프로세싱 파워로서 효율성을 평가한 결과를 바탕으로, 랙 당 수백 개의 프로세서들을 탑재할 수 있는 블레이드 서버의 도입을 고려하고 있다[6].
블레이드 서버는 구매자가 원하는 저비용(low cost), 확장성, 그리고 신뢰성을 충족시킬 수 있다. 시스템 관리 소프트웨어와 대용량 스토리지 시스템으로 구성된 블레이드 서버는 front-end 시스템으로서 역할을 충분히 수행할 수 있을 것으로 예상된다.
본 고는 블레이드에 기반한 클러스터링 형태의 블레이드 서버가 다음 세대 대용량 컴퓨터 서버기술로서 자리 매김할 것으로 예상됨에 따라, 이에 대한 장점, 구성 방법, 그리고 적용 분야에 대해 살펴 볼 것이다. I장 서론에 이어 II장에서 기존 서버와 비교해서 블레이드 서버의 장점을 살펴 볼 것이다. III장에서 시장에서 판매되고 있는 상용 블레이드 서버를 설명함으로써 최근에 제작되고 있는 블레이드 서버의 구성 형태를 소개할 것이다. IV장에서 블레이드 서버의 응용분야에 대해서 언급할 것이며, 마지막으로 V장에서 결론과 블레이드 서버의 향후 발전 방향에 대해서 언급할 예정이다.
II. 블레이드 서버의 장점
1. 고속의 연결망(High-speed Connectivity)
블레이드 서버의 첫번째 장점은 여러 블레이드들을 연결하기 위해서 특별히 고안된 high-speed 연결방식(InfiniBand, 중복적으로 구성된 고속 시리얼 버스 등)을 사용하는 데 있다. 고속 연결망은 블레이드 간에 초당 수 기가비트 수준으로 통신이 가능하게 함으로써 빠른 데이터 교환을 통해서 시스템 성능을 향상시킬 수 있다. 특히, InfiniBand와 같은 고속 연결망은 운영체제 커널 수준의 통신기능을 하드웨어적으로 지원해 줌으로써 통신 오버 헤드를 더욱 줄일 수 있다[1,2].
2. 고밀도(High Density) 및 확장성
기존의 랙 마운트 형태의 클러스터 서버는 고속의 케이블 형태가 주요 연결 방식이었다. 따라서 연결 대상이 많아질수록 더 넓은 공간과 복잡한 케이블 배선이 필요하게 되었다. 그러나 블레이드 서버의 연결 인터페이스는 슬롯 형태로 주 연결망에 세로로 꽂게 구성되어 있어서 기존의 랙 마운트 형태의 클러스터 서버와 같은 복잡한 케이블 연결이 필요없게 되었다. 즉, 블레이드 서버에서 채용한 슬롯 형태의 연결 방법은 하나의 섀시에 프로세서, 메모리, 연결 인터페이스 등이 포함된 작고 얇게 모듈화된 블레이드를 여러 개 담을 수 있게 된다.
블레이드 서버는 시스템을 확장할 때 노드 단위로 확장하지 않고 용도가 특화된 블레이드 단위로 확장한다. 그러므로 블레이드에는 장착되지 않는 CD롬 드라이버, 플로피 디스크와 같은I/O 디바이스와 전원 공급 장치를 공동으로 사용함으로써 좀 더 낮은 가격에 높은 성능을 얻을 수 있다. 예를 들어, IU 서버 정도 크기의 시스템에 4개의 hot-pluggable 블레이드를 장착할 수 있다.
기존의 서버 시스템은 초기에 엄청난 비용이 소요되는 것이 일반적이었다. 그러나 블레이드 서버의 경우에는 시스템 구성을 블레이드 단위로 확장할 수 있으므로, 초기 투자 비용이 절감되고 확장 시에도 융통성을 갖게 되었다. 시스템 확장 시 블레이드를 추가하더라도 이미 탑재된(pre-loaded) 소프트웨어를 재사용함으로써, 전체 시스템 차원에서 추가적인 소프트웨어 비용은 발생하지 않는다. 따라서 블레이드 서버 시스템은 적은 시간과 비용으로 필요한 시점에 보다 용이하게 시스템을 확장해 나갈 수 있다.
3. 적용성(Deployment)
블레이드 서버에서 각각의 블레이드는 용도에 따라 쉽게 특화될 수 있다. 이러한 블레이드로 구성된 블레이드 서버는 사용 목적(웹 서버, ftp 서버, 이메일 서버, 데이터베이스 서버 등)에 따라 특화된 시스템을 구성할 수 있다. 예를 들어, 동시에 많은 사용자가 액세스하는 웹 서버인 경우, 액세스되는 웹 페이지에 더 많은 프로세싱 블레이드를 배치하거나, 고속의 인터넷 연결망으로 연결된 웹 캐싱용 블레이드를 배치함으로써 보다 빠르게 사용자 액세스 요구를 처리할 수 있다.
III. 블레이드 서버의 구성
블레이드 서버는 크게 블레이드와 섀시(연결망 포함)로 구성되어 있다. 블레이드는 연산을 담당하는 서버 블레이드(혹은 연산 블레이드), 연결망을 관리하는 스위치 블레이드, 네트워크와 I/O 연결을 담당하는 제어 블레이드, 특정 용도에 알맞게 설계된 블레이드 등으로 분류할 수 있다. 한편, 섀시는 블레이드에게 연결망을 제공하고 전원도 공급한다. 일반적으로 블레이드와 섀시는 블레이드 제조 회사에 따라 서로 다른 형태를 갖고 있다.
여기서 대표적인 블레이드 서버 제품을 통해 블레이드 서버의 구성을 살펴본 후 여러 다른 블레이드 서버와 비교해 보자.
1. Nitro
Nitro(Mellonox InfiniBand Bladed Server)는 Mellanox의 InfiniBand 기반의 블레이드 서버 참조 디자인(reference design)이다[4,5]. (그림 2)에서 보는 바와 같이 Nitro 블레이드 서버는 전통적인 연결망(PCI 버스, 기가비트 이더넷, 시리얼 버스 등) 대신에 InfiniBand Backplane을 사용하고 있다. Nitro는 커널 수준의 네트워크 기능(즉, TCP/IP)을 하드웨어로 처리할 수 있는 InfiniBand 구조를 채택함으로써, 블레이드들 간의 통신 오버헤드를 최소화 할 수 있다[1,2]. 그리고 InfiniBand 연결망 기술이 제공하는 신뢰성, 확장성, 그리고 가용성을 바탕으로 클러스터 구성 시 관리(maintenace)의 용이함뿐만 아니라 전체 시스템의 효율성도 높일 수 있다.
(그림 3)은 Nitro블레이드 서버의 전체 구조를 보여주고 있다. Nitro는 16개의 블레이드와 이들을 고속으로 연결하기 위한 2개의 InfiniBand Switch로 구성되어 있다.
16개의 블레이드 중에서 Ethernet 망과의 연결을 위해 Ethenet에서 InfiniBand로 변환하는 2개의 Ethernet Target Control Adapter(TCA) 블레이드와 대용량 스토리지를 연결하기 위한 2개의 Fibre Channel TCA 블레이드가 있다. 그리고 나머지 12개의 블레이드는 실제적인 연산 작업을 수행하는 서버 블레이드(server blade) 이다.
(그림 4)는 확장성과 가용성을 보장하는 InfiniBand 연결망을 사용해서 여러 대의 Nitro 블레이드 서버와 대용량의 고성능 스토리지(Netwok Attached Storage(NAS) 혹은 InfiniBand 기반 스토리지)를 연결해서 InfiniBand System Area Network(ISAN)를 구성하는 예를 보여주고 있다. ISAN 기반의 System Area Network는 수많은 클라이언트의 요청을 동시에 처리해야 하는 Internet Data Center(IDC)와 Enterprise Data Center(EDC) 혹은 유전자 정보 분석과 같은 빠르게 대용량의 연산을 수행해야 하는 응용 분야에 활용될 수 있다.
2. BladeFrame
고성능(high performance)과 고가용성(high availability)을 설계 목표로 설정한 BladeFrame 블레이드 서버는 Egenera사에서 개발되었다. BladeFrame 서버는 단독으로 존재하기 보다는 (그림 5)에서 보는 바와 같이 Processing Area Network(PAN)를 통해 대규모 시스템으로 존재하는 것이 일반적이다.
BladeFrame 시스템의 분산된 컴포넌트 하드웨어 구조는 디스크 없는 프로세싱 블레이드들을 고속의 Switched Fabric으로 연결함으로써, Storage Area Network(SAN)과 고속의Ethernet과 같은 전통적인 네트워크와 접속이 가능하게 된다. PAN은 네트워크에 분산되어 있는 자원들(프로세스, 메모리, 스토리지, 네트워크 연결, CD-ROM 등)을 논리적으로 하나의 클러스터 형태로 구성한다[7]. 여기서 PAN의 프로세싱 자원들이 stateless(diskless)이기 때문에, 동적인 할당과 재할당 그리고 failover를 융통성 있게 관리할 수 있다[7]. 확장성 면에서도 고속의 Switched Fabric으로 다른 PAN을 연결해서 Processing Blade Pools라고 불리는 더 큰 규모의 PAN을 구성함으로써 성능을 향상시킬 수 있다[7].
(그림 6)은 BladeFrame 시스템의 실제 구성도를 나타내고 있으며, 이는 다음과 같은 요소들로 구성되어 있다.
- BackPlane: BackPlane은 중복적으로 구성되는 고속의 시리얼 버스로서, PAN의 물리적인 내부 네트워크와 모든 블레이드를 연결하며, 블레이드들 간에 Switch Blade를 통해 초당 2.5 기가비트의 point-to-point 방식으로 데이터 전송을 지원한다. 또한 BackPlane은 모든 블레이드에 전력을 공급하고 블레이드 식별(identification) 메커니즘을 제공한다[7].
- Switch Blade(sBlade): 중복적으로 구성되는 두 개의 Switch Blade는 내부, 외부 I/O, 그리고 외부 네트워크를 위해서 PAN의 point-to-point 구조의 물리적인 Switching Layer를 제공한다. 각 Switch Blade는 BackPlane을 통해서 각 Processing Blade와 Control Blade와 연결되어 있어서 고속의 연결망을 지원, 관리한다[7]. Switch Blade와의 연결을 위해 Processing Blade와 Control Blade는 2개의 중복된 Switch Blade Host Adapter를 가지고 있다.
- Processing Blade(pBlade): 실질적인 연산을 담당하는 Processing Blade는 4개의 인텔 Xeon 프로세서, 메모리, 그리고 BackPlane에 연결된 두 개의(full-duplex) Connection Adapter로 구성되어 있다[7]. 디스크 없는 Processing Blade는 외부 스토리지와 외부 네트워크와 연결된 링크를 통해서 설정되며 일반적인 서버처럼 동작한다.
- Control Blade(cBlade): 두 개의 Control Blade는 전체 시스템을 대신하여 모든 I/O 작업을 수행한다[7]. 이를 위해서 각 Control Blade는 두 개의 100 Megabyte/second Fibre Channel 링크에 연결되며, PAN의 모든 저장장치를 관리하는 SAN망에 연결되어 있다[7]. 그리고 외부 네트워크의 연결을 위해서 각 Control Blade는 두 개의 125 Megabyte/ second Gigabit Ethernet으로 접속할 수 있는 링크를 제공한다.
3. 블레이드 서버의 구성 비교
앞에서 언급한 Nitro와 BladeFrame외에도 여러 가지 블레이드 서버가 존재한다[9-12]. 비교적 초기에 나온 RLX Technologies의 RLX System 324, 대형 컴퓨터 제조회사인 HP에서 개발한 bh 7800, Compaq의 BL10e 등이 대표적인 예이다. 그리고 Open Clustering에서 프로토타입 시스템인 Samurai Blade Server가 있다. 이들 블레이드 서버들의 구성비교는 <표 1>에 제시하였다.
IV. 응용 분야
1. 인터넷 서버
블레이드 서버는 일반 인터넷 사용자들에게 클러스터링 구조의 인터넷 서버로서 최적의 서버 플랫폼으로 인식되고 있다. 동일한 서비스를 많은 사용자에게 제공하거나, 서비스별로 별도의 서버를 운영하고자 하는 경우 블레이드 서버가 적합한 것으로 평가되며, 구체적인 용도는 다음과 같다[13].
- 웹 서버
- 메일 서버
- 인터넷 방송 스트림 서버, Video On Demand(VOD) 서버
- Application Service Provider(ASP)
2. 병렬처리가 가능한 과학계산용 서버
시뮬레이션, 그래픽 애니메이션, 통계, 수치 계산 등에 활용되어 과학계산용 프로그램을 주로 사용하는 연구소, 실험실에서 저렴한 비용으로 고성능 서버를 구축하는 데에 블레이드 서버가 적합하다. 최근 수요가 급증하고 있는 유전자 정보 분석 분야에도 높은 가격대 성능비를 제공할 수 있는 서버 솔루션으로 평가되며, 구체적인 응용분야는 다음과 같다[13].
- 유전자 정보 분석용 서버
- 모델링 및 시뮬레이션용 서버
- 암호 해독, 수치해석용 서버
3. IDC 전용 서버
많은 서버들을 관리해야 하는 인터넷 데이터 센터(IDC)에서 문제가 되는 공간과 전력 소비 문제를 해결해 줄 수 있는 가장 효율적이며, 확장성 및 관리가 용이한 최상의 클러스터 서버이다[13].
- 탁월한 공간 절약형 서버
- 성능 확장을 위한 용이한 서버 증설 가능
- 클러스터 시스템 모니터링을 통한 통합 관리 가능
V. 결론 및 향후 발전방향
최근 몇년 동안 네트워크 속도의 향상과 더불어 대규모 연산을 요하는 응용 분야가 속속 등장하고 있다. 이러한 분야에서 고가용성, 고성능, 확장성, 그리고 높은 가격대 성능비를 보장하는 서버를 필요로 한다. 비교적 저렴한 가격으로 이러한 요구사항을 충족시킬 수 있는 랙 마운트형 클러스터 서버가 폭 넓게 사용되어 왔으나 시스템의 크기가 계속 확대됨으로써 공간 배치 문제가 야기되었고, 전력 소비가 증가함으로써 발열량이 증가하는 문제가 대두되었다.
이러한 랙 마운트형 클러스터 서버의 한계점을 해결하기 위해 저전력 칩을 사용하여 작게 모듈화한 블레이드를 고속의 연결망을 통해서 하나의 케이스에 담을 수 있는 블레이드 서버가 제안되었다. 블레이드 서버는 높은 가격대 성능비, 고밀도 및 용이한 확장성, 그리고 각 응용분야에 특화될 수 있는 장점이 있다.
여러 선도 서버 제조 업체들이 앞다투어서 그들만의 고유한 구성방식으로 블레이드 서버를 제안하여서 여러 응용 분야에 적용하고 있다. 이러한 추세로 본다면 기존 랙 마운트형 클러스터 서버 시장을 블레이드 서버가 빠르게 대체할 것으로 예상된다.
그러나 블레이드 서버의 대중화를 위해서는 블레이드 모듈 규격과 연결망과의 인터페이스 표준화를 통해서 상호 호환성을 보장해야 하고, 더 낮은 가격으로 고성능의 제품을 구성할 수 있어야 할 것으로 보인다.
<참 고 문 헌>
[1] 박경, “InfiniBand의 개요,” 주간기술동향, 통권 967호, 2000. 10, pp.10-22.
[2] InfiniBandTM Architecture Specification Volume 1, June 19, 2001, http://www.infinibandta.org/ data/spec/10a/vol1r1a2.pdf
[3] InfiniBandTM Architecture-TurboCharging the Bladed Server, A VIEO White Paper, Jan. 2000, http://www.vieo.com/infiniband/bladeserver.pdf
[4] Realizing the Full Potential of Server, Switch & I/O Blades with InfiniBand Architecture, Mellanox TechnologiesTM White Paper, http://www.mellanox.com/products/shared/BladesArchWP110.pdf
[5] InfiniBandTM in the Internet Data Center, Mellanox TechnologiesTM White Paper, http://www. mellanox.com/products/shared/IBIDC160.pdf
[6] Mellanox Performance, Price, Power, Volume, Metric(PPPV), Mellanox TechnologiesTM White Paper, http://www.mellanox.com/products/shared/PPPV.pdf
[7] The EgeneraTM Processing Area Network(PAN) Architecture, EgeneraTM White Paper, 2002, http://www.egenera.com/pdf/wp_pan_arch.pdf
[8] BladeFrameTM System Overview, 2001, http://www.egenera.com/pdf/system_data.pdf
[9] RLX Technologies Products, RLX Technologies Inc., http://www.rlxtechnologies.com/products/ products.php
[10] HP Blade Server, HP Corporation, http://www.hp.co.kr/product1/servers/bladeserver
[11] Compaq BL e-Class, Compaq Corporation, http://www.compaq.com/products/servers/proliant-bl/e-class/
[12] Samurai Blade Server, Open Clustering Organization, http://www.openclustering.com/samurai_specs.php
[13] Uniclus380 응용분야, shellcomm Inc., http://www.incache.com/uniclus380/uniclus380_appl.htm