클라우드스토리지서비스 N 드라이브 NHN Business Platform 저장시스템개발팀 / 전성원 2011 NHN Corporation
목차 I. N 드라이브서비스를위해풀어야할숙제들 II. NHN 파일스토리지 OwFS III. OwFS 적용으로얻은이점
N 드라이브서비스를위해풀어야할숙제들
N 드라이브서비스
N 드라이브 : 규모 l 30GB C: 드라이브 N: 드라이브 1.5MB 고화질사진 20,480 장 6MB 고음질 (192k) mp3 음악 5120 곡 700MB 동영상파일 44 편 l 700 만사용자 사용자 x 용량 = 7,000,000 x 30GB =...
N 드라이브 : 사업측면당면한문제들 N 드라이브 : 사업측면당면한문제들 1 모든사용자에게준다고?? 2 얼마나쓸지모른다고?? 3 얼마나빨리증가할지예측할수없다고?? 4 어떤경우든서비스중단은없다고?? 5 데이터는절대잃어버려서는안된다고?? 6 그러면서도, 제일싸게만들라고
N드라이브 : 개발 / 인프라측면당면한문제들 N 드라이브 : 개발 / 인프라측면당면한문제들 저장할파일이엄청많고, 계속늘어나요 그것도폭발적으로 파일시스템용량이다차면알아서파일들을재배치해주면좋겠어요 24 시간 X 7 일가용성을보장해주세요 NAS, SAN 너무비싸요 분산하면빠를것같고, 복잡하게어디에있는지알고싶지않아요? 그냥알아서해주면안되나요? 혹, 디스크오류라도나면알아서척척복구해주면좋겠어요 Scalable, Fault Tolerant, Distributed File System!! OwFS (Owner Based File System)
NHN 파일스토리지 OwFS
온라인파일서비스의특성 l 파일의특성 파일의개수가수십억개이상으로늘어남 개개의파일의크기는작음 ( 수 KB ~ 수십 MB이대부분 ) 단일서비스의저장공간이수십 Petabyte 이상으로늘어남 l 파일접근패턴 WORM (Write-Once-Read-Many) 변경이거의없음 단순연산 Create, Read, Delete 새롭게생성된파일에대한참조지역성있음 l 24x7 가용성요구
어떻게저장하는것이효과적일까? l 개별파일의저장 파일은분할해서저장하지않고전체를저장 l 파일은 3 개의복제본가짐 HDD/ 서버고장에대응 파일쓰기부담은늘어나지만, 읽기부하는분산가능 l 파일의복제본정보관리 ( 파일시스템의메타데이터 ) 개별파일단위로복제본정보를저장하지말고모아서관리 서로관련된파일들을모아놓은 container 를 Owner 로정의 Owner 는분산과복제의기본단위 OwFS (Owner-based File System) 에서파일의경로 (Owner 이름, Pathname)
Owner 개념 사진 _2008 년 사진 _2007 년 문서 _ 매뉴얼 사진 _2008 년 내문서 사진 2007 년 2008 년 2009 년 문서 다운로드 매뉴얼 PT 자료...... 문서 _PT자료사진 _2009년사진 _2008년문서 _ 매뉴얼사진 _2007년 문서 _ 다운로드문서 _ 매뉴얼사진 _2007년문서 _ 다운로드사진 _2009년 문서 _PT자료문서 _ 다운로드 X 문서 _ 다운로드사진 _2009년 문서 _PT 자료......
분산파일시스템의구현방법 l 고려사항 성능 Legacy 응용과호환성 개발및시험기간 코드유지보수 파일시스템버그로인한영향도 플랫폼업그레이드용이성 이식성 l Kernel level vs. User level User level 구현의장점이더많음 API 를이용하여접근
OwFS 구성요소 응용서버 l OwFS 클라이언트 API Linux/Windows 용 C 라이브러리지원 Java client 지원 메타데이터서버 (MDS) l 메타데이터서버 (MDS) MDS 는 owner 별복제본위치, 상태정보유지 각 owner 당 3 개의복제본서버할당 동일한 owner 에속한파일은동일한서버들에저장 장애발생및복구에따라 owner 의복제본상태존재 데이터서버 (DS) l 데이터서버 (DS) 실제파일을저장하는서버 파일서비스의주체
파일쓰기동작 홍길동 owner 에파일 A 를쓰기 응용서버 1 Owner 홍길동 의저장위치는? 3 3 개서버에파일 A 를각각저장 A A A 2 (DS1, DS2, DS3) DS1 DS2 DS3 홍길동홍길동홍길동 메타데이터서버 (MDS) DS4 DS5 DS6 데이터서버 (DS)
파일읽기동작 홍길동 owner 에서파일 A 를읽기 응용서버 1 Owner 홍길동 의저장위치는? 3 파일 A 의복제본중하나를읽음 A 2 (DS1, DS2, DS3) DS1 DS2 DS3 홍길동홍길동홍길동 메타데이터서버 (MDS) DS4 DS5 DS6 데이터서버 (DS)
타파일시스템과비교 (GFS: Google File System) Master File s chunk map File metadata lookup Active Standby GFS client Chunk I/O Chunk location 파일 고정된 chunk 단위로쪼개져저장됨 Chunk servers
타파일시스템과비교 (GFS: Google File System) l GFS(Google File System) 파일을 chunk 단위로나누어 chunk 서버에저장 작은파일저장에불리 Master 서버가 directory 구조및 file 의정보를 metadata 로관리 File chunk map 을 master 서버가 metadata 로관리 파일수가많아지면 metadata 량도많아짐 Master 서버에부담이커질수있음 적은수의대용량파일에적합 l OwFS 파일을 DS에그대로저장 MDS가 owner의위치정보만관리 파일수가많아져도 metadata의변화가거의없음 Owner 의복제본정보만 matadata 로관리 다수의적은파일저장에도적합
OwFS 가지원하는 API l Owner 연산 Owner 생성 / 삭제 (undelete 도가능 )/ 이름변경 / 리스트조회 l 파일연산 파일생성 / 덮어쓰기 /append 파일의중간부분변경은지원하지않음 파일읽기 파일삭제 (undelete도가능 ) 파일이름변경 파일속성읽기 파일존재여부확인 l 디렉토리연산 디렉토리생성 / 삭제 / 이름변경 / 파일리스트조회
고장및모니터링 l OwFS 의고장모델 Fail-Stop : 조금이라도이상이있는장비는서비스에서제외 l 개별서버자체모니터링 종류 고장모니터링 내용 HDD 고장, 커널 / 파일시스템고장 네트워크포트 데몬비정상종료 성능모니터링 CPU/ 네트워크 / 디스크사용률, 처리량 메모리, 쓰레드, 네트워크연결 파일연산별누적카운터 l 서버간모니터링 Heartbeat timeout
DS 고장에대한대응 : 일시적장애 l DS 장애발생직전의데이터를이용할수있는경우 예 ) 네트워크의일시적장애, 관리자에의한시스템재시작, l 장애발생기간중수행된파일연산을수행하여복구 변경연산 ( 파일생성또는삭제 ) 일시적고장에서회복 복제본상태는 복구중 X 홍길동 동기화 홍길동 홍길동
DS 고장에대한대응 : 영구적장애 l 장애발생직전의데이터를이용할수없는경우 예 ) 디스크고장, 파일시스템고장, 서버장애, l 복제본을다른 DS 에재생성함 홍길동 홍길동 홍길동 X 이몽룡 이몽룡 홍길동 이몽룡 이몽룡
스위치고장에대한대응 Internet 네트워크스위치이중화 Core switch Distribution switch Access switch 3 벌의복제본을 fault domain 별로분리하여배치
OwFS 적용으로얻은이점
서비스중단없이인프라유지보수 Internet Core switch Access switch 펌웨어업그레이드또는불량포트교체 Distribution switch Access switch 파일시스템플랫폼온라인업그레이드가능
서비스중단없이네트워크구성변경 (1/2) Internet Core switch 읽기 / 쓰기부하가증가하여업링크대역폭이 FULL Distribution switch Access switch 각그룹별로 Access switch 를각각증설해야한다면?
서비스중단없이네트워크구성변경 (2/2) Internet 스위치그룹별로반복 Step1. 서버 1 대 re-cabling Step2. 복제본동기화완료 Core switch Distribution switch Access switch
확장성 l 용량확장성 저장공간을늘리려면데이터서버를추가로설치 데이터서버가추가되면서버당저장용량배분작업수행 관리자에의해설정된임계점에도달하면자동으로용량배분작업이기동됨 용량배분작업은데이터서버에추가 I/O 부담을주기때문에부하수준을제어할수있는방법제공 Owner 에대한이름공간은그대로유지됨 l 성능확장성 Owner 공간의분배가공평하다면, 각데이터서버는비슷한수준의파일연산처리 서버를증설하면전체파일연산수와처리량이선형적으로증가
TCO (Total Cost of Ownership) 개선 l OwFS 는스토리지운영상의다양한장점을가지면서 TCO 절감도가능 l Commodity 서버의내장 SATA 디스크채용 H/W 의발전으로추가 TCO 절감 l 표준화된서버와네트워크스위치구성관리 l 기존네트워크스토리지에비해 TB 당 TCO 절감
감사합니다.