스토리지, 대용량 고속 저장 장치

송현아·2021년 10월 24일
1
post-thumbnail

✏️ 스토리지는 왜 사용하나요?

  1. 서버의 내장 디스크를 확장해서 폭발적인 데이터 증가를 수용하기 위해 전용 디스크 박스를 통해 고속으로 처리할 수 있는 필요성이 대두되어 등장
  2. 내장 디스크에서 흔히 볼 수 없는 복제나 백없 같은 전용 솔루션이 포함되어 관리 효율성을 높여줌

📌 스토리지 정의 및 저장 장치 유형

💿 스토리지란?

컴퓨터의 데이터를 저장하는 저장소

💿 저장 장치 유형

저장 장치는 스토리지 내부에 존재하는 데이터를 저장하는 디스크 모듈입니다.

  • Tape

    가장 오래된 저장 장치로, 아주 오랫동안 보관해야하는 데이터 저장 용도로 사용됩니다.

  • HDD(Hard Disk Drive)

    현재 기업 Storage 시장에서 가장 많이 활용되는 저장장치입니다

  • SSD

    HDD보다 빠르고, 크키가 작다는 장점이 있지만, 가격이 비싸다는 단점이 있습니다.

  • Flash(NVMe)

    가장 최근에 나온 저장장치로, 노트북용 SSD라고 불립니다. 가장 최신 기술을 탑재한 비싸고 빠른 SSD 저장장치입니다.

📌 스토리지의 구조와 분류

💿 스토리지의 구성요소 및 구조

  • 디스크(저장 장치)
  • 스토리지 컨트롤러
  • 스토리지 캐시

💿 전통적인 스토리지의 종류

스토리지는 주로 어떻게 서버와 연결되는지에 대한 방식의 차이에 따라 DAS, NAS, SAN으로 분류됩니다.

  • DAS(Direct Attached Storage)

    서버와 전용 케이블직접 연결한 스토리지로, 외장하드의 서버버전이라고 생각하면 됩니다.

    [장점]

    • 직접 서버와 연결되어 있기 때문에 속도가 빠르고, 연결된 서버마다 개별적인 파일 시스템이 존재합니다.

    • 가격도 저렴해서 가장 많이 사용되는 스토리지 입니다.

    [단점]

    • 스토리지나 케이블에 장애 발생 시 연결된 서버 모두 데이터 저장이 안됩니다.

    • HBA Port가 스토리지 당 보통 2개 ~ 4개 정도 밖에 없기 때문에 스토리지에 연결할 수 있는 서버의 수에 제한이 있습니다.

  • NAS(Network Attached Storage)

    스토리지와 클라이언트, 서버가 LAN으로 연결된 방식으로, 스토리지와 서버 사이에 파일 서버가 별도로 존재합니다.

    즉, 한마디로 네트워크로 연결된 공유 스토리지라고 합니다.

    [장점]

    • LAN으로 연결되기 때문에 추가적인 네트워크 비용이 들지 않습니다. 또한 이기종 환경(윈도우, 리눅스 등)간에 파일 공유가 가능합니다.

    • 자체 OS를 가진 파일 서버를 통해 모든 파일 시스템을 관리하며, 사용자, 서버 모두 LAN으로 연결된 아주 커다란 공유 스토리지입니다.

    [단점]

    • 스위치에 연결되어 네트워크를 통해 데이터가 저장되기 때문에 네트워크에 문제가 발생하면 스토리지를 이용할 수 없게 됩니다.

    • 스위치 → LAN → 스토리지 순서로 데이터가 이동하기 때문에 DAS보다는 속도가 느립니다.

    • 파일 서버로 데이터 접근 권한이 몰리게 되면 네트워크 병목 현상으로 속도가 느려집니다.

  • SAN(Storage Area Network)

    DAS와 NAS의 단점을 해결한 가장 발전된 스토리지로, 서버에 직접 연결되어 있습니다.

    DAS와 동일하게 전용 광케이블을 사용하며, NAS처럼 전용 네트워크망을 사용합니다.

    스토리지와 서버는 SAN, 서버와 클라이언트는 LAN으로 네트워크 망을 형성합니다.

    NAS와 달리, 이기종 환경 파일 공유가 불가능합니다.

💿 클라우드상 스토리지의 종류

  • File Storage

    전통적인 스토리지 중 NAS와 동일한 역할을 합니다. 폴더와 파일로 이루어지는 계층구조를 가지고 있는 스토리지입니다.

  • Block Storage

    전통적인 스토리지 중 SAN과 동일한 역할을 합니다. 정해진 블록 안에 데이터를 저장합니다. 파일 스토리비와 차이점은 파일 스토리지는 1개의 경로만 갖는데 반하여 블록 스토리지는 여러 개의 경로를 가질 수 있습니다.

  • Object Storage

    블록 스토리지와 파일리 스토리지는 OS 단에서 동작하지만 Object Storage는 애플리케이션 단에서 동작합니다. 물리적인 제약이 없기 때문에 원하는 만큼 공간을 확장시킬 수 있습니다.

📌 스토리지를 도입하기까지

