- 조닝, 레이드, 캐쉬
- NAS, iSCSI
오늘은 스토리지의 개념이랑 자주 사용되는 용어에 대해서 알아보도록 하겠습니다.
스토리지는 서버의 내장 디스크를 확장해서 폭발적인 데이터 증가를 수용하기 위해 전용 디스크 박스를 통해 고속으로 처리할 수 있는 필요성이 증가했고, 이런 니즈를 충족시키기 위해 급속도로 성장하게 되었습니다.
- 스토리지의 구조와 분류
- 스토리지의 구성요소
스토리지는 내장 디스크에서 흔히 볼 수 없는 복제나 백업 같은 전용 솔루션이 포함되어 관리 효율성을 높여줄 수 있습니다.
스토리지의 핵심 요소는 디스크,컨트롤러,캐시로 볼 수 있는데요,
디스크 모듈은 스토리지에서 가장 중요한 부분으로 데이터를 저장합니다.
컨트롤러는 데이터의 I/O를 제어해주는 두뇌같은 역할을 합니다.
캐시는 컨트롤러의 I/O속도를 빠르게 해주는데요, 기존에 읽었던 내용을 디스크가 아닌 캐시에 갖고 있다가 서버가 필요로 할 때 바로 읽어 서버 측에 데이터를 제공해 줍니다, 디스크 대비 데이터에 약 1/10 정도의 액세스 시간을 갖습니다.
스토리지 개념도 | 실제 스토리지 조감도 |
- 스토리지 구성방식
스토리지 구성방식은 흔히 DAS, NAS,SAN으로 나눌 수 있습니다. IT를 조금 접해봤다면 들어봤을 용어지만 스토리지를 알기 위해서는 필수 개념 중에 하나이기에 특징과 장점 및 단점을 간단하게 표로 정리해 보겠습니다.
장점 | 단점 | 특징 | ||
DAS | 서버와 직접 연결을 하는 형태 | 가장 속도가 빠름 구성이 단조로움 구축 비용이 적음 |
디스크의 용량이 부족하여 추가를 해야하는데 추가를 하려면 서버와 연결을 해야함 | 서버의 경우 포트수가 제한 적이기에 디스크를 추가하게 되면 더 이상 추가를 하지 못함 필요한 용량의 디스크가 있다면 그것 때문에 서버를 증설해야하는 함. 소규모인 곳에서 사용하기도 함 |
NAS | 서버와 스토리지 사이에 스위치가 들어가며 네트워크 케이블로 구성되는 형태 | 확장성이 뛰어남 낮은 가격으로 고효율 낼 수 있음 |
속도가 상대적으로 느림 네트워크 속도에 따라 성능이 좌우됨 |
시스템 파일을 공유할 수 있음 유선/무선 네트워크로 모두 구성 가능 |
SAN | 서버와 스토리지 사이에 샌스위치가 들어가며 FC 선이라는 광케이블로 구성되는 형태 | 서버와 스토리지가 독립적으로 확장이 가능함 고효율을 낼 수 있음 광케이블로 이루어져 속도가 빠름 |
초기에 구축 비용이 많이 듦 구성이 복잡함 |
시스템 파일을 공유할 수 없음 |
참고로 흔히 DAS 스토리지, SAN 스토리지라고 표현하는 경우가 많은데, DAS,NAS,SAN은 서버와 스토리지의 연결 방식일 뿐이므로 구별해서 사용해야 됩니다..
아울러 SAN방식으로 사용하다가 SAN 스위치를 없애고 서버와 스토리지를 직접 연결하면 DAS방식이 됩니다.
Sec2 스토리지 도입하기 까지
확장성 - 디스크 장착 개수, 최대 용량, 인터페이스 종류별 호스트 -> 서버와 스토리지 간의 접속 포트 수 호환성 - 서버 HBA 카드 등 서버 인터페이스 및 운영체제별 지원 여부 가용성 - 중요한 서비스가 무중단 업무를 실현하기 위해 운여하는 서비스의 특성에 따른 RAID, 스토리지 부품 이중화, 캐시 미러링 등 기술이 적용되는 수준 활용성 - 스토리지 내의 데이터를 복제하거나 백업하는 등 스토리지 자체 솔루션을 이용해서 데이터를 사용자가 원하는 이용 목적에 맞게 활용할 수 있는 수준을 다르게 가져갈 수 있음
|
- 스토리지 기술
- RAID란 여러개의 디스크를 하나의 논리적인 디스크로 만드는것으로 데이터 접근 가용성과 속도를 향상시키는 것입니다.
RAID의 종류는 대표적으로 RAID0, RAID1, RAID5, RAID6, RAID1+0 이 있습니다. 각각의 특징을 알아보겠습니다.
RAID0 -스트라이핑
가장 기본 적인 방법이며 3개의 100GB의 디스크가 있다면 총 300GB를 사용할수 있고 속도 또한 빠른편입니다.
다만 속도가 빠른 대신에 안전성이 낮다고 볼 수 있습니다. 하나의 디스크가 장애가 나게 되면 데이터에 손상이 생기게 됩니다.
RAID 1 - 미러링
미러라는 말 그대로 2개의 100GB의 디스크가 있다면 총 100GB를 사용할 수 있으며 그 이유는 A라는 디스크에 들어있는 데이터를 B라는 디스크에 싱크를 하고 있습니다.
효율은 가장 좋지 않지만 안전성이 좋습니다.
RAID 5 -패리티
3개의 100GB의 디스크가 있다면 각 3개의 디스크에 Parity 영역이 들어가 있습니다. Parity란 데이터의 복구를 돕는 것으로 하나의 디스크가 장애가 나면 다른 디스크의 Parity 영역을 이용하여 장애가 난 디스크를 갈아 끼우고 데이터를 안전하게 복구 할 수 있음. 각 Parity에는 다른 디스크의 정보가 들어가 있습니다.
그리고 100GB의 디스크가 3개가 있다해도 200GB밖에 사용하지 못합니다. 100GB는 Parity의 영역으로 할당이 되기 때문입니다. 만약에 1TB 용량의 디스크라면 Parity의 영역도 1TB가 됩니다.
RAID 6 - RAID5 + 핫스페어
RAID5와 같은 방식으로 구성이되지만 RAID6은 한 디스크당 Parity 영역이 2개 들어가 있습니다. 100GB인 3개의 디스크가 있으면 총 100GB밖에 사용하지 못하는 것이죠. DP(Double Parity)라고도 합니다. 레이드로 구성된 스토리지에 문제가 생겼을 경우, RAID5는 하나의 장애가 난 디스크만 복구를 할 수 있지만 RAID6는 2개까지의 장애가 난 디스크까지 복구를 할 수 있습니다.
참고) 스토리지 설계 고려사항
방대한 데이터를 저장하는 스토리지는 성능을 내기 위해서 설계가 중요한데요, 용도에 맞게 RAID를 구성해야 합니다.
RAID 1+0 - 최고 수준의 가용성(안정성)과 성능을 위해서 많이 구성합니다. 주로 운영데이터니 성능을 필요로 하는 데이터 저장 스토리지를 구축에 이용됩니다.
RAID5/ RAID6 - 적절한 가용성과 용량을 위해 필요한 구성으로 개발이나 백업 테스트 데이터를 저장하는 스토리지를 구축하는데 많이 이용됩니다.
이렇게 RAID를 구성한 후에는 서버별 용량 할당 계획을 세워야 하고, RIAD그룹을 사용할 서버별로 용량을 할당해야 됩니다. 그리고 서버별 스토리지의 포트 할당계획도 수립해주어야 합니다. 이 모든 것은 예산내에서 가장 효율적인 아키텍처를 도출해내기 위해서 꼭 필요한 작업입니다.
- 안정성과 기능성을 위한 데이터 복제
복제란 데이터를 여러 용도로 사용하기 위해 특정한 시점 그대로 복사하는 개념입니다. 데이터복제는 백업을 하거나 혹은 다른 목적으로 활용하기 위해 동일한 데이터를 다른 스토리지에 그대로 복사하는 것으로서,
- 원본의 해당 시점 데이터 용량과 동일하게 필요로 하는 방식
- 원본을 참조하되 해당 시점의 스냅샷만 보관하여 용량을 적게 유지하는 방식
- 실시간으로 원본 데이터가 변경될 때마다 복제본에도 동일하게 기록하는 방식
위와 같이 크게 세가지로 나눌 수 있습니다.
그리고 복제가 일어나는 영역에 따라서 내부복제와 외부복제로 구분할 수 있습니다. 내부 복제란 같은 스토리지 내에서 원본과 같은 데이터를 복제하는 방식이고, 외부 복제란 원본과 다른 곳에 있는 스토리지로 같은 데이터를 복제하는 방식입니다.
내부복제 | 데이터 백업 등을 위해 주로 사용함 특정 시점 데이터를 보관하는 시점 복제를 이용하여 데이터를 복제 데이터가 깨질 경우 즉시 복구, 테스트를 하고 나서 데이터를 초기화하기 위해 사용 |
외부복제 | 동기 / 비동기 방식으로 복제가 이루어 짐 지역 간에 복제 구성이 가능하기 때문에 재해복구용으로 많이 사용됨 같거나 유사한 규모의 스토리지를 원격지에 스토리지를 하나 더 두어서 데이터 센터 내부에서 발생하는 스토리지의 물리적인 오류에 대비하거나 센터 자체의 재해에 대비하기 위해 외부 복제를 진행함 |
- 용어 정리
- 스냅샷
스냅샷이란 원본데이터를 가리키는 주소값만 갖는 포인터와 변경 이력만 관리하는 개념입니다.
데이터 저장공간이 거의 필요하지 않고, 생성속도도 빠른 특징이 있습니다. 그런데 원본을 참조하기 때문에 원본이 깨지면 복제가 되지 않습니다.
참고로 풀카피는 원본과 동일한 용량을 복제하는 것인데, 성능이 좋지만 초기 복제 시간이 오래 걸리고 가성비가 떨어집니다.
- 씬프로피저닝 - 가상의 스토리지 용량을 사용자에게 할당해주고, 실제로 사용할 때마다 용량을 할당해주는 방법입니다.
- 오토 티어링 - 스토리지 컨트롤러에서 서버에서 스토리지 내에 분포된 데이터의 물리적인 접근 빈도를 분석해 접근이 자주 발생하는 데이터는 SSD로 이전시켜 성능을 개선하여, 그렇지 않은 데이터는 SATA 디스크로 내립니다.
'IT Note > Infrastructure' 카테고리의 다른 글
Openshift 노드 IP 변경 (feat. NMstate) (0) | 2022.07.30 |
---|---|
서버를 좀 더 알아보자 (0) | 2022.05.31 |
Graphite와 Collectd를 사용해 모니터링하기! (0) | 2021.03.29 |
재해복구를 간단하게 알아봅시다(2) (0) | 2020.09.30 |
재해복구를 간단하게 알아봅시다(1) (1) | 2020.08.31 |