제품리뷰

커뮤니티

제품리뷰

총 게시물 17건, 최근 0 건
[MTrue]

엠트루(MTrue) 나스 구축 [4부]

글쓴이 : 관리자 날짜 : 2017-02-21 (화) 10:07 조회 : 1004




E. RAIDz

앞서 소개한 윈도우의 스토리지 풀과는 달리 Freenas의 RAIDz는 하드웨어 레이드와 동일한 방식으로 구성이 됩니다. Chunk 단위가 아닌 Block 단위로 데이터를 저장하고 관리합니다. 따라서 기존 스토리지 개념에 익숙하시다면 RAIDz 구성과 운영에 크게 어려움이 없습니다.

 

먼저 500GB HDD 3개를 이용하여 RAIDz(RAID5) 볼륨을 생성 해 보도록 하겠습니다.

 

 

db148bf67c46370e7e7bdc4c339f2351_1487644
 

 

a. Storage -> Volume -> Volume Manager 로 이동합니다.

 

 

db148bf67c46370e7e7bdc4c339f2351_1487644
 

b. "+"버튼을 이용하여 500GB HDD 3개를 추가합니다. 볼륨 레이아웃을 RAIDz로 설정하고 "ADD Volume"을 클릭합니다.

 

 

 

db148bf67c46370e7e7bdc4c339f2351_1487644
 

 

c. Storage -> Volume -> View Volumes에서 생성된 볼륨을 확인 하실 수 있습니다. 이제 이 볼륨을 이용하여 파일을 공유하고, 저장 할 수 있습니다.

 

 

 

 

F. L2ARC

 

​ZFS의 읽기 캐쉬 기능인 L2ARC는 메모리와 디스크 사이에 캐쉬 역할을 해줍니다. 따라서 윈도우의 스토리지 계층과는 달리 볼륨과는 별도로 존재하며 SSD에 장애가 생기더라도 볼륨에는 전혀 데미지를 주지 않습니다.

 

방금 만든 볼륨 "VD0"에 L2ARC를 추가해 보도록 하겠습니다.

 

db148bf67c46370e7e7bdc4c339f2351_1487644 

 

a. Storage -> Volume -> Volume Manager로 이동합니다. "Volume to Extend"에서 방금 전에 생성한 VD0를 선택합니다.

b. Volume Layout 에서 L2ARC를 선택하고 "Extend Volume" 버튼을 누르면 VD0 볼륨에 L2ARC가 추가됩니다.

 

 

 

db148bf67c46370e7e7bdc4c339f2351_1487644
 

c. 상단 "Reporting" 메뉴에 "ZFS"로 들어가면 L2ARC의 상태와 사용량을 확인 할 수 있습니다. ARC는 메모리캐시의 상태를 나타내고 L2ARC는 SSD를 이용한 캐시의 상태를 나타냅니다.

 

 

 

db148bf67c46370e7e7bdc4c339f2351_1487644
 

 

d. Shell에서 "Zpool status" 명령어를 이용하면 cache가 지정된 것을 확인 할 수 있습니다.

 

zPool 상태 확인

zPool status VD0

 

 

 

G. Dataset

 

일반적인 파일시스템에서는 파티션을 먼저 나누고, 혹은 볼륨을 먼저 나누고 그 위에 파일시스템을 포맷합니다. 그러나 ZFS는 먼저 파일시스템을 만들고 불륨을 나눕니다. 이것을 Dataset 이라고 합니다. Dataset을 이용하면 파티셔닝을 디렉터리 생성하듯 쉽게 할 수 있습니다. Dataset의 특징 중 하나는 Dataset 밑에 또 다른 Dataset을 생성 할 수 있다는 것입니다. Dataset 밑에 추가적으로 Dataset을 설정하여 권한을 달리준다거나, 용량 제한이 걸린 디렉터리를 만들어 배포하거나 할 수 있습니다. 윈도우나 리눅스의 경우 디렉터리에 용량 제한을 걸 수 없습니다. 그래서 별도의 볼륨이나 파티션을 생성하거나, User Quota를 이용하게 됩니다. 그러나 파티션은 생성에 제약이 있고, 매번 볼륨을 생성하기에는 관리가 힘들다는 단점이 있습니다. User Quota는 유저가 사용한 전체 용량을 합산하기에 특정 티렉터리에 용량 제한을 걸 수 없는 문제가 발생합니다. 이런 문제를 Dataset을 이용해 깔끔하게 해결할 수 있습니다.

 

이번에는 300GB의 Dataset을 생성해 보도록 하겠습니다.

 

 

db148bf67c46370e7e7bdc4c339f2351_1487644
 

 

a. Storage -> Volumes -> /mnt/VD0 -> Create Dataset 을 클릭합니다.