스토리지를 도입하기 위해 예산과 목적을 잘 고려해야 한다.

  1. 성능

    IOPS, 스토리지 컨트롤러의 처리 대역폭, 캐시 용량 등의 물리적인 성능 측면

    💡 IOPS(Input/Outpot Operations Per Second)?

    HDD, SDD 또는 NVMe 등 저장장치의 속도를 나타내는데 사용되는 측정되는 단위입니다. 예를 들어 1MB/s 는 초당 1024KB의 데이터를 전송한다는 의미입니다. 주로 종합 IOPS, Random Access Read, Random Access Write, Sequential Access Read, Sequential Access Write 등으로 나누어 측정합니다. 
  2. 확장성

    디스크 장창 개수, 최대 용량, 인터페이스 종류별 호스트, 즉 서버와 스토리지 간의 접속 포트 수

  3. 호환성

    서버 HBA 카드 등 서버 인터페이스 및 운영체제별 지원 여부 등을 확인

  4. 가용성

    중요한 서비스가 무중단 업무를 실현하기 위해 운영하는 서비스의 특성에 따른 RAID, 스토리지 부품 이중화, 캐시 미러링 등 기술이 적용되는 수준

  5. 활용성

    스토리지 내의 데이터를 복제하거나 백업하는 등 스토리지 자체 솔루션을 이용해서 데이터를 사용자가 원하는 이용 목적에 맞게 활용할 수 있는 수준을 다르게 가져갈 수 있음

📌 스토리지답게 만드는 스토리지 기술

  1. 데이터 접근 가용성속도를 향상시키는 RAID

    RAID는 RAID0 에서 6까지 존재합니다. 기본적인 개념은 미러링(mirroring)스트라이핑(striping)으로 나뉩니다. 최근에는 미러링과 스트라이핑을 모두 활용하는 추세입니다.

    • 미러링 : 같은 데이터를 2개의 디스크로 복제하여 저장하는 방식 (장점 : 가용성, 단점 : 고가의 비용)
    • 스트라이핑 : 여러 개의 디스크에 분산 저장하는 방식 (장점 : 읽기 성능, 단점 : 가용성 제한)
    • Parity : 특정 디스크가 망가졌을 때 이를 보완하는 방법
    • 핫 스페어(Hot Spare) : 디스크가 고장나게 되면 고장난 디스크는 리빌딩이라는 내부 연산을 통해 다른 디스크로부터 기초 데이터를 제공받아 원래의 상태로 복구합니다. 핫 스페어는 여분의 디스크를 두어 고장이 나면 핫 스페어가 RAID 그룹에 들어가게 되어 활성화되고, 고장난 디스크는 그룹에서 빠지게 됩니다.
  2. 안정성과 기능성을 위한 데이터 복제

    • 내부 복제

      같은 스토리지 내에서 원본과 같은 데이터를 복제하는 방식으로, 데이터 백업 등을 위해 주로 많이 사용하며, 실시간보다는 시점 복제, 즉 특정 시점 데이터를 보관하는 용도로 필요합니다.

    • 외부 복제

      원본과 다른 곳에 있는 스토리지로 같은 데이터를 복제하는 방식

  3. 비용 효율적인 복제, 스냅샷

    스냅샷 : 원본 데이터를 가리키는 주솟값만 갖는 포인터와 변경 이력만 관리하는 복제 개념

    • 장점 : 데이터 저장 공간이 거의 필요하지 않고, 생성 속도가 매우 빠릅니다.
    • 단점 : 풀 카피에 성능이 좀 떨어집니다.
    • 스냅샷 종류
      • COW(Copy on Write)
      • ROW(Redirect on Write)
  4. 가성비를 추구하는 씬 프로비저닝과 오토티어링

    • 씬 프로비저닝

      효율적인 사용을 위해 얇게 할당합니다. 예로, 10명이 각각 100GB를 요청했다면, 실제로는 가상 스토리지로 100GB를 만들어주고 데이터가 필요할 때마다 조금씩 할당해줍니다.

    • 오토티어링

      스토리지 성능을 가격 대비 효율적으로 보장해주는 방법으로, 사용자가 개입하지 않고 스토리지 사용 패턴에 따라 자동으로 데이터가 옮겨지는 기술

      • 디스크 종류

        • SSD : 성능은 좋지만, 고가의 비용이 듬
        • SAS
        • SATA : 비용은 저렴하지만, 성능이 좋지 않음

📌 스토리지 설계 고려사항

  1. 용도에 맞게 RAID를 구성

    • 최고 수준의 가용성과 성능 : 1 + 0

      → 운영 데이터나 성능을 필요로 하는 데이터

    • 적절한 수준의 가용성과 용량 : 5

      → 개발이나 백업, 혹은 테스트 데이터

  2. 정의된 RAID 그룹을 사용할 서버별로 용량을 할당

  3. 서버별로 스토리지의 포트 할당 계획

    스토리지의 포트는 가격이 상대적으로 비쌈

    • 최대 처리량 고려
  4. 스토리지 복제 환경 설계

0개의 댓글