백서 EMC ISILON SMARTPOOLS 를사용한차세대 스토리지계층화 요약 대부분의파일시스템은블록디바이스기반의최소구성계층으로, 대규모의데이터를효율적으로처리할수없습니다. 이백서에서는빅데이터의고유한요구사항을충족하는최신파일시스템인 OneFS 에대해중점적으로살펴봅니다. OneFS 에포함된기본계층화기능인 SmartPools 는성능이나데이터보호수준을떨어뜨리지않으면서도스토리지비용을낮춥니다. 2015 년 1 월
Copyright 2015 EMC Corporation. All Rights Reserved. 본문서의정보는발행일현재정확한것으로간주되며모든정보는예고없이변경될수있습니다. 본문서의정보는 " 있는그대로 " 제공됩니다. EMC Corporation은본문서의정보와관련하여어떠한진술이나보증도하지않으며, 특히상품성이나특정목적을위한적합성에대하여어떠한묵시적인보증도부인합니다. 본문서에설명된 EMC 소프트웨어를사용, 복사및배포하려면해당소프트웨어라이센스가필요합니다. EMC 제품에대한최신목록은 korea.emc.com의 EMC Corporation 상표정보부분을참조하십시오. EMC 2, EMC, EMC 로고, Isilon, OneFS, AutoBalance, SmartCache, SmartPools 및 SyncIQ는미국및기타국가에서 EMC Corporation의등록상표또는상표입니다. VMware는미국및기타국가에서 VMware, Inc. 의등록상표또는상표입니다. 본문서에사용된기타모든상표는해당소유주의자산입니다. Part Number H8321.2 2
목차소개... 5 Isilon 스케일아웃 NAS 아키텍처... 5 단일파일시스템... 6 데이터레이아웃및보호... 6 작업엔진... 7 데이터재조정... 7 캐싱... 8 SmartPools... 9 개요... 9 스토리지풀... 10 디스크풀... 10 노드풀... 11 계층... 13 노드호환성및등가성... 15 지원되는프로토콜... 17 데이터스필오버 (spillover)... 17 자동프로비저닝... 17 수동으로관리되는노드풀... 18 GNA(Global Namespace Acceleration)... 18 가상핫스페어... 19 SmartPools 라이센스등록... 20 파일풀... 20 파일풀정책... 22 사용자지정파일속성... 25 SmartPools 작업분석... 26 파일풀정책엔진... 26 데이터위치... 27 노드풀선호도... 28 SmartPools 와성능... 28 SmartPools 를사용한성능향상... 28 데이터액세스설정... 29 메타데이터및데이터성능을위한 SSD 활용... 30 계층화된데이터가성능에미치는영향최소화... 32 SmartPools Best Practice... 33 3
SmartPools 활용사례... 33 SmartPools 워크플로우예... 34 예 A: 미디어포스트프로덕션에서의스토리지비용효율성... 34 예 B: 반도체설계에서의데이터가용성및보호... 35 예 C: 금융시장데이터에대한투자보호... 36 예 D: 지질측정데이터해석을위한메타데이터성능... 36 결론... 37 EMC Isilon 소개... 38 4
소개 EMC Isilon SmartPools를사용하면동일한파일시스템내에다양한수준의성능, 보호및스토리지집적도를구현할뿐만아니라, 확장가능한보편적단일스토리지리소스풀내에광범위한애플리케이션을통합할수있습니다. 이를통해세부적인성능최적화, 워크플로우격리, 활용도향상, 독립적확장을포함한모든기능을중앙집중식으로관리할수있습니다. SmartPools를사용하면워크플로우에있는데이터의가치를정책에따라정의할수있으며, 시간이지남에따라가치가변화하는데이터를가격과성능을고려하여가장적합한계층으로자동할당할수있습니다. 데이터를원활하게이동할수있으며자동정책에의한파일레벨세분화및제어, 수작업제어또는 API 인터페이스를통해성능과레이아웃, 스토리지계층정렬, 보호설정을원하는대로조정할수있습니다. 이모든작업을수행할때최종사용자에미치는영향은거의없습니다. 스토리지계층화는데이터를해당비즈니스가치에따라분류하고적절한스토리지클래스와성능 / 보호수준에맞게배치하여상당한이점을실현할수있습니다. ILM(Information Lifecycle Management) 기술은수년전부터있었지만일반적으로설치와관리가복잡하고, 파일시스템을변경시키며, 스텁파일을사용해야하는등효율성이덜어진다는단점이있었습니다. EMC Isilon SmartPools는이기종클러스터의관리를간소화하는차세대계층화방식입니다. SmartPools 기능은 Isilon OneFS 스케일아웃파일시스템에기본으로포함되어있으며전례없는유연성, 세분성및관리용이성을지원합니다. 이를위해 SmartPools는데이터레이아웃및이동성, 보호, 성능, 스케줄지정, 영향관리를비롯한 OneFS의다양한구성요소와특성을활용합니다. Isilon 스케일아웃 NAS 아키텍처 Isilon 스케일아웃 NAS(Network Attached Storage) 에서 OneFS는일반적인스토리지아키텍처의세가지계층인파일시스템, 볼륨관리자, 데이터보호를단일통합소프트웨어계층으로결합하여 Isilon 스토리지클러스터에서실행되는지능형단일분산파일시스템을구축합니다. 그림 1. OneFS 는파일시스템, 볼륨관리자및데이터보호기능을하나의지능형분산시스템으로결합 이러한특징은오늘날기업들이운영환경에서스케일아웃 NAS 를성공적으로활용할수있게된 배경이된기술혁신의핵심입니다. OneFS 는지능형소프트웨어, 상용하드웨어및분산 아키텍처라는스케일아웃의핵심원칙을따릅니다. OneFS 는운영체제일뿐만아니라 Isilon 스토리지클러스터에데이터를저장하고관리하는기본파일시스템이기도합니다. 5
단일파일시스템 OneFS는 RAID 그룹같은기존스케일업구조의제약을벗어나서운영되는단일파일시스템으로, 다양한성능 / 보호수준요구사항에따라클러스터내원하는위치에데이터를배치할수있습니다. 각클러스터는단일볼륨과네임스페이스내에서운영되고, 모든노드에파일시스템이분산되어있습니다. 따라서파티셔닝이필요없고클러스터의모든노드에서데이터가일관된방식으로클라이언트에표시됩니다. 모든정보가내부네트워크를통해노드사이에공유되기때문에어떤노드에서든데이터를쓰거나읽을수있으므로여러사용자가동시에같은데이터세트를읽고쓸때성능이최적화됩니다. 스토리지가사용자및관리자에대해완전히가상화되어애플리케이션또는사용자관점에서모든용량을사용할수있습니다. 많은계획이나감시작업없이도파일시스템을유기적으로확장할수있고, SmartPools가계층화를자동으로처리하므로관리자가파일을적절한디스크에계층화하는방법을특별히고민할필요가없습니다. 또한 Isilon SyncIQ 서비스가데이터를하나이상의대체클러스터로전환하는작업을자동으로병렬처리하므로대규모파일시스템을복제하는방법을특별히고려하지않아도됩니다. 데이터레이아웃및보호 OneFS는동시에여러구성요소 ( 노드풀당현재 4개까지지원 ) 에서장애가발생하더라도가용성을유지하며전체파일시스템과데이터세트에대해제한없는액세스를제공하도록설계되었습니다. 데이터보호기능은 Reed-Solomon 삭제코딩을사용하여파일레벨에서구현되기때문에어떠한하드웨어 RAID 컨트롤러에도구애받지않습니다. inode, 디렉토리및기타메타데이터는참조하는데이터블록과동일한수준또는상위수준에서보호됩니다. 모든데이터, 메타데이터및 FEC(Forward Error Correction) 블록이여러노드에서스트라이핑되므로전용패리티드라이브를사용할필요가없습니다. 따라서단일장애지점과병목현상이발생하지않고, 파일재구성작업을고도로병렬화된프로세스로실행할수있으며, 클러스터의모든하드웨어구성요소가항상정상적으로작동합니다. OneFS는 2배부터 8배까지다양한미러링옵션을제공합니다. 따라서지정된컨텐츠의미러본을 2개에서 8개까지생성할수있습니다. 이를통해 OneFS 메타데이터가보호됩니다. 또한이후에설명하겠지만, 단일 OneFS 파일시스템내에서데이터와메타데이터구조가논리적으로분리되므로 SmartPools에서데이터와메타데이터객체를별도로관리할수있습니다. OneFS는파일및디렉토리메타데이터를 inode와 B-트리에저장하기때문에파일시스템을수십억개의객체로확장할수있는동시에여전히매우빠르게데이터나메타데이터를조회할수있습니다. OneFS는완벽하게균형이잡힌고도로분산된파일시스템으로, 데이터와메타데이터가여러하드웨어디바이스에분산되어있습니다. 공간효율성을위해삭제코딩을사용하여데이터가보호되므로 5개이상노드로구성된클러스터에서최대 80% 이상의활용도를실현할수있습니다. 대개시스템에서약 2% 의용량을차지하는메타데이터는미러링되어성능과가용성이보장됩니다. 파일이나파일시스템또는그사이의필요한단위로세분화하여보호수준을동적으로구성할수있습니다. 클러스터전체에서데이터와메타데이터의액세스및잠금이일관적으로적용되며, 이러한균형은 OneFS의비공유 (shared-nothing) 아키텍처에서매우중요합니다. 6
클라이언트가 OneFS 관리노드에접속하여쓰기작업을수행하는경우파일을디스크에쓰기전에더작은논리적청크또는스트라이프유닛으로분할합니다. 이러한청크는클러스터노드에스트라이핑되어삭제코딩이나미러링을통해보호됩니다. OneFS는데이터보호를위해서는 Reed-Solomon 삭제코딩시스템을, 메타데이터보호를위해서는미러링을주로사용합니다. Isilon의파일단위보호기능은일반적으로업계최고수준의활용도를제공합니다. 또한 9개노드이상으로구성된대규모클러스터의경우 OneFS가최대 4개의전체노드장애까지가용성을유지하며제한없는데이터액세스를제공할수있습니다. OneFS는다양한데이터레이아웃방식을사용하여해당데이터의액세스패턴 ( 예 : 스트리밍, 동시, 랜덤등 ) 에따라성능과효율성을최적화합니다. 또한보호기능과마찬가지로이러한성능특성도파일이나파일시스템별로적용할수있습니다. 작업엔진작업엔진은 OneFS의병렬작업스케줄링프레임워크로, 전체클러스터에서중요한작업과운영을배포하고실행하며관련영향을관리합니다. OneFS 작업엔진은모든데이터보호및백그라운드클러스터작업을예약하고관리합니다. 예를들어각태스크 (task) 에대한작업을생성하고, 작업의우선순위를지정하고, 노드간통신과클러스터전체의용량활용도그리고성능이균형을이루고최적화되도록보장합니다. 작업엔진은중요도가낮은작업보다핵심클러스터기능에우선순위를부여하고, OneFS에통합된애플리케이션 (OneFS API를통해 OneFS에통합된 Isilon 추가기능소프트웨어나애플리케이션 ) 에서다양한기능의우선순위를제어하여리소스를최적으로활용할수있도록지원합니다. SmartPools 작업을비롯한각작업은구성가능한정책과스케줄로이루어진 " 영향프로파일 " 을갖습니다. 영향프로파일은해당작업이사용하게될시스템리소스양과영향정책및영향스케줄을보여줍니다. 각작업이수행해야할작업량은고정되어있지만, 해당작업전용으로지정된리소스는클라이언트데이터처리등의다른클러스터기능에미치는영향을최소화하도록조정가능합니다. 데이터재조정또다른핵심적인작업엔진의작업은 AutoBalance입니다. 이를통해 OneFS가클러스터노드전반에데이터를재할당하고재조정하여스토리지공간을더욱균등하고효율적으로활용할수있습니다. OneFS는파일데이터보호를직접관리하고드라이브또는전체노드장애가발생할경우병렬처리방식으로데이터를재구축합니다. OneFS는전용핫스페어드라이브와직렬드라이브를재구축할필요가없으며, 장애에서복구하기위해파일시스템에서사용가능한용량으로부터단순히용량을빌려옵니다. 이기술을가상핫스페어라고합니다. 이방식을통해병렬데이터를신속하게재구성하고사용자개입없이클러스터를자가복구할수있습니다. 관리자는가상핫스페어예약을생성할수있으며, 이경우사용자가가상핫스페어를위해예약된용량을사용할수없게됩니다. 7
새로운레이아웃을선택하는프로세스를재스트라이핑이라고합니다. 이메커니즘은복구, 재조정, 계층화에서모두동일합니다. 데이터이동은백그라운드에서실행되기때문에파일을항상사용할수있고최종사용자와애플리케이션에아무런영향을미치지않습니다. 캐싱 SmartCache는전역적으로정합성이보장되는읽기 / 쓰기캐싱인프라스트럭처로서, 컨텐츠에대한지연시간이짧은액세스를제공합니다. 클러스터의다른리소스와마찬가지로노드가추가됨에따라총클러스터캐시크기가증가하므로 Isilon은단일파일시스템내에서예측가능하고확장성이뛰어난성능을제공할수있습니다. Isilon 클러스터는필요에따라읽기작업에동적으로할당되는높은디스크대비캐시비율 ( 노드당여러 GB) 을제공합니다. 이러한캐시는클러스터의모든노드에서통합적이고정합성이보장되기때문에사용자가한노드에대해다른노드에서이미처리된입출력을활용할수있습니다. OneFS는각노드에고유한데이터만저장하며, 노드의 RAM은이러한데이터의 "L2(Level 2)" 캐시로사용됩니다. 이와같이고유한캐싱된블록은 Infiniband 백플레인전체에서매우빠르게액세스할수있고클러스터규모가확장되면캐시의이점도늘어납니다. 따라서 Isilon 클러스터에서디스크의입출력양이대체로기존플랫폼에서보다상당히낮기때문에지연시간이줄어들고사용자환경이개선됩니다. 순차적으로액세스되는데이터의경우 OneFS SmartRead가매우적극적으로데이터를프리페치하므로모든프로토콜에서읽기성능이크게향상됩니다. 선택사항인세번째읽기캐시계층은 SmartFlash 또는 L3(Level 3) 캐시라고하며, 이또한 SSD(Solid State Drive) 를포함하는노드에서구성가능합니다. SmartFlash는 L2 캐시블록이오래되어메모리에서제거됨에따라채워지는제거캐시입니다. 캐싱에기존파일시스템스토리지디바이스대신 SSD를사용하면여러가지이점을얻을수있습니다. 예를들어, 캐싱에예약된경우전체 SSD가사용되며상당히명확하고예측가능한방식으로쓰기가수행됩니다. 따라서일반적인파일시스템을사용할때보다활용률이훨씬높고마모도는상당히줄어들며지속성은증가합니다. 이는랜덤쓰기워크로드에서특히그렇습니다. 또한 SSD를캐시로사용하면스토리지계층으로사용할때보다 SSD 용량을사이징하기가훨씬간단하고오류발생가능성이줄어듭니다. OneFS 쓰기캐싱은쓰기버퍼링을사용하여여러쓰기작업을 NVRAM 파일시스템저널에통합또는결합하기때문에, 데이터를디스크에안전하면서도더효율적인방식으로쓸수있습니다. 이러한버퍼링은디스크쓰기페널티를줄여각쓰기작업에여러건의읽기 / 쓰기가필요한상황을방지합니다. 8
쓰기결합기 (Writer Coalescer) L1 캐시 RAM NVRAM L2 캐시 RAM L3 캐시 SSD 그림 2: OneFS 캐싱계층구조 SmartPools 개요 SmartPools는위에서설명한핵심 OneFS 특성을기반으로구축된차세대데이터계층화제품입니다. 이러한특성에는단일파일시스템, 확장가능한데이터레이아웃및보호프레임워크, 병렬작업실행, 지능형캐싱아키텍처등이포함됩니다. SmartPools는원래다음과같은두가지기본개념을구현하도록고안되었습니다. 단일이기종클러스터내에서하드웨어의하위세트를정의하는기능 단순한논리적정의또는규칙을통해이러한하드웨어하위세트와논리적파일그룹을연결하는방법 9
그림 3. SmartPools 계층화모델현재 SmartPools 구축에서는간소화와사용편의성을주요목표로계속추구하면서여러추가적인방법을통해이러한두핵심개념을확장해나가고있습니다. 스토리지풀스토리지풀을사용하면단일클러스터내의하드웨어하위세트를정의할수있으므로스토리지풀정책을구성하여파일레이아웃을특정노드세트에맞출수있습니다. 스토리지풀이라는개념은아래에설명된디스크풀, 노드풀및계층을포괄하는추상화환경을의미합니다. 디스크풀아래그림 4에나와있는것처럼디스크풀은스토리지풀계층구조내에서가장작은단위입니다. OneFS 프로비저닝의기본원리는유사한노드의드라이브를여러세트또는디스크풀로나누는것으로, 각풀이별도의장애도메인을나타냅니다. 이러한디스크풀은기본적으로 +2d:1n(2개의디스크장애또는 1개의전체노드장애허용 ) 으로보호되며, 일반적으로노드당 6개의드라이브로구성되고 3~40개의노드에걸쳐있습니다. 각드라이브는하나의디스크풀에만속할수있고데이터보호스트라이프또는미러가디스크풀전반에걸쳐확장되지않습니다. 단, 아래에설명된 GNA(Global Namespace Acceleration) 추가미러는예외입니다. 디스크풀은 OneFS에서관리되며사용자가구성할수없습니다. 10
그림 4. 클러스터디스크풀할당노드풀노드풀은유사한 Isilon 스토리지노드 ( 동등한클래스 ) 에분산된디스크풀그룹입니다. 아래그림 5를참조하십시오. 서로다른노드유형의여러그룹이하나의이기종클러스터에서함께작동할수있습니다. 예를들면다음과같습니다. 일반적으로 IOPS 작업이많은애플리케이션에사용되는 S 시리즈노드풀과동시및순차워크로드가많은작업에주로사용되는 X 시리즈노드풀과주로아카이브용으로사용되는 NL 시리즈노드풀이하나씩있을수있고, 주로장기아카이브워크로드에사용되는 HD 시리즈노드풀도있을수있습니다. 따라서 OneFS에서 SSD, 고속 SAS, 대용량 SATA 등여러드라이브미디어유형으로구성된단일스토리지리소스풀을생성하여다양한성능, 보호및용량특성을제공할수있고, 중앙집중식관리기능을통해이러한이기종스토리지풀에서광범위한애플리케이션및워크로드요구사항을지원할수있습니다. 또한구형및신형하드웨어를조합함으로써여러세대의제품에서상당한투자보호효과를쉽게얻을수있고원활하게하드웨어를교체할수있습니다. 11
각노드풀은동일한스토리지노드유형의디스크풀만포함하고있으며, 디스크풀은하나의노드풀에만속할수있습니다. 예를들어한노드에 300GB SAS 드라이브와 400GB SSD 1개가있는 S 시리즈노드는한노드풀에있는반면, 4TB SATA 드라이브가있는 NL 시리즈는다른풀에있게됩니다. 현재는노드풀당최소 3개의노드가구성되어야합니다. 3개이상의동급노드가노드풀에할당될때까지노드는프로비저닝되지않습니다. 즉, 서로연결되어있지않고쓰기가능하지않습니다. 노드풀에서노드가제거되면해당풀이완전히프로비저닝되지않은상태가됩니다. 이경우 2개의동급노드가남아있다면여전히쓰기가능하며, 하나만남아있다면읽기전용으로자동설정됩니다. 노드풀을일단생성한후에는변화하는요구사항에맞춰쉽게수정할수있습니다. 노드풀간에개별노드를재할당할수있고, 노드풀의연결을해제하여구성원노드를기존풀또는새풀에추가할수있습니다. 또한노드풀구성에서다른설정을변경하지않고언제든지노드풀의이름을바꿀수있습니다. 클러스터에새로추가되는모든노드는노드풀에자동으로할당된후추가구성단계없이디스크풀로분할되며, 해당노드풀의 SmartPools 구성속성을상속합니다. 따라서노드풀이처음생성될때노드풀별로한번만디스크풀데이터보호, 레이아웃및캐시설정을구성하면됩니다. 자동할당은새노드의공유속성에따라가장일치하는노드풀로결정됩니다. 예를들어 600GB SAS 드라이브가있는 S 노드는 600GB 드라이브가있는 S 노드디스크풀에할당됩니다. 기존노드풀에새노드와비슷한노드가없을경우유사노드의최소노드풀노드구성원자격 ( 스토리지 / 메모리구성이동일하거나유사한노드 3개 ) 이충족될때까지새노드가프로비저닝되지않습니다. # isi storagepool health -v SmartPools Health Name Health Type Prot Members Down Smartfailed --------------------- ------- ---- ------ ---------------- ------ ----------- x200_36tb_6gb OK x200_36tb_6gb:1 OK HDD +2d:1n 1-3:bay1-6 노드풀 x200_36tb_6gb:3 OK HDD +2d:1n 1-3:bay7-12 새노드풀이생성되고노드가추가되면 SmartPools 가이러한노드에 ID 를연결합니다. 이 ID 는 파일풀정책과특정디스크풀내의파일배치를결정하는파일속성에사용됩니다. 기본적으로특정파일풀정책이적용되지않는파일은기본노드풀이나설정시식별된풀에 할당됩니다. 기본값이지정되어있지않으면 SmartPools 는가용용량이가장많은풀에해당 데이터를씁니다. 디스크풀 12
그림 5. 노드풀에대한자동프로비저닝계층계층은 OneFS 플랫폼유형에따라데이터스토리지를최적화하도록논리적수퍼셋 (superset) 으로결합된노드풀그룹입니다. 아래그림 6을참조하십시오. 예를들어 X 시리즈노드풀은단일계층으로결합되는경우가많습니다. 이계층은다양한유형의 NL 시리즈노드풀 ( 예 : 1TB SATA 드라이브가있는 NL400과 3TB SATA 드라이브가있는 NL400) 을논리적컨테이너하나에통합할수있습니다. 이를통해계속최대용량의노드를구입하는고객이단일그룹또는계층내에다양한노드유형을통합하여하나의논리적그룹으로관리할수있어상당한이점이실현됩니다. 13
그림 6. SmartPools 계층구성 SmartPools 사용자는일반적으로 2~4개의계층을구축합니다. 최고속도의계층에는대개가장높은성능이요구되는워크플로우를위한 SSD 노드가포함되어있고, 가장낮은대용량계층에는수 TB 규모의 SATA 드라이브노드가포함되어있습니다. 그림 7. SmartPools WebUI 뷰 계층및노드풀 14
노드호환성및등가성 SmartPools 를사용하면특정 OneFS 버전에서지원되는모든유형의노드를동일한클러스터 내에결합할수있습니다. 유사노드가해당물리적속성에따라서로다른노드풀에 프로비저닝되며, 이러한동등한클래스의노드배치현상은상당히엄격하게유지됩니다. 목적은 일부클러스터리소스에지나치게많은양의작업이지정되지않도록하는것입니다. " 노드 불링 (node bullying)" 이라고도하는이현상에서는 CPU, 네트워크또는디스크와같은리소스가 과다하게사용될수있습니다. 관리자는계층을생성하여특정데이터를보다광범위한스토리지클래스에안전하게할당할수 있습니다. 예를들어클러스터에두가지종류의 X 노드가포함된경우이러한노드는두가지 노드풀에자동으로프로비저닝됩니다. 이러한두노드풀을하나의계층으로논리적으로결합하고 파일을이계층에배치함으로써노드풀간에자동으로균형을조정할수있습니다. 참고 : 1. 노드풀을프로비저닝하려면먼저클러스터에특정유형의노드를 3 개이상추가해야합니다. 2. 3 개이상의노드를추가했지만 3 개미만의노드에액세스할수있는경우클러스터가성능저하상태가됩니다. 클러스터쿼럼 ( 전체노드의반이상을사용가능 ) 이있는지여부에따라클러스터를사용할수있거나사용할수없게됩니다. 3. 클러스터의모든노드에대해현재유효한지원계약이체결되어있어야합니다. SmartPools 는하드웨어를노드유형별로구분하고각하드웨어종류에따라별도의노드풀을 생성합니다. 동일한노드풀에상주하기위해서는각노드의다음과같은핵심속성이동일해야 합니다. 1. 제품군 ( 예 : X 시리즈 ) 2. 섀시크기 ( 예 : 4RU(Rack Unit)) 3. 세대 (400 시리즈 ) 4. RAM 용량 ( 예 : 24GB) 5. 드라이브용량 (HDD 및 SSD 용량 / 수량 ) 그러나투자보호효과를제공하고신형노드를점진적으로추가하며구형노드를교체할 수있도록지원하기위해동등한클래스가유지됩니다. 이러한동등클래스는다음과같습니다. 15
Isilon 100 시리즈노드 6GB RAM 과 500GB HDD 12 개로구성된 X200 동급 IQ 시리즈노드 IQ 6000x 6GB RAM 과 1TB HDD 12 개로구성된 X200 IQ 12000x 24GB RAM 과 1TB HDD 36 개로구성된 X400 IQ 36000x 24GB RAM 과 2TB HDD 36 개로구성된 X400 IQ 72000x 24GB RAM, 1TB HDD 32 개, 100GB SSD 4 개로 IQ 32000x-SSD 구성된 X400 12GB RAM 과 1TB HDD 36 개로구성된 NL400 IQ 36NL 12GB RAM 과 2TB HDD 36 개로구성된 NL400 IQ 72NL 12GB RAM 과 3TB HDD 36 개로구성된 NL400 IQ 108NL 표 1. OneFS 7.2 이전의 Isilon 노드호환성 OneFS 7.2 이전에는동일한노드풀내에동일한 ' 동급 ' 노드만공존할수있었습니다. 그러나이제특정노드유형간호환성을위해노드메모리요구사항이약간완화되었습니다. 3개미만의 S210 또는 X410 노드를클러스터에추가하는경우기존 S200 또는 X400 노드풀로호환성을정의하여동일한풀내에서새로운노드가작동하도록할수있습니다. X400 X410 S200 S210 24GB 32GB 24GB 32GB 48GB 64GB 48GB 64GB 96GB 192GB 128GB 256GB 96GB 128GB 또는 256GB 표 2: OneFS 7.2의최신세대노드메모리호환성참고 : S210 노드는 S200 노드풀과호환되며, X410은 X400 노드와호환됩니다. 노드호환성에따라동일한드라이브유형, 수량, 용량과호환되는 RAM 구성을갖는노드만동일한풀에프로비저닝할수있습니다. 16
지원되는프로토콜 데이터스필오버 (spillover) 노드풀이가득차면해당풀에대한쓰기작업이다음풀에자동으로스필오버됩니다. 이기본동작을통해한가지유형의용량이가득차더라도작업을계속할수있습니다. 조직내의서로다른사업부가별도의풀을구입하거나데이터위치에보안또는보호가필요한경우와같이스필오버가바람직하지않은상황도있습니다. 이러한경우스필오버를해제하면됩니다. 스필오버를해제하면파일이하나의풀에만유지되고다른풀로이동하지않습니다. 가상핫스페어생성을위한예약은스필오버에영향을미칩니다. 예를들어풀용량의 10% 를예약하도록 VHS를구성하는경우용량이 90% 찼을때스필오버가발생합니다. 보호설정은 SmartPools 외부에서구성하고클러스터레벨에서관리하거나, SmartPools 내부에서구성하고노드풀또는파일풀레벨에서관리할수있습니다. 보호수준은해당위치와관계없이완전히구성가능하며, 노드풀의기본보호설정은 +2d:1n입니다. 자동프로비저닝 OneFS에서데이터계층화와데이터관리는 SmartPools 프레임워크를통해처리됩니다. 데이터보호및레이아웃효율성의관점에서보면 SmartPools는대용량의동종노드를더작고효율적으로보호되는디스크풀로분할할수있도록지원합니다. 예를들어 3TB SATA 디스크가있는노드 40개구성의 NL(Near-Line) 클러스터는대개 +4n의보호수준으로실행됩니다. 그런데이클러스터를 20개의노드로구성된디스크풀 2개로분할하면각각의풀을 +2n 보호수준으로실행할수있기때문에관리부담을가중시키지않으면서도보호를위한오버헤드를절감하고공간활용도를높일수있습니다. 스토리지관리를간소화한다는설계목표에따라 OneFS는 MTTDL(Mean Time to Data Loss) 과효율적인공간활용에최적화된디스크풀을자동으로계산하여클러스터를이러한풀로분할합니다. 즉, 위에서언급한예의 40개노드로구성된클러스터와같은보호수준을고객이직접결정할필요가없습니다. 자동프로비저닝을통해상응하는모든노드하드웨어세트가최대 40개의노드와노드당드라이브 6개로구성된디스크풀로자동분할됩니다. 이러한디스크풀은디스크풀당최대 2개의드라이브장애로부터보호됩니다. 여러유사한디스크풀은노드풀로자동으로결합되며, 이후에논리적계층으로통합되고 SmartPools 파일풀정책을통해관리될수있습니다. 노드의디스크를보호되는여러개의개별풀로분할하기때문에복수의디스크장애가발생했을때노드의복구성능이이전보다크게향상됩니다. 17
그림 8. SmartPools를통한자동프로비저닝클러스터를처음구성하면 OneFS에서노드풀에노드를자동으로할당합니다. 3개이상의노드가노드풀에할당될때까지노드가풀링, 즉서로연결되지않습니다. 3개미만의노드가있는노드풀은완전히프로비저닝되지않은풀로간주됩니다. 수동으로관리되는노드풀 OneFS에서생성한자동프로비저닝된노드풀이운영환경에적합하지않을경우이노드풀을수동으로재구성할수있습니다. 그렇게하려면수동노드풀을생성하고기존노드풀에서새로생성된노드풀로노드를이동하면됩니다. 참고 : Isilon에서는자동프로비저닝된기본노드풀을사용하는것이좋습니다. 수동으로할당되는풀은자동으로할당되는노드풀과비교해동등한성능과효율성을제공하지않을수있습니다. 특히변경으로인해수동노드풀의노드수가 20개미만이될경우가이에해당합니다. GNA(Global Namespace Acceleration) GNA(Global Namespace Acceleration) 는라이센스없이제공되는구성가능한 SmartPools 구성요소입니다. GNA의주요목표는성능이높고지연시간이짧은 SSD 미디어에클러스터메타데이터의복제본을유지함으로써메타데이터읽기작업 ( 예 : 파일이름조회 ) 을더욱신속하게수행하는데도움을주는것입니다. 이를통해고객은클러스터내노드각각에대해 SSD를업그레이드하거나구매할필요없이파일시스템전체에서특정워크로드의성능을높일수있습니다. 아래그림 9를참조하십시오. 이를실현하기위해 SSD가포함되지않은스토리지풀의메타데이터에대한추가미러가노드풀경계에관계없이클러스터의다른곳에서사용가능한 SSD에저장됩니다. 이에따라메타데이터읽기작업이 SSD가없는노드풀의데이터에대해서도가속화됩니다. 18
그림 9. GNA(Global Name Space Acceleration) GNA의목적은홈디렉토리, 열거작업이많은워크플로우, 많은비교작업이필요한활동과같이메타데이터를많이사용하는애플리케이션과워크로드의성능을높이는것입니다. 메타데이터읽기작업이많은워크플로우의예는 Isilon의대다수기존및신흥시장에걸쳐존재합니다. 예를들어 EDA와같은일부경우에서는이러한워크로드가많고필요한성능을제공하기위해 SSD가널리사용되고있습니다. 가상핫스페어 SmartPools VHS(Virtual Hot Spare) 는노드풀에사용가능한용량을충분히유지하여드라이브장애시데이터를재보호할수있도록합니다. VHS는전역적으로구성되지만실제로노드풀레벨에서작동하므로서로다른크기의드라이브가있는노드에서적절한 VHS 공간을예약합니다. 이를통해데이터가복구시디스크풀간에이동할수있지만동일한스토리지클래스에유지됩니다. VHS 예약은클러스터전체적으로이루어지며총스토리지의백분율 (0-20%) 또는가상드라이브수 (1-4) 로구성가능합니다. 이예약메커니즘은노드풀의 VHS 공간중일부를노드풀을구성하는각디스크풀에할당하는것입니다. 전체노드풀이 SSD로구성되어있지않은경우 SSD에서 VHS를위한공간이예약되지않습니다. 즉, 장애가발생한 SSD의데이터가복구시 HDD로이동할수있지만추가구성설정이필요없는다른방법은노드풀에비합리적인비율의 SSD 공간을예약하는것입니다. 19
새클러스터에대한기본값은가상핫스페어에서하나의가상드라이브와관련해 "reduce amount of available space" 및 "deny new data writes" 를모두사용하도록설정하는것입니다. 업그레이드시에는기존설정이유지되며, 가상핫스페어를사용하는것이권장됩니다. SmartPools 라이센스등록기본 SmartPools 라이센스는다음 3가지를지원합니다. 1. 개별파일을특정스토리지풀로수동설정하는기능 2. 파일풀정책구성의모든측면 3. SmartPools 작업실행 SmartPools 작업은스케줄에따라실행되며파일풀정책구성이나파일시스템작업을통해또는시간경과에따라변경된사항을적용합니다. 스케줄은표준작업엔진수단을통해구성가능하고기본적으로매일오후 10시로설정되어있습니다. SmartPools의스토리지풀을구성하는데는라이센스가필요하지않습니다. 드라이브는디스크풀과노드풀에자동으로프로비저닝됩니다. 파일이디스크풀전반에고르게할당되기때문에계층은생성가능하지만별로활용되지않습니다. " 글로벌 SmartPools 설정 " 은여전히모두사용가능하지만, 라이센스가없는경우스필오버가 "any" 로강제설정됩니다. 모든파일을위치에상관없이저장가능한경우스필오버설정은거의아무런의미가없습니다. 기본파일풀정책은모든파일에적용됩니다. 기본파일풀정책을사용하여보호정책과입출력최적화설정을지정할수있지만, 디스크풀정책은변경할수없습니다. 변경작업이수행되면 SetProtectPlus 작업이실행되어이러한설정이적용됩니다. SmartPools 라이센스가만료될경우파일 inode에대해설정된디스크풀정책이무시되고 "ANY" 디스크풀정책으로간주됩니다. 디스크풀정책은새디스크풀타겟을선택하는경우에만평가되기때문에재보호또는이보다높은수준의재스트라이프로인해디스크풀타겟이재평가될때까지유효한타겟을가진파일쓰기작업은이전디스크풀정책을기반으로해당타겟에대해계속수행됩니다. 새파일은 New File Attributes 메커니즘등을통해해당상위항목의디스크풀정책을상속하지만, 디스크풀정책은무시되며해당디스크풀타겟이 "ANY" 정책에따라선택됩니다. SmartPools 라이센스가적용되지않은경우에는모든디스크풀정책이무시되고정책이모든디스크풀을포함하는것으로간주되어파일데이터가모든풀전반에고르게분산됩니다. 파일풀파일풀은 SmartPools 논리계층으로, 사용자구성가능한파일풀정책에따라데이터를배치, 보호, 액세스하는위치와데이터가노드풀및계층간에이동하는방식이결정됩니다. 파일풀은개념상스토리지 ILM(Information Lifecycle Management) 과유사하지만파일스텁또는기타파일시스템수정이이루어지지않습니다. 파일풀을사용하면데이터보호설정을유지하면서성능, 공간, 비용또는기타요구사항에따라단일클러스터내다양한스토리지유형간에데이터를자동으로이동할수있습니다. 예를들어파일풀정책에따라 /ifs/foo 경로에쓴모든데이터는노드풀 1의 S 시리즈노드에배치되고 30일이지나면노드풀 3의 NL 시리즈노드로이동합니다. 20
관리를간소화하기위해노드풀및파일풀설정에는기본적인데이터배치, 이동, 보호및성능을처리하는기본값이지정되어있습니다. 이러한모든설정은간편한 UI를통해구성하고세부적으로제어할수있습니다. 또한아카이빙, 추가보호기능, 성능, VMware 파일을위해최적화된사용자지정가능한템플릿정책도제공됩니다. SmartPools 작업이실행될때데이터가이동되거나보호또는레이아웃변경등을거칠수있습니다. 스텁은없습니다. 파일시스템에서작업이자동으로수행되므로운영중단또는데이터액세스가발생할위험이없습니다. 데이터이동은빠른작업완료를위해여러노드의리소스를활용하여병렬방식으로처리됩니다. 작업이진행중인동안에는모든데이터가사용자및애플리케이션에의해사용될수있습니다. 또한시스템캐시또는 SSD(Solid State Drive) 를추가하여다양한노드의성능을보강할수있습니다. Isilon 스케일아웃 NAS 클러스터는최대 37TB의전역적으로정합성이보장되는캐시를활용할수있습니다. 대부분의노드는최대 6개의 SSD 드라이브로보강될수있습니다. 파일풀내에서해당풀의메타데이터에대한복제본이나일부데이터를풀내 SSD에배치하도록 SSD ' 전략 ' 을구성할수있습니다. GNA(Global Namespace Acceleration) 를설정하면전체클러스터의모든메타데이터에대한복제본이 SSD에보관되므로, 클러스터의모든데이터에대한액세스뿐만아니라 SSD가없는노드의데이터처리속도까지향상됩니다. 속도향상이필요없는데이터에대해서는 SSD를사용하지않는것이적절한 SSD 전략입니다. 운영환경워크로드의최대량과최소량에맞춰전반적인시스템성능에미치는영향을구성할수있습니다. 원하는 SmartPools 작업의시간이나주기와 SmartPools에할당되는리소스양을변경하면됩니다. 활용도가매우높은환경에서는샘플파일풀정책을통해사용량이많지않은컴퓨팅시간에 SmartPools가실행되도록설정할수있습니다. SmartPools 작업실행시에는적은양의리소스가필요하고대부분의환경에서기본값을사용할때문제없이작동하지만, 시스템리소스가많이사용되는경우에는추가제어를구현하는것이유용할수있습니다. 21
그림 10. SmartPools 파일풀정책엔진파일풀정책 SmartPools 파일풀정책을사용하여파일의 3가지주요속성을광범위하게제어할수있습니다. 이러한속성은다음과같습니다. 1. 파일이상주하는위치 1. 계층 2. 노드풀 2. 파일성능프로파일 ( 입출력최적화설정 ) 1. 순차 2. 동시 3. 랜덤 4. SmartCache 쓰기캐시 3. 파일의보호수준 1. 패리티보호 (+1n~+4n, +2d:1n 등 ) 2. 미러링 (2배 ~8배 ) 파일풀정책은일치되는파일속성을기준으로설정됩니다. 파일풀정책이사용할수있는속성으로는파일이름, 경로, 파일형식, 파일크기, 수정된시간, 생성시간, 메타데이터변경시간, 액세스시간또는사용자속성이있습니다. 22
적절한파일을선택하도록파일속성을설정한후에는해당파일에대해수행할작업을추가할수있습니다. 예를들어파일크기속성의경우임계값 ( 특정크기보다큰모든파일, 특정크기보다작은모든파일등 ) 을결정하는추가설정을사용할수있습니다. 다음으로, 작업이적용됩니다. 예를들어노드풀 x로이동하고, y 보호수준으로설정하고, z 액세스설정의레이아웃을지정할수있습니다. 파일속성 설명 File Name 파일이름을기준으로파일조건을지정합니다. Path 파일이저장되는위치를기준으로파일조건을지정합니다. File Type 파일시스템객체유형을기준으로파일조건을지정합니다. File Size 파일크기를기준으로파일조건을지정합니다. Modified Time 파일이마지막으로수정된시간을기준으로파일조건을지정합니다. Create Time 파일이생성된시간을기준으로파일조건을지정합니다. Metadata Change Time 파일메타데이터가마지막으로수정된시간을기준으로파일조건을 지정합니다. Access Time 파일이마지막으로액세스된시간을기준으로파일조건을지정합니다. User Attributes 사용자지정속성을기준으로파일조건을지정합니다 ( 아래참조 ). 표 3. OneFS 파일풀파일속성 'And' 및 'Or' 연산자를사용하면단일정책내에서조건을결합하여매우세부적으로데이터를조작할수있습니다. 경로에따라데이터배치를결정하는파일풀정책은 SmartPools 작업이실행되지않는상태에서노드풀에직접쓰기작업시데이터를올바른디스크에배치합니다. 경로이름이외의다른속성에따라데이터배치를결정하는파일풀정책은가용용량이가장많은디스크풀에데이터를쓴후에다음 SmartPools 작업이실행될때파일풀정책에맞춰필요에따라이동합니다. 따라서초기데이터배치시쓰기성능이항상그대로유지됩니다. 위의노드풀섹션에서언급한대로, 파일풀정책으로제어되지않는데이터는정확히이용도를위한기본값으로선택할수있는계층으로이동됩니다. 이용도를위한디스크풀이선택되지않은경우 SmartPools가가용용량이가장많은노드풀을기본적으로선택합니다. 23
실제로기본파일풀정책은영향력이매우강하기때문에거의항상사용됩니다. 대부분의관리자는모든데이터에대한제어규칙을설정하기를원하지않습니다. 관리자는일부또는대다수데이터의위치와액세스가능성에대해신경을쓰지만, 클러스터에서의위치가별로중요하지않은데이터도있습니다. 이러한데이터를위해기본정책이있습니다. 기본정책은목록에있는다른정책이적용되지않는파일에사용됩니다. 일반적으로기본정책은비용을최적화하고다른데이터를위해특별히필요한스토리지풀을사용하지않도록설정되어있습니다. 예를들어대부분의기본정책은보호수준이낮으며가장경제적인스토리지계층만사용합니다. 파일풀정책이생성되면 SmartPools는이정책을다른 SmartPools 정책과함께 Isilon OneFS 구성데이터베이스에저장합니다. SmartPools 작업이실행될때모든정책은순서대로실행됩니다. 한파일이여러정책과일치할경우 SmartPools는일치하는첫번째규칙만적용합니다. 예를들어모든 jpg 파일을 NL(Near-Line) 노드풀로이동하는규칙과 2MB 미만의모든파일을성능계층으로이동하는규칙이있고 jpg 규칙이목록에서처음에나타날경우, 2MB 미만의 jpg 파일은성능계층이아니라 NL 계층으로이동됩니다. 위에서언급했듯이단일정책내에서 'And' 또는 'Or' 를사용하여조건을결합함으로써데이터를매우세부적으로분류할수있습니다. 이예에서원하는동작이 2MB가넘는모든 jpg 파일을 NL로이동하는것일경우 'And' 연산자를사용하여파일풀정책을구성하면정확히이조건을충족하게됩니다. 정책순서와정책자체는언제든지쉽게변경할수있습니다. 특히정책의추가, 삭제, 편집, 복제, 순서변경이가능합니다. 그림 11. 데이터이동을제어하는 SmartPools 파일풀정책 24
그림 12. 파일풀정책예그림 11과 12는일반적인파일풀활용사례를나타냅니다. 한조직에서활성데이터를 Tier 1(SAS + SSD) 의성능노드에배치하고 6개월동안액세스되지않은모든데이터를경제적인 Tier 2 아카이브로이동하려고합니다. 파일정책의목록이늘어남에따라 (SmartPools는현재최대 128개의정책을지원함 ), 모든정책을수동으로살펴보면서정책이적용될때파일이동작하는방식을확인하는것은비효율적입니다. 또한 SmartPools에는명령줄에이와같은시나리오테스트와문제해결에사용할수있는몇가지고급옵션이있습니다. 파일풀정책은언제든지생성, 복제, 수정, 우선순위지정또는제거할수있습니다. 정책예도제공되어그대로사용하거나사용자지정을위한템플릿으로사용할수있습니다. 사용자지정파일속성사용자지정파일속성또는사용자속성은표준파일속성옵션 ( 파일이름, 경로, 파일형식, 파일크기, 수정시간, 생성시간, 메타데이터변경시간, 액세스시간 ) 을사용하는경우보다더세부적인제어가필요한경우에사용됩니다. 사용자속성은주요키쌍을사용하여추가식별조건으로파일을태그지정합니다. 그러면 SmartPools가이조건을사용하여파일풀정책을적용합니다. SmartPools는파일속성을설정하는기능이없지만 "setextattr" 명령을사용하여쉽게설정할수있습니다. 사용자지정파일속성은일반적으로소유권을지정하거나프로젝트선호도를생성하는데사용됩니다. 예를들어아침에실험실에도착하자마자다수의유전자염기서열분석파일에액세스하려는생명과학사용자는사용자지정파일속성을사용하여이러한파일이최고속도의스토리지로마이그레이션되게할수있습니다. 사용자지정파일속성은설정된후파일이름, 파일형식또는기타파일속성과마찬가지로 SmartPools에서일치하는파일그룹에대한위치, 보호및성능액세스특성을지정하는데활용됩니다. 다른 SmartPools 파일풀정책과달리사용자지정파일속성은명령줄이나플랫폼 API에서설정할수있습니다. 25
SmartPools 작업분석 SmartPools 작업이실행될때 SmartPools는모든파일속성을조사하고 SmartPools 정책목록과대조확인합니다. SmartPools 작업은효율성을극대화하기위해비용이더많이드는디렉토리및파일트리검색대신가능한경우항상효율적인병렬메타데이터검색 ( 논리적 inode 또는 LIN, 트리검색 ) 을활용합니다. 이와함께 SmartPools SSD 메타데이터가속화전략을구현할경우효율성이더욱향상됩니다. SmartPools LIN 트리검색에서는각노드에서병렬로작업할수있도록메타데이터를여러범위로분할합니다. 그런다음각노드는하나또는여러개의전용스레드를지정하여할당된범위에대한검색을실행합니다. 또한 LIN 트리검색에서는각파일이한번만열리므로하드링크와기타구조로인해단일스레딩, 여러회열기등이발생할수있는디렉토리검색보다훨씬더효율적입니다. SmartPools 파일풀정책엔진은파일과정책간에일치하는사항을발견하면해당파일에대한정책처리를중지합니다. 첫번째정책일치사항에따라해당파일에대한작업이결정되기때문입니다. 다음으로, SmartPools는파일의현재설정을정책에서지정하는설정과대조확인하여일치하지않는사항을식별합니다. SmartPools가해당파일에적용해야하는전체설정목록을확보하면그러한설정을모두동시에지정하고노드풀, 보호, SmartCache 사용, 레이아웃등에대한모든변경사항을반영하도록해당파일을재스트라이핑합니다. 파일풀정책엔진 SmartPools 파일풀정책엔진은작업엔진을통해제어및관리됩니다. 기본적으로이프로세스는매일오후 10시스케줄로실행되고낮은영향정책의적용을받습니다. 스케줄, 우선순위및영향정책은특정환경과워크로드에맞춰수동으로구성할수있습니다. 또한백그라운드검색을통해수행되기까지기다리지않고필요에따라별도의호출로엔진을실행하여개별파일또는하위디렉토리에적절한파일풀구성원설정을적용할수있습니다. 새정책이파일처분에미치는영향을테스트하기위해일부데이터에대해 SmartPools 작업을실행할수있습니다. 이러한데이터는단일파일 / 디렉토리또는파일 / 디렉토리그룹이될수있습니다. 작업을라이브상태로실행하여실제로정책을변경하거나, ' 시험구동 ' 모드로실행하여정책의범위와영향을추정할수있습니다. 즉, 최종상태를시뮬레이션하여각파일이파일풀정책세트로부터받는영향을확인할수있습니다. 명령줄옵션으로단일디렉토리나디렉토리그룹에대해 SmartPools 작업을실행할수도있습니다. 다음 CLI 구문은필요시특정파일또는하위트리에대해엔진을실행합니다. isi filepool apply [-r] <filename> 변경없이계산과보고만을위한시험구동평가시에는다음을사용합니다. isi filepool apply nv [PATH] 해당파일풀정책에대해다음과같은정보가반환됩니다. 1. 정책번호 2. 일치하는파일 3. 일치하는디렉토리 26
4. 일치하는 ADS 컨테이너 5. 일치하는 ADS 스트림 6. 건너뛴액세스변경사항 7. 건너뛴보호변경사항 8. 일치하는파일생성템플릿 9. HDD에배치되는파일데이터 10. SSD에배치되는파일데이터참고 : 위의 CLI 유틸리티를사용하는경우작업이디렉토리레벨에서지정되므로 LIN 검색을수행할때와달리 SmartPools가지정된디렉토리트리를이동합니다. 또한명령이동기식으로실행되기때문에명령이완료될때까지기다린후에명령프롬프트가반환됩니다. 데이터위치파일시스템탐색기는실제노드풀위치와파일풀정책의제어를받는위치 ( 즉, 다음번에성공적으로 SmartPools 작업이완료된후해당파일이이동하는위치 ) 를통해특정시점에 SmartPools로관리되는데이터가있는위치를자세히표시합니다. 클러스터에대한데이터쓰기작업이이루어질때 SmartPools는단일노드풀에만데이터를씁니다. 따라서대부분의경우에한파일은전부한노드풀내에만있고, 노드풀전반에분할되어있지않습니다. SmartPools는다음두가지상황에따라파일을쓸대상풀을결정합니다. 파일이디렉토리경로를기준으로특정파일풀정책과일치할경우해당파일풀정책으로제어되는노드풀에즉시파일을씁니다. 파일이경로이름이외의기준으로파일풀정책과일치할경우 SmartPools는가용용량이가장많은노드풀에해당파일을씁니다. 파일이가장많은용량을가진노드풀이외의다른노드풀에파일을배치하는파일풀정책과일치할경우, 예약된다음번 SmartPools 작업이실행될때파일이이동됩니다. 그림 13. 파일풀및노드풀성능, 차지백 (chargeback), 소유권또는보안을위해특정파일또는파일그룹이특정시점에정확히디스크의어디에있는지파악해야하는경우가있습니다. 일반적으로 SmartPools 환경의모든파일은전부한스토리지풀에있지만, 하나의파일이한번에 2개이상의노드풀에분할되는예외적인경우가일시적으로발생할수있습니다. 27
노드풀선호도일반적으로 SmartPools를사용하면파일이한노드풀에만상주할수있습니다. 경우에따라한파일이일시적으로여러노드풀에걸쳐있을수있습니다. 파일풀정책에따라파일이노드풀간에이동하는경우, 이동이완료될때까지해당파일의일부는소스노드풀에, 일부는대상노드풀에있게됩니다. 노드풀구성이변경되면 ( 예 : 1개의노드풀을 2개의노드풀로분할하는경우 ) 예약된다음번 SmartPools 작업이실행될때까지파일이 2개의새풀에분할되어있을수있습니다. 노드풀이가득차서데이터가다른노드풀로스필오버되어클러스터가쓰기작업을계속수락할수있는경우, 파일이의도한노드풀과기본스필오버노드풀로분할될수있습니다. 한파일이둘이상의노드풀에걸쳐있을수있는또다른상황은전체노드풀에걸친재조정또는재구축과같은일반적인재스트라이핑작업의경우입니다. SmartPools와성능스토리지계층화의주요목표중하나는데이터보호또는액세스수준을낮추지않고데이터스토리지비용을절감하는것입니다. 계층화가성능에긍정적인영향이나부정적인영향을미칠수있는여러가지영역이있습니다. 각영역과함께각상황에서 SmartPools가동작하는방식을고려하는것이중요합니다. SmartPools를사용한성능향상다음과같은여러가지방식으로 SmartPools를사용하여성능을향상할수있습니다. 위치기반성능 성능설정 SSD 전략 성능분리위치기반성능은 SmartPools 파일풀정책을활용하여성능요구사항에따라데이터를분류하고가장적절한미디어 (SSD, SAS 또는 SATA) 에배치합니다. 또한 SmartPools 파일풀규칙을통해데이터의성능과보호수준을최적화할수있습니다. 앞에서살펴보았듯이 SSD를다양한방식으로사용하여여러가지조합의데이터및메타데이터읽기 / 쓰기속도를높이고다른계층의메타데이터읽기성능을높일수있습니다. 또한성능분리를위해위치기반성능을적용할수있습니다. SmartPools를사용하면가장높은성능이필요한데이터를제외한모든데이터에서특정노드풀을분리하고, 파일풀정책을사용하여이노드풀에서가장중요한데이터를제외한모든데이터를외부로이동할수있습니다. 이방식은경우에따라강도높은작업을위해클러스터에서특정유형의노드몇개만분리하는데사용됩니다. 노드풀을손쉽게구성할수있기때문에보다큰노드풀을분할할수있고, 결과노드풀중의하나를분리하여일시적인요구사항을충족하는데사용할수있습니다. 그런다음분할된풀을보다큰노드풀로다시재구성할수있습니다. 28
예를들어이클러스터의관리자가제한된기간동안특정애플리케이션에보다높은성능을지원하는일시적요구사항을충족해야할경우최고성능계층을분할하고해당프로젝트와관련없는모든데이터를다른노드풀로마이그레이션하는정책을설정할수있습니다. 중요애플리케이션을실행하는서버는분리된노드풀에직접액세스할수있습니다. 운영환경의다른모든데이터가분리된노드풀에배치되지않도록기본정책을설정할수있습니다. 이렇게해서새로생성된노드풀을중요한애플리케이션에전적으로사용할수있습니다. 그림 14. 성능분리예데이터액세스설정파일풀 ( 또는단일파일 ) 레벨에서데이터액세스설정을구성하여데이터에액세스하는애플리케이션유형별로데이터액세스를최적화할수있습니다. 동시, 스트리밍또는랜덤액세스를위해데이터를최적화할수있습니다. 이러한각설정에따라데이터가디스크에배치되는방식과캐싱되는방식이달라집니다. 데이터액세스 설정 설명온디스크레이아웃캐싱 Concurrency 클러스터의현재로드를 해당파일에구성된데이터 보통수준의 최적화하고많은동시 보호설정을구현하는데 프리페치 클라이언트를지원합니다. 필요한최소수의드라이브에 이설정은혼합워크로드에 데이터를스트라이핑합니다. 최상의성능을제공합니다. Streaming 단일파일의고속스트리밍을최적화합니다. 예를들어 보다많은수의드라이브에데이터를스트라이핑합니다. 높은수준의프리페치 단일클라이언트의읽기 속도를크게향상시킵니다. Random 캐시프리페치를최소화하여파일에대한예측불가능한액세스를최적화합니다. 해당파일에구성된데이터보호설정을구현하는데필요한최소수의드라이브에 낮은수준의프리페치또는프리페치없음 데이터를스트라이핑합니다. 29
표 4. SmartPools 데이터액세스설정설정에나타나있듯이, 랜덤액세스설정은디스크액세스낭비를방지하기위해읽기캐시프리페치를거의또는전혀수행하지않습니다. 이는크기가작은파일 (128KB 미만 ) 과소규모블록의랜덤방식으로액세스되는큰파일에가장적합합니다. 스트리밍액세스는순차적으로읽히는중간크기파일및큰파일에가장적합합니다. 이액세스패턴은높은수준의프리페치를사용하여전반적인읽기처리량을개선하며, 온디스크레이아웃은다수의디스크에파일을분산하여액세스를최적화합니다. 동시 ( 모든파일데이터의기본설정 ) 액세스는보통수준의프리페치를수행하는절충적방식입니다. 이액세스는랜덤액세스와순차액세스가조합된파일세트에사용하십시오. 메타데이터및데이터성능을위한 SSD 활용노드풀내에 SSD를추가하면대부분의워크로드에서성능을크게향상할수있습니다. Isilon 아키텍처에서데이터또는메타데이터가속화를위한 SSD 전략을사용함으로써 SSD를통해전체클러스터의성능을높일수있습니다. 다음과같은여러 SSD 전략중에서선택가능합니다. Metadata Acceleration, Avoid SSDs, Data on SSDs, Global Namespace Acceleration, L3 Cache(SmartFlash). SSD를사용할수있는풀의기본설정은 'Metadata Acceleration' 입니다. Metadata read acceleration: 파일메타데이터의기본미러를 SSD에생성하고나머지메타데이터와모든실제파일데이터를 HDD에씁니다. Metadata read & write acceleration: 파일메타데이터의모든미러를 SSD에생성합니다. Avoid SSDs: SSD를사용하지않고, 연결된모든파일데이터및메타데이터를 HDD에만씁니다. 이전략은 SSD 스토리지가부족하여우선순위에따라 SSD를활용하려는경우사용됩니다. Data on SSDs: 노드풀의모든데이터와메타데이터가 SSD에상주합니다. SSDs for L3 cache: 모든노드풀의 SSD가 L3 또는 SmartFlash 읽기캐싱에사용됩니다. 참고 : SSD 전략과 GNA는유기적으로작동합니다. 예를들어모든클러스터데이터가 "avoid SSD" 전략으로설정된경우 GNA 설정은아무런영향을주지않고 SSD가사용되지않습니다. GNA가해제된상태로모든파일이 "metadata read" 로설정된경우, SSD가있는노드풀의파일만읽기속도향상효과를얻게됩니다. 그런다음 GNA가설정되면모든파일에읽기속도향상효과가나타납니다. 일부노드에만 SSD가포함된혼합클러스터에대한일반적인설정은모든파일에대해 "metadata read" SSD 전략을사용하고 GNA를설정하는것입니다. SmartPools 라이센스는단지서로다른파일을서로다른스토리지계층에배치하기위해필요합니다. 서로다른파일풀에대한스토리지풀을다르게설정하더라도 SSD 전략은모든파일에동일한값으로설정되기때문에실제로는전역적으로설정되는것입니다. 30
L3 캐시설정 (SmartFlash) L3 캐시는단순한 on/off 구성설정을통해노드풀단위로사용하도록설정됩니다. 이외에는추가적으로변경해야할구성설정이없습니다. L3가사용하도록설정되면노드풀에구축된모든 SSD가 L3에사용됩니다. 또한 L3는 GNA(Global Namespace Acceleration) 를제외하고는다른 SSD 전략과함께사용할수없습니다. L3 캐시노드풀 SSD는 GNA에사용할수없습니다. 참고 : L3 캐시는기본적으로 SSD 를포함하는모든새노드풀에서사용하도록설정됩니다. 그림 15. SSD 가포함된노드풀에 L3 캐싱설정 WebUI의 SmartPools Settings 페이지에서도 SSD가포함된모든새노드풀의기본구성을 L3 캐시로설정할지여부를지정할수있습니다. 그림 16. 새노드풀에서기본적으로 L3 캐싱구성 31
특정노드풀에서 SmartPools 대신 L3 캐시를사용하도록 SSD를변환하는경우변환진행률은변환프로세스가진행되는동안 SSD 공간사용량 ( 사용된용량 ) 을주기적으로추적함으로써추정할수있습니다. 또한, L3 변환을담당하는 Flexprotect_Plus 또는 SmartPools 작업의작업영향정책이더빠르거나느리게실행되도록그우선순위를조정할수도있습니다. 그러면클러스터리소스에대해변환프로세스가미치는영향은반대로높아지거나낮아집니다. 계층화된데이터가성능에미치는영향최소화 SmartPools를사용하여성능이향상되는영역이있지만모든계층화방식에서는데이터위치, 계층화데이터이동작업등으로인해성능이저하되는경우가발생한다는점을인식해야합니다. 위에서 SmartPools의성능향상기능으로데이터위치와성능분리에대해설명했습니다. 예상할수있듯이데이터를낮은속도의드라이브미디어에배치하면일반적으로액세스속도가느려집니다. 스케일아웃 NAS가갖는또다른아키텍처상의특성은데이터에액세스하는클라이언트의네트워크액세스지점이해당데이터가상주하는노드와다른클래스의노드에있거나그노드로로드밸런싱될수있다는점입니다. 이액세스노드는다른프런트엔드입출력기능, 캐시등을가질수있지만성능특성은여전히데이터가상주하는스토리지클래스에의해크게좌우됩니다. 일반적으로대부분의경우 SAS가 SATA보다빠르지만스핀들수도매우중요한영향을미칠수있습니다. SmartPools 환경에서성능에미치는가장중요한영향은데이터가물리적으로상주하는미디어유형이아니라애플리케이션이연결되는노드풀의노드특성입니다. 예를들어네트워크측에병목현상이없다고할때노드에캐시가많은노드풀을통해클러스터에연결되는한, 스트리밍애플리케이션에서는 CPU 성능이더낮은 SATA 노드의데이터와 CPU 성능이더높은 SAS 노드의데이터간에성능차이가매우적게나타납니다. 마찬가지로랜덤액세스패턴을갖는애플리케이션의경우연결되는노드풀에사용가능한 CPU 리소스가충분하다면, 대부분회전식미디어유형별실제데이터위치에따라성능에큰차이가발생하지않습니다. 계층화된스토리지환경에서성능과관련하여고려할중요한사항또하나는데이터이동자체가전반적인시스템리소스에미치는영향입니다. 데이터를노드풀간에이동하는작업자체가시스템리소스를사용합니다. SmartPools는여러가지방식으로데이터이동의영향을완화합니다. 첫째, 작업엔진이효율성을극대화하도록설계되었습니다. 둘째, 최종사용자가영향정책을완전히구성하여시스템리소스가데이터이동에할당되는방식과데이터이동이이루어지는경우를제어할수있습니다. 작업엔진영향정책은다음과같습니다. Paused: 아무작업도수행하지않고기다립니다. Low: 작업엔진에할당된리소스의 10% 이하를사용합니다. Medium: 작업엔진에할당된리소스의 30% 이하를사용합니다. High: 작업엔진에할당된리소스를최대한사용합니다. 영향정책은 SmartPools 작업별로한번설정하거나, 특정환경의일반적인워크로드증감에따라영향설정을변경할수있는파일풀정책으로제어할수있습니다. 32
SmartPools Best Practice 최적의클러스터성능을위해서는다음과같은 OneFS SmartPools Best Practice를준수하는것이좋습니다. 각계층의성능및보호프로파일을정의하고적절히구성합니다. 최소 10% 의공간을할당하여 SmartPools 가상핫스페어를설정합니다. 파일이서로다른파일풀정책과일치되도록하는파일하드링크를생성하지않습니다. 노드풀을계층으로결합하면, 파일풀규칙이계층내특정노드풀이아닌계층을타겟으로설정됩니다. SSD가포함된노드풀과 SSD가포함되지않은노드풀을결합해계층을생성하지않습니다. GNA를설정하기전에 SSD가총클러스터가용용량의최소 2% 로구성되고최소 20% 의노드에분산되어있도록합니다. 특정워크로드에대한메타데이터작업이읽기, 쓰기또는그두가지조합으로편중되지않았는지확인하고최적의 SmartPools 메타데이터전략을선택합니다. 클러스터용량활용도 (HDD 및 SSD) 가 90% 미만으로유지되도록합니다. SmartPools 활용사례 OneFS SmartPools는일반적으로다음과같은방식으로사용됩니다. 기존파일계층화 보다빠른노드에 " 최신 " 데이터를저장하고경제적인스토리지에 " 오래된 " 데이터를저장합니다. 파일이상주하는위치가보다유연하게선택됩니다. 파일이보다빠르게이동합니다. 메타데이터가속화 SSD 노드를사용하여 NL 노드에저장된아카이브데이터에대한메타데이터작업 ( 예 : 검색및인덱싱 ) 속도를높입니다. 애플리케이션파티셔닝 서로다른사용자, 그룹또는프로젝트의파일을별도의하드웨어에저장합니다. 동급노드지원 새로운유형의노드를거의동일한이전세대노드풀에대해추가하거나교체합니다. 자동프로비저닝및대규모클러스터지원 대규모클러스터는신뢰성향상을위해디스크풀에자동으로프로비저닝됩니다. 노드를손쉽게추가할수있습니다. 적절한보호기능이자동으로구성됩니다. 33
SmartPools 워크플로우예 예 A: 미디어포스트프로덕션에서의스토리지비용효율성일반적으로미디어포스트프로덕션에서는각단계에많은양의대용량파일이사용됩니다. 편집과시각효과작업에스토리지리소스가많이사용되고, 완료된후에는결과물이참조작업으로아카이빙되어장기간보존됩니다. 지난 5년만보았을때도 3D 렌더링과 HD 형식으로전환함에따라포스트프로덕션에필요한스토리지양은 10배정도증가했으며, 최종프로젝트크기는두세배로늘어났습니다. 포스트프로덕션시설은연계상품, 라이센스제품및변형제품을마케팅하기위해보다빠른턴타임, 보다다양한효과그리고더많은수의포스트릴리즈프로젝트를제공해야하는압박을받고있습니다. 포스트프로덕션에서는주요결과물로대량의데이터가생성됩니다. 이러한데이터는수백 TB, 더일반적으로는수 PB 규모로증가할수있으며프로젝트가진행중인동안많은사람과프로세스에의해매우빠르게액세스되어야합니다. 그이후에는장기간동안후속프로젝트에서간헐적으로참조되기때문에회사내에서상업적수명을유지하게됩니다. 즉포스트프로덕션데이터는중요성과적시성이모두높은상태에있다가다시필요해질때까지유휴상태로유지됩니다. 그리고이러한프로세스를반복하게됩니다. 그림 17. 미디어포스트프로덕션예작업데이터를고성능디스크에배치하고나머지는그보다낮은성능의스토리지에배치한상태에서모두를스트리밍액세스용으로설정하고높은수준으로보호하는 2계층또는 3계층솔루션이점점더널리사용되고있습니다. 이러한방법으로관리중인전체데이터중 60%~95% 를상대적으로저렴한디스크에보관하면서도모두를일정수준이상의속도로액세스하고, 언제든지가장빠른디스크에다시상향이동할수있으며장기간동안완벽하게보호할수있습니다. 34
예 B: 반도체설계에서의데이터가용성및보호논리적 / 물리적설계와검증은반도체제조를위한 EDA(Electronic Design Automation) 프로세스에서수행되는복잡한초기단계작업입니다. 이설계데이터는중요성이높으며해당업계에서무엇보다중요한요소로고려되는것은출시시기입니다. 회사에서는이제품매출에의존하는부분이크므로관련워크플로우의우선순위가높습니다. 전세계여러엔지니어가프로젝트를위해협업을수행하며모두가데이터를적시에액세스할수있어야합니다. 이전설계데이터와기타지적재산도많이활용되고이후프로젝트에서재사용되므로수십년에걸친아카이브및보존이요구되는경우가많습니다. 더욱이이러한데이터는수년또는수십년동안그중요성이계속유지될수있습니다. 하지만적시성은낮습니다. 오래된설계데이터를빠른속도로액세스해야하는경우가거의없기때문입니다. 기간별설계데이터가참조되는모든경우에는시간이별로중요하지않아저장되는디스크유형을변경할필요가없습니다. 물론법적증거자료검색기간의경우에는장기아카이브가부적절할수있습니다. 즉, 오래된설계데이터는중요성은높지만적시성이낮습니다. 그림 18. EDA에서의데이터성능및보호이러한엔지니어링설계데이터와기간별설계데이터의예는중요한점을시사합니다. 동일한인프라스트럭처에나란히존재하는두가지데이터세트, 즉적시성과중요성이모두높은데이터세트와중요성은높지만적시성이낮은데이터세트모두에대해데이터보호가필요하다는것을나타내기때문입니다. 데이터를빠르게또는더경제적으로처리하면서도두가지데이터유형을동일한수준으로보호하는시스템이필요합니다. EDA 워크플로우는종종 HPC 컴퓨팅팜의일시적인처리요구사항을충족하기위해추가스토리지계층, 즉 ' 초기공간 ' 을사용합니다. 일반적으로이는높은트랜잭션성능요구사항을가지며대개 SSD 기반스토리지노드를사용합니다. 그러나초기공간은임시데이터이기때문에보호및보존요구사항이매우낮습니다. 35
SmartPools를사용하면성능계층과초기공간계층모두에고성능 SAS 및 SSD(S 시리즈 ) 노드를사용하고대용량아카이브계층에대용량 SATA(NL 시리즈 ) 를사용하는 3계층아키텍처를통해이를구현할수있습니다. 하나의파일풀정책을사용해기간별설계데이터를대용량계층으로제한하고높은수준으로보호하는한편, 또다른파일풀정책을사용해현재설계데이터를가장빠른계층으로제한하고동일한보호수준을적용할수있습니다. 예 C: 금융시장데이터에대한투자보호금융시장데이터는 24시간동안전세계여러출처를통해투자회사에의해수집됩니다. 이러한실시간데이터는캡처, 저장및분석되어미시 / 거시시장동향을예측함으로써매입추천의근거를마련하는데활용됩니다. 데이터캡처와이후분석결과에서하루에수 TB의데이터가생성됩니다. 실시간캡처는무료이지만기간별데이터는필요한경우서비스회사를통해구입해야합니다. 따라서성능과신뢰성이매우중요합니다. 분석되는데이터의대다수는 48시간이채안된데이터이지만이러한데이터도무기한보존됩니다. 이를통해모든검토기간동안시간경과에따른모델정확성을장기간분석하고검토할수있습니다. 데이터수명이매우긴까다로운운영환경이기때문에성능과아카이브기능은물론뛰어난 TCO(Total Cost of Ownership) 를제공하는확장성및내구성있는시스템에대한선호도가높습니다. 이경우에는중간성능의회전식미디어에서새로운데이터를수집하고, 고성능회전식미디어 (SSD가포함될수도있음 ) 에서분석을실행하고, 간헐적으로만사용되는오래된데이터는보다느리고저렴한디스크로옮기는 3계층 SmartPools 클러스터를구축하는것이좋습니다. 이러한접근방식을통해원래의장비를수년간가동하면서완전히활용되는용량계층으로낮추고가격및 / 또는성능특성이좀더뛰어난새로운드라이브와새로운노드를그위에추가할수있습니다. 이러한 OneFS의투자보호방식은잦은하드웨어교체로인한부담과업무중단을방지합니다. 예 D: 지질측정데이터해석을위한메타데이터성능에너지탐사에필요한지질측정데이터는대개방대하고계속증가하고있으며많은조직에서보다빠른분석과정확한시추관련예측을위해수 PB의데이터를온라인으로유지하고있습니다. 이러한데이터는수천개의디렉토리에걸쳐수만또는수십만개의파일에배열될수있습니다. 대개이러한파일의 30% 미만은어느달에든상관없이사용할수있지만관리자는사전및사후스택분석, 해석및프로젝트계획을위해여전히파일을찾아야합니다. 방대한디렉토리구조와수많은파일을이동하고, 디렉토리내용을나열하며, 기타메타데이터작업을수행하는데따르는지연시간은대개분단위에이릅니다. 이는하루에도여러번반복되는작업에는분명부적합합니다. 지질측정데이터는탐사에있어핵심적이므로중요성이높으며, 자주액세스하지않는파일의경우데이터는적시성이낮을수있지만메타데이터는적시성이높습니다. 요약하자면지질측정데이터는중요성이높으며메타데이터는적시성이높습니다. 해당데이터는적시성이높을수도있고낮을수도있습니다. 이경우 GNA(Global Namespace Acceleration) 를사용하는것이더적절한방법입니다. 36
그림 19. GNA(Global Namespace Acceleration) 모든메타데이터는 SSD에저장되지만상대적적시성에따라더빠르거나느린디스크로재배치됩니다. 그결과, 시스템에있는대부분의데이터에대해비용을절감하면서도어떤데이터든지바로찾을수있습니다. 메타데이터가가속화되기때문에백업, 마이그레이션, 복제를비롯한다른여러작업에도성능이점이생깁니다. 결론 지금까지기존의스토리지계층화구축은일반적으로비용이많이들고기술적으로위험하며관리가복잡한작업인경우가많았습니다. 무엇보다도데이터가치에따라액세스가능성, 보호및성능요구사항을조정한다는주요목표를달성하지못했습니다. SmartPools는업계를선도하는스케일아웃 NAS 아키텍처인 Isilon OneFS와고유하게통합되며성능및데이터보호수준을그대로유지하면서도스토리지비용을대폭절감한다는간편한스토리지계층화의약속을실현합니다. 간단하면서강력한인터페이스, 유연한옵션과지능형기본설정을통해 SmartPools는구성및관리가용이하며수 TB에서수 PB 단위로확장가능합니다. 수 PB 단위로확장가능하고, 새용량과새기술을추가할수있으며, 이전용량을동일한시스템에그대로유지할수있어강력한투자보호효과가실현됩니다. 또한 OneFS 핵심기능과의통합으로데이터마이그레이션위험요소를제거하고사용자가데이터이동에할당되는시스템리소스를제어할수있도록합니다. SmartPools 및다른 EMC Isilon 제품에대한자세한내용은 http://korea.emc.com/domains/isilon/index.htm을참조하십시오. 37
EMC Isilon 소개 EMC Isilon은스케일아웃스토리지부문의글로벌리더로서단순한데이터저장이아닌완벽한관리를원하는기업에게강력하고간편한솔루션을제공합니다. EMC Isilon 제품은규모에관계없이간편하게설치, 관리및확장할수있습니다. 또한기존의엔터프라이즈스토리지와는달리추가되는스토리지수, 요구되는성능수준또는향후비즈니스요구사항의변화에관계없이탁월한사용편의성을보장합니다. Isilon에대한자세한내용은 http://korea.emc.com/isilon에서찾을수있습니다. 38