b. "advanced Mode"를 클릭하면 위와 같은 화면이 나옵니다. 이름을 지정하고, "Reserved space for this Dataset"에 300GiB를 입력하고 "Add Dataset"을 누르면 Dataset이 생성됩니다. 여기서 "compress level"을 이용해 저장되는 데이터를 압축할 수 있습니다. ZFS 권장은 lz4 이고, 사용자의 입맛에 따라 압축 없음으로 설정하거나, 다른 압축 알고리즘을 이용할 수 있습니다.

 

 

H. Zvol

보통 iscsi를 이용하여 volume을 export 할 때 더미 파일을 생성하여 export 합니다. 그러나 파일을 생성해서 하는 경우 용량을 추가할 때  문제가 발생합니다. 그리고 단편화에 취약해 지는 문제가 있습니다. ZFS에서는 zvol 기능을 이용하여 외부로 export 할 수있는 가상 볼륨을 생성 할 수 있습니다. /dev에 블록 디바이스 형태로 생성이 되며, 블록사이즈지정, 확장 축소의 유연함 등 다양한 편의를 제공합니다.

 

 

db148bf67c46370e7e7bdc4c339f2351_1487644
 

 

a. Storage -> Volume -> /mnt/VD0 -> Create zVol을 이용하여 /mnt/VD0 밑에 zVpol 생성 할 수 있습니다.

 

 


I. 중복제거

 

ZFS는 Block 단위 중복제거를 지원합니다. 윈도우와는 다르게 실시간으로 중복제거가 진행됩니다. 1개 블록당 340 바이트의 메모리 공간을 요구하기 때문에 충분한 메모리를 먼저 확보하고 진행 할 것을 권장합니다. Dataset 구성시 설정이 가능하며 Storage -> Volumes -> View volumes 에서  "Edit Option"아이콘을 통해서 변경이 가능합니다.

 

db148bf67c46370e7e7bdc4c339f2351_1487644
 

 

a. Dataset 생성시에는 하단에 ZFS Deduplication 메뉴를 On하면 사용 가능합니다.

 

 


db148bf67c46370e7e7bdc4c339f2351_1487644
 

미리 생성된 볼륨에서도 "Edit Option"을 통해 사용이 가능합니다.

 

 

J. 다양한 파일스토리지

 

지금까지 볼륨을 생성하고 L2ARC와 중복제거를 설정했습니다. 이제 각종 프로토콜을 이용해 파일을 공유할 수 있습니다.

 

db148bf67c46370e7e7bdc4c339f2351_1487644
 

 

생성된 볼륨은 위와 같은 프로토콜을 이용하여 공유될 수 있습니다. 이번에는 WIndows SMB를 이용하여 공유를 활성화 하고, 중복제거 동작을 확인 하도록 하겠습니다.

 

 

db148bf67c46370e7e7bdc4c339f2351_1487644 

 

a. 테스트에 앞서 공유 대상인 /mnt/VD0/Shared 의 퍼미션을 변경 하도록 하겠습니다.

777(rwxrwxrwx)로 변경하였습니다.

db148bf67c46370e7e7bdc4c339f2351_1487644
 

 

b. Sharing -> Windows(SMB)Share -> Add Windows(SMB)Share를 클릭하여 위와 같이 /mnt/VD0/Share를 공유 대상으로 지정합니다. 테스트를 위해 Guest Access를 Allow 했습니다.

db148bf67c46370e7e7bdc4c339f2351_1487644
 

 

c. 파일 전송에 앞서 현재 중복제거율을 먼저 확인해 보도록 하겠습니다. Zpool 명령어를 이용합니다. 1.00x 즉 아직 중복된 데이터가 없는 상태입니다.

 

중복제거율 확인

zpool list VD0

 

db148bf67c46370e7e7bdc4c339f2351_1487644
 

 

d. 윈도우 클라이언트에 접속하여 동일한 파일 5개를 전송했습니다.

 

db148bf67c46370e7e7bdc4c339f2351_1487644 

 

e. 다시 zpool 명령어를 이용하여 확인결과 중복제거가 3.99x로 나타나는 것이 확인 되었습니다.

 

 

 

3. 총평

​Windows나 Freenas 를 이용하여 직접 NAS를 구축하는 경우 시중에 판매중인 NAS 제품에는 없는 특별한 기능들을 이용할 수 있는 장점이 있습니다. 중복제거, Thin 프로비저닝 등 고가의 기업용 스토리지에서 사용 할 수 있는 기능들을 손쉽게 구축하고 사용 할 수 있었습니다. 그러나 이렇게 강력한 대부분의 기능들은 낮은 사양의 하드웨어에서 동작하는 것이 권장 되지 않습니다. 충분한 프로세서 파워와 메모리, 그리고 고성능 네트워크 기능이 밑바탕 되어야 합니다.

AsrockRack C2750D4i 와 MTrue NAS 케이스는 스토리지 환경을 직접 구축할 때 필요한 성능과 확장성 다양한 기능들을 충실히 갖추고 있습니다. 마땅한 범용 하드웨어를 찾지 못해 고민할 때 좋은 선택이 될 것으로 보입니다.​ 


목록