본문 바로가기
책/인프라엔지니어

[IET] Chapter 5 스토리지

by 파이어볼러 2015. 3. 7.

 스토리지는 다양한 방향으로 진화하고 있고 대용량화와 고속화 그리고 고도화에서 그 모습을 나타낸다

 

데이터를 저장하는 장치를 스토리지라고 부른다 스토리지에는 서번 내부의 저장 영역인 로컬 스토리지와 서버 외부의 저장 영역인 외부 스토리지가 있다 외부 스토리지에는 서버에 직접 연결하는것(DAS)과 네트워크를 통해 연결하는 것 (NAS,SAN)이 있다

로컬 스토리지

 

로컬 스토리지란 서버 내부에 디스크를 설치해서 이용하는 저장 영역을 말한다 외부 스토리지를 사용하지 않으므로 설치 공간은 절약할 수 있다 하지만 외부 스토리지를 이용할 때와 비교하면 설치할 수 있는 디스크 개수와 확장성이 적어진다

 

외부 스토리지

 

외부 스토리지란 서버 외부에 준비한 스토리지 장비 혹은 스토리지 영역을 말한다 외부 스토리지에는 세 가지 형태가 있다

 

DAS

 

Direct Attached Storage는 서버에 직접 연결하는 스토리지 장비다. DAS를 이용하면 로컬 스토리지만으로 용량이 부족할 때 필요한 만큼 디스크 용량을 늘릴 수 있다 또한 DAS에는 많은 디스크를 설치할 수 있으므로 스트라이핑 수가 많은 RAID로 구성하여 디스크 I/O 성능을 크게 높일 수 있다

 

운영체제는 DAS에 생성된 논리 드라이브를 내장 디스크의 논리 드라이브로 인식한다 따라서 운영체제는 DAS와 내장 디스크를 구분하지 않고 똑같은 방식으로 다룬다

 

DAS에는 서버에 RAID 컨트롤러 보드를 꽂아 연결하는 형태와 HBA(Host Bus Adaptor)보드를 꽂아 연결하는 형태가 있다 전자는 RAID 컨트롤러 보드가 RAID 구성을 관리하지만, 후자는 스토리지에 내장된 RAID 컨트롤러가 RAID 구성을 관리한다

 

 

DAS를 선택할 때는 필요한 실제 용량, 성능, 내장애성 및 확장성을 고려한다​ 특히 DAS에 디스크를 몇 개 설치할 수 있는지는 매우 중요한 선택 조건 중 하나다

 

2.5인치 디스크와 3.5인치 디스크 중 어느 한 쪽을 선택할 수 있는 인클로저에서 2.5인치 디스크를 상요하면 더 많이 설치할 수 있게 설계된 기종이 있다 2.5인치 디스크는 3.5인치 디스크보다 소형이라는 장점이 있지만 최대 용량이 3.5인치 디스크보다 작고 응답속다가 같은 용량의 3.5인치 디스크보다 떨어지기도 한다 이런 이유로 대용량 및 고성능이 요구되는 환경에서는 3.5인치 디스크의 인클로저를 선정한다 

 

예를 들어 밑의 그림을 보면 3.5인치 디스크용 인클로저에는 디스크가 23개 설치되었지만 2.5인치 디스크용 인클로저는 24개가 설치되어 두 배의 하드디스크가 설치된 것을 알 수 있다

 

DAS 3.5

 

 

 

DAS 2.5

 

또한 DAS 인클로저를 데이지체인으로 연결해 용량을 확장할 수 있는 형태의 제품도 있다 앞으로 용량을 늘릴 가능성이 있다면 확장성도 고려하는 것이 좋다 단 매년 하드디스크가 대용량화되면서 랙 마운트형 서버에서도 탑재할 수 있는 디스크 개수가 증가하고 있다 따라서 굳이 DAS를 사용하지 않고 로컬 스토리지를 선택하는 사례도 늘고 있다 DAS를 사용하지 않으면 장비 구매 비용을 절약할 수 있을 뿐만 아니라 설치 할 장비가 적어짐에 데이터 센터의 랙도 절약할 수 있어 운영 비용을 줄일 수 있다 

 

NAS

 

Network Attached Storage는 네트워크를 통해 여러 대의 서버가 액세스 할 수 있는 스토리지다 서버와 NAS간에는 NFS, SMB/CIFS, AFP와 같은 프로토콜을 이용해서 통신한다 예를 들어 윈도우 PC에서는 NAS를 네트워크상에 있는 공유 폴더처럼 다룰 수 있다 

 

NAS는 여러 대의 서버에서 데이트를 공유할 때나 여러대의 서버에서 발생하는 백업 및 로그 파일을 한 군데에 모으는 용도로 사용된다

 

 

 

SAN

 

Storage Area Network는 블록 단위의 데이터 스토리지 전용 네트워크다 고속 고품질 환경을 요구하는 환경에서 이용된다

 

 

 

FC-SAN

 

Fibre Channel SAN은 파이버 채널 기반으로 구축된 고속 고품질 스토리지 전용 네트워크다 FC-SAN 환경은 일반적으로 기간계 데이터베이스 등 중요한 데이터를 다루는 환경에서 이용된다 FC-SAN을 이용하는 서버에서는 HBA보드를 설치하여 SAN 스위치를 통하거나 SAN 스토리지를 직접 연결한다

 

IP-SAN

 

Internet Protocol SAN은 고속 고품질 통신을 가능하게 하지만 가격이 매우 비싸다 IP-SAN은 통신 부분에 이더넷을 이용해서 SAN보다 저렴하게 구축할 수 있다 IP-SAN에서는 iSCSI 스토리지가 주로 이용된다 iSCSI란 서버와 스토리지의 통신에 사용하는 SCSI 커맨드를 IP 네트워크를 통해 송수신하는 프로토콜을 말한다 서버와 iSCSI 스토리지는 모두 L2/L3 스위치 등을 통해 연결할 수 있다.

 

 

 

RAID와 핫스페어

 

스토리지 장비에서는 인클로저 안에 디스크를 대량으로 탑재할 수 있게 설계되어 있다 그리고 인클로저 안에 탑재된 여러 개의 디스크로 RAID를 구성해 큰 스토리지 영역으로 사용하는 것이 일반적이다 이 스토리지 영역을 볼륨이라고 부른다

 

여러 개의 디스크를 묶어 볼륨으로 사용하면 디스크 하나가 고장나도 RAID로 이중화한 덕에 금방은 서비스에 영향을 받지 않는다 고장난 디스크를 즉시 새 디스크로 교환하면 RAID가 재구성되기 떄문에 스토리지는 아무 일도 없었던 것처럼 고장나기 전의 상태로 되돌아간다

 

하지만 사정이 있어 고장난 디스크를 곧바로 교환할 수 없을 때는 다른 디스크마저 고장이 나서 RAID 구성이 깨질지도 모르는 위험에 떨게 된다 이런 경우 핫스페어를 이용하면 효과적이다 핫스페어란 다른 디스크가 망가졌을때를 위해 대기하는 스텐바이 디스크를 말한다 핫스페어가 있으면 스토리지 인클로저가 디스크 고장을 감지했을 때 자동으로 핫스페어가 활성화되며 고장난 디스크를 대신해 RAID 그룹안에 들어간다

 

핫스페어가 활성화되어 RAID 그룹 안에 들어가면 망가진 디스크는 고장 상태로 처리되어 시스템에서 분리된다 이 상태에서 고장난 디스크를 새 디스크로 교체하면 이번에는 교체된 새 디스크가 핫스페어로 대기하게 된다

 

핫스페어는 몇 개든 할당할 수 있다 예를 들어 원격지에 스토리지가 설치되어 있어 하드디스크가 고장나도 좀처럼 고장난 디스크를 교체하러 갈 수 없을 때 핫스페어의 개수를 넉넉하게 할당해 두면 안심할 수 있다.

 

 

 

### 가정용 스토리지와 업무용 스토리지의 차이 ###

 

이제 가정에서도 NAS 등의 스토리지 장비를 부담 없이 사용하는 시대가 되었다 가정용 스토리지는 리눅스 기반 인클로저에 가정용 SATA 하드디스크를 탑재하고 운영체제에 소프트웨어 RAID 기능을 이용해서 RAID를 구현한 제품이 많다 저가의 부품을 이용하고 필요한 기능만 사용해서 개인도 부담 없이 살 수 있는 가격이 실현되었다

 

반면 업무용 스토리지는 속도가 빨라야 하고 고장에 강해야 하기 때문에 고장이 나도 서비스를 멈추지 않고 조기에 복구할 수 있는 여러 장치가 업무용 스토리지에 적용된다 가정용 스토리지와 업무용 스토리지의 가격은 한 자리수 에서 두 자리수 정도 차이가 난다 24시간 364일 서비스를 제공하려면 업무용 스토리지 사용은 필수적이다.

 

외부 스토리지 이용

 

외부 스토리지를 도입하는 동기로는 다음 네가지를 들 수 있다

 

- 저장 영역을 많이 확보하고 싶다

- 디스크 I/O 성능을 높인다

- 스토리지를 통합해서 집중 관리한다

- 복수의 서버에서 데이터 공유

 

저장 영역을 많이 확보하고 싶다

 

데이터 양이 많아서 서버의 로컬 스토리지 용량으로는 충분하지 않을 때는 저장 영역 확보를 외부 스토리지에 맡길 수 있다

 

디스크 I/O 성능 향상

 

로컬 스토리지의 디스크 I/O 성능이 충분하지 않을 때, 외부 스토리지를 사용하여 디스크 I/O 성능을 향상시킬 수 있다 실용량 3TB를 확보하고자 스트라이핑 개수를 10세트로 구성하면 3TB 하드디스크 하나를 사용해 3TB를 확보하는 것에 비해 이론상 디스크 I/O의 성능이 10배 향상된다

 

스토리지 통합 및 집중 관리

 

서버별로 중요한 데이터가 분산되어 있으면 스토리지 관리가 어려워진다 또한 복수의 스토리지가 있으면 스토리지마다 조금씩 남는 공간이 발생하는데 모두 합하면 상당한 양의 미사용 저장 영역이 생기게 된다 그러므로 통합 스토리지로 복수의 스토리지를 집약하면 저장 영역을 낭비하지 않고 유용하게 활용할 수 있어서 운영 비용을 낮출 수 있다 통합 스토리지에서는 물리 스토리즈를 증설해서 저장 영역을 쉽게 늘릴 수 있다.

 

 

 

복수의 서버에서 데이터 공유

 

복수의 서버에서 같은 데이터와 소스 코드를 읽고 쓸 수 있게 하거나, 데이터베이스 클러스트링 환경에서 어느 서버든지 같은 데이터에 액세스 할 수 있게 할 떄는 NAS를 이용하면 쉽게 구현할 수 있다.

 

 

 

스토리지의 고급 기능

 

스토리지의 중요성이 높아짐에 따라서 스토리지 운영에 관련된 실용상의 모든 문제를 해결하기 위해 스토리지가 진화해왔다 

 

씬 프로비저닝

 

Thin Provisioning은 물리 스토리지 용량보다 많은 논리 볼륨을 할당할 수 있는 기능이다

 

 

 

가상 스토리지를 이용하면 임의의 용량으로 논리 볼륨을 할당할 수 있지만 일반적으로 물리 스토리지 용량을 상한선으로 하여 할당할 수 있다 논리 볼륨을 할당할 때는 용량 부족으로 장애가 일어나지 않도로고 안전을 고려해서 실제 사용량보다 크게 할당하는 경우가 많다 하지만 논리 볼륨을 많이 만들면 각 논리 볼륨에서 여분으로 확보한 용량이 쌓이고 쌓여 쓸 데 없는 투자가 발생하게 된다

 

이런 경우 씬 프로비저닝을 이용하면 할당한 용량만큼의 물리 스토리지를 다 준비하지 않고도 실제로 필요한 물리 스토리지만 준비할 수 있게 된다 또한 투자 비용도 최소한으로 억제할 수 있다

 

씬 프로비저닝은 가상 서버 환경처럼 게스트 운영체제마다 논리 볼륨을 만드는 환경에서 특히 효과적으로 작동한다.

 

자동 계층화 

 

자동계층화는 서로 다른 성능의 디스크를 조합해서 이용 빈도가 높은 데이터는 고가의 빠른 장비에 이용 빈도가 낮은 데이터는 싸고 느린 장비에 자동으로 저장하는 기능이다 

 

다양한 계층에 데이터를 자동 저장하는 기법으로는 미리 특정한 규칙을 설정해 두는 방법과 각 파일의 이용 상황을 스토리지가 스스로 판단해서 자동으로 적절한 계층으로 이동시키는 방법 등 제품에 따라 다양한 구현 상식이 있다

 

그림의 예는 스토리지 계층화는 상대적으로 덜 사용하고 중요도가 떨어지는 데이터는 SATA와 같은 저렴한 하드디스크에, 사용 빈도가 높은 핵심 데이터는 솔리드스테이트드라이브(SSD)와 같은 고가 장비에 저장하는 방식을 말하고 있다 

 

 

 

디둡

 

De-Duplication은 스토리지를 백업할 때 먼저 저장된 데이터가 있으면 그 데이터는 복사하지 않기 때문에 저장 영역을 절약할 수 있는 기능이다 디둡은 중복 제거 기능이라고 부른다

 

몇 세대의 백업을 해 두는 환경에서는 대부분 중복 데이터가 된다 그런 중복 부분을 제거할 수 있다면 물리 스토리지 용량을 상당히 절약할 수 있을 뿐 아니라 백업 시간도 단축할 수 있다

 

 

 

또한 디둡을 구현한 제품 대부분이 중복 제거 기능과 더불어 데이터 압축 기능을 탑재하고 있다 중복 제거와 데이터 압축 기능으로 모든 데이터를 그대로 복사하는 백업 방식보다 상당한 양의 저장 공간을 절약할 수 있다

 

스냅샷

 

스냅샷은 어떤 순가의 파일 시스템의 정지점을 순간적으로 보존해 두는 기능이다 스냅샷 기능을 실현하기 위해 일반적으로 이용되는 구현 방식은 파일이 갱신될 때마다 갱신 이력과 함께 갱신 전의 파일을 스냅샷용 스토리지 공간에 기록해 가는 방법이다 결국 스냅샷이라고 해서 그 시점에서의 모든 파일을 다른 디스크에 복사하는 것이 아니라 갱신 이력 정보를 관리함으로서 그 시점에서의 파일 시스템의 상황을 복원할 수 있는 기능이 된다 이 구현 방법 덕분에 스냅샷을 보존하는 것이 가능해진다.