클라우드 워크로드에 최적화된 스토리지 전략 설계

Last reviewed 2024-10-22 UTC

이 가이드는 클라우드 워크로드의 스토리지 요구사항을 평가하고, Google Cloud에서 사용 가능한 스토리지 옵션을 이해하고, 최적의 비즈니스 가치를 제공하는 스토리지 전략을 설계하는 데 도움이 됩니다.

주요 설계 추천에 대한 시각적 요약은 결정 트리 다이어그램을 참조하세요.

AI 및 ML 워크로드에 사용할 스토리지 서비스를 선택하는 방법에 대한 자세한 내용은 Google Cloud의 AI 및 ML 워크로드를 위한 스토리지 설계를 참고하세요.

설계 프로세스 개요

클라우드 설계자는 클라우드 워크로드에 맞게 스토리지를 계획할 때 먼저 워크로드의 기능 특성, 보안 제약조건, 복원력 요구사항, 성능 기대 수준, 비용 목표를 고려한 후 Google Cloud에서 사용할 수 있는 스토리지 서비스 및 기능을 검토해야 합니다. 그런 다음 요구사항과 사용 가능한 옵션에 따라 필요한 스토리지 서비스와 기능을 선택합니다. 다음 다이어그램은 이 3단계 설계 프로세스를 보여줍니다.

클라우드 워크로드를 위한 스토리지 설계의 단계별 접근 방식

요구사항 정의

이 섹션의 설문지를 사용하여 Google Cloud에 배포하려는 워크로드의 주요 스토리지 요구사항을 정의합니다.

스토리지 요구사항 정의 가이드라인

설문지에 답변할 때 다음 가이드라인을 고려하세요.

  • 세부적인 요구사항 정의

    예를 들어 애플리케이션에 네트워크 파일 시스템(NFS) 기반 파일 스토리지가 필요한 경우 필요한 NFS 버전을 파악합니다.

  • 향후 요구사항 고려

    예를 들어 현재 배포에서 아시아 내 국가의 사용자에게 서비스를 제공할 수 있지만 비즈니스를 다른 대륙으로 확장할 수도 있습니다. 이 경우 새 비즈니스 영역의 스토리지 관련 규제 요건을 고려하세요.

  • 클라우드별 기회 및 요구사항 고려

    • 클라우드 관련 기회를 활용하세요.

      예를 들어 Cloud Storage에 저장된 데이터의 스토리지 비용을 최적화하기 위해 데이터 보관 정책 및 수명 주기 구성을 사용하여 저장 기간을 조정할 수 있습니다.

    • 클라우드별 요구사항을 고려하세요.

      예를 들어 온프레미스 데이터가 단일 데이터 센터에 있을 수 있으며 중복화를 위해 마이그레이션된 데이터를 두 Google Cloud 위치에 복제해야 할 수 있습니다.

설문지

다음 설문지는 계획에 완벽한 체크리스트가 아닙니다. 이를 Google Cloud에 배포하려는 워크로드의 모든 스토리지 요구사항을 체계적으로 분석하기 위한 시작점으로 사용하세요.

워크로드의 특성 평가

  • 어떤 종류의 데이터를 저장해야 하나요?

    예시

    • 정적 웹사이트 콘텐츠
    • 재해 복구를 위한 백업 및 보관처리
    • 규정 준수를 위한 감사 로그
    • 사용자가 직접 다운로드하는 큰 데이터 객체
    • 트랜잭션 데이터
    • 구조화되지 않은 이기종 데이터

  • 용량이 얼마나 필요한가요? 현재 및 향후 요구사항을 고려하세요.

  • 사용량에 따라 용량을 자동으로 조정해야 하나요?

  • 액세스 요구사항은 무엇인가요? 예를 들어 Google Cloud 외부에서 데이터에 액세스할 수 있어야 하나요?

  • 예상되는 읽기-쓰기 패턴은 무엇인가요?

    예시

    • 자주 쓰기 및 읽기
    • 자주 쓰지만 가끔 읽기
    • 가끔 쓰기 및 읽기
    • 가끔 쓰지만 자주 읽기

  • 워크로드에 NFS를 사용하는 파일 기반 액세스가 필요한가요?

  • 여러 클라이언트가 동시에 데이터를 읽거나 쓸 수 있어야 하나요?

보안 제약조건 식별

  • 데이터 암호화 요구사항은 무엇인가요? 예를 들어, 개발자가 제어하는 키를 사용해야 하나요?

  • 데이터 보존 요구사항이 있나요?

데이터 복원력 요구사항 정의

  • 워크로드에 지연 시간이 짧은 캐싱 또는 스크래치 공간이 필요한가요?
  • 중복화를 위해 데이터를 클라우드에 복제해야 하나요?
  • 복제된 데이터세트에 엄격한 읽기-쓰기 일관성이 필요한가요?

성능 기대치 설정

  • 필요한 I/O 비율은 얼마인가요?

  • 애플리케이션에 필요한 읽기 및 쓰기 처리량의 수준은 무엇인가요?

  • 어떤 환경에 저장해야 하나요? 특정 워크로드에서는 프로덕션 환경에 대한 고성능 스토리지가 필요할 수 있지만 비프로덕션 환경에 더 낮은 성능 옵션을 선택할 수 있습니다.

스토리지 옵션 검토

Google Cloud는 모든 주요 스토리지 형식인 블록, 파일, 객체를 위한 스토리지 서비스를 제공합니다. 각 스토리지 형식에 사용할 수 있는 서비스의 기능, 디자인 옵션, 상대적 이점을 검토하고 평가합니다.

개요

블록 스토리지

블록 스토리지에 저장한 데이터는 청크로 분할되며, 각 청크는 고유 주소가 있는 별도의 블록으로 저장됩니다. 애플리케이션은 적절한 블록 주소를 참조하여 데이터에 액세스합니다. 블록 스토리지는 트랜잭션 처리와 같이 IOPS가 높은 워크로드에 최적화되어 있습니다. 이는 온프레미스 스토리지 영역 네트워크(SAN) 및 직접 연결 스토리지(DAS) 시스템과 유사합니다.

Google Cloud의 블록 스토리지 옵션은 Compute Engine 서비스의 일부입니다.

옵션 개요
Persistent Disk Compute Engine VM 및 Google Kubernetes Engine(GKE) 클러스터에 배포된 엔터프라이즈 및 데이터베이스 애플리케이션용 전용 하드 디스크 드라이브(HDD) 및 솔리드 스테이트 드라이브(SSD)입니다.
Google Cloud Hyperdisk Compute Engine VM을 위한 빠르고 중복된 네트워크 스토리지로, 구성 가능한 성능과 볼륨을 동적으로 조정할 수 있습니다.
로컬 SSD 고성능 애플리케이션을 위한 임시 로컬 연결 블록 스토리지입니다.

파일 스토리지

데이터는 온프레미스 네트워크 연결 스토리지(NAS)와 마찬가지로 폴더에 저장된 파일의 계층 구조로 구성되고 표현됩니다. NFS 및 서버 메시지 블록(SMB)과 같은 프로토콜을 사용하여 클라이언트에 파일 시스템을 마운트할 수 있습니다. 애플리케이션은 관련 파일 이름과 디렉터리 경로를 사용하여 데이터에 액세스합니다.

Google Cloud는 파일 스토리지를 위한 다양한 완전 관리형 및 서드 파티 솔루션을 제공합니다.

솔루션 개요
Filestore

Compute Engine VM 및 Google Kubernetes Engine 클러스터용 NFS 파일 서버를 사용하는 파일 기반 스토리지

사용 사례에 적합한 서비스 등급(기본, 영역, 리전)을 선택할 수 있습니다.

Parallelstore

AI, 고성능 컴퓨팅 (HPC), 데이터 집약적 애플리케이션을 위한 지연 시간이 짧은 병렬 파일 시스템입니다.

NetApp Volumes

NFS 또는 SMB를 사용하는 파일 기반 스토리지

사용 사례에 적합한 서비스 수준 (Flex, Standard, Premium, Extreme)을 선택할 수 있습니다.

옵션 더보기 파일 서버 옵션 요약을 참조하세요.

객체 스토리지

데이터는 버킷의 플랫 계층 구조에 객체로 저장됩니다. 각 객체에는 전역적으로 고유한 ID가 할당됩니다. 객체에 시스템 할당 및 사용자 정의 메타데이터가 포함되어 데이터를 정리하고 관리할 수 있습니다. 애플리케이션은 REST API 또는 클라이언트 라이브러리를 사용하여 객체 ID를 참조해 데이터에 액세스합니다.

Cloud Storage는 다양한 데이터 유형에 적합한 저가의 내구성 높은 무제한 객체 스토리지를 제공합니다. Cloud Storage에 저장된 데이터는 Google Cloud 안팎의 어디에서든지 액세스할 수 있습니다. 리전 간의 선택적인 중복성은 최대한의 안정성을 제공합니다. 데이터 보관 및 액세스 빈도 요구사항에 맞는 스토리지 클래스를 선택할 수 있습니다.

비교 분석

다음 표에는 Google Cloud의 스토리지 서비스의 주요 기능이 나와 있습니다.

Persistent Disk 하이퍼디스크 로컬 SSD Filestore Parallelstore NetApp Volumes Cloud Storage
용량

디스크당 10GiB~64TiB

VM당 257TiB

디스크당 4GiB~64TiB

VM당 512TiB

스토리지 풀당 10TiB~1PiB

디스크당 375GiB

VM당 12TiB

인스턴스당 1~100TiB 12~100TiB

스토리지 풀당 1TiB~10PiB

볼륨당 1GiB~100TiB

하한 또는 상한 없음
확장
수직 확장 확장 불가능
  • 기본: 확장
  • 영역 및 리전: 수직 확장 및 축소
확장 불가능 확장 및 축소 사용량에 따라 자동으로 확장
공유
지원됨 지원됨 공유할 수 없음 여러 Compute Engine VM, 원격 클라이언트, GKE 클러스터에 마운트 가능 여러 Compute Engine VM 및 GKE 클러스터에 마운트 가능 여러 Compute Engine VM 및 GKE 클러스터에 마운트 가능
  • 어디서나 읽기/쓰기
  • Cloud CDN 및 서드 파티 CDN과 통합
암호화 키 옵션
  • Google 소유 및 Google 관리 키
  • 고객 관리
  • 고객 제공
  • Google 소유 및 Google 관리 키
  • 고객 관리
  • 고객 제공
Google 소유 및 Google 관리 키
  • Google 소유 및 Google 관리 키
  • 고객 관리 (영역 및 리전 등급)
Google 소유 및 Google 관리 키
  • Google 소유 및 Google 관리 키
  • 고객 관리
  • Google 소유 및 Google 관리 키
  • 고객 관리
  • 고객 제공
지속성
디스크 수명 디스크 수명 임시 (VM이 중지 또는 삭제되면 데이터가 손실됨) Filestore 인스턴스 수명 임시 (인스턴스가 삭제되면 데이터가 손실됨) 볼륨 수명 버킷 수명
가용성
  • 영역
  • 디스크 클론
  • 영역
    • 등급에 따라 리전 또는 영역
    • 영역 및 리전 등급의 스냅샷
    • 백업
    영역
    성능
    디스크 크기 및 CPU 수를 기준으로 선형 확장 동적 확장 영구 스토리지 고성능 스크래치 스토리지 프로비저닝된 용량을 사용한 선형 확장

    확장 가능한 성능

    예상 값은 서비스 수준에 따라 다름

    자동 확장 읽기-쓰기 속도 및 동적 부하 재분산
    관리
    수동 포맷 및 마운트 수동 포맷 및 마운트 수동 포맷, 스트라이프, 마운트 완전 관리형 완전 관리형 완전 관리형 완전 관리형

    다음 표에는 각 Google Cloud 스토리지 옵션에 적합한 워크로드 유형이 나와 있습니다.

    스토리지 옵션 워크로드 유형
    Persistent Disk
    • IOPS 집약적이거나 지연 시간에 민감한 애플리케이션
    • 데이터베이스
    • 공유 읽기 전용 스토리지
    • 신속하고 지속적인 VM 백업
    Hyperdisk
    • 성능 집약적인 워크로드
    • 수평 확장 분석
    로컬 SSD
    • 플래시 최적화 데이터베이스
    • 분석을 위한 핫 캐싱
    • 스크래치 디스크
    Filestore
    • 온프레미스 파일 시스템 리프트 앤 시프트
    • 공유 구성 파일
    • 일반적인 도구 및 유틸리티
    • 중앙 집중식 로그
    Parallelstore
    • AI 및 ML 워크로드
    • HPC
    NetApp Volumes
    • 온프레미스 파일 시스템 리프트 앤 시프트
    • 공유 구성 파일
    • 일반적인 도구 및 유틸리티
    • 중앙 집중식 로그
    • Windows 워크로드
    Cloud Storage
    • 동영상 스트리밍
    • 미디어 애셋 라이브러리
    • 처리 성능이 뛰어난 데이터 레이크
    • 백업 및 보관처리
    • 롱테일 콘텐츠

    스토리지 옵션 선택

    스토리지 옵션은 두 부분으로 이루어집니다.

    • 필요한 스토리지 서비스 결정
    • 특정 서비스에서 필요한 기능 및 설계 옵션 선택

      서비스별 기능 및 설계 옵션 예시

      Persistent Disk

      • 배포 리전 및 영역
      • 리전 복제
      • 디스크 유형, 크기, IOPS(익스트림 Persistent Disk의 경우)
      • 암호화 키: Google 소유 및 Google 관리, 고객 관리 또는 고객 제공
      • 스냅샷 일정

      하이퍼디스크

      • 배포 영역
      • 디스크 유형, 크기, 처리량 (하이퍼디스크 처리량의 경우), IOPS (하이퍼디스크 익스트림의 경우)
      • 암호화 키: Google 소유 및 Google 관리, 고객 관리 또는 고객 제공
      • 스냅샷 일정

      Filestore

      • 배포 리전 및 영역
      • 인스턴스 등급
      • 용량
      • IP 범위: 자동 할당 또는 커스텀
      • 액세스 제어

      NetApp Volumes

      • 배포 리전
      • 스토리지 풀의 서비스 수준
      • 풀 및 볼륨 용량
      • 볼륨 프로토콜
      • 볼륨 내보내기 규칙

      Cloud Storage

      • 위치: 멀티 리전, 이중 리전, 단일 리전
      • 스토리지 클래스: Standard, Nearline, Coldline, Archive
      • 액세스 제어: 균일하거나 세분화된 액세스 제어
      • 암호화 키: Google 소유 및 Google 관리, 고객 관리 또는 고객 제공
      • 보관 정책

    스토리지 권장사항

    다음 권장사항을 시작점으로 사용하여 요구사항을 충족하는 스토리지 서비스 및 기능을 선택하세요. AI 및 ML 워크로드에 관한 구체적인 안내는 Google Cloud의 AI 및 ML 워크로드를 위한 스토리지 설계를 참고하세요.

    이 문서 뒷부분의 결정 트리에서 일반적인 스토리지 권장사항도 제공합니다.

    • 병렬 파일 시스템이 필요한 애플리케이션에는 Parallelstore를 사용하세요.

    • 파일 기반 액세스가 필요한 애플리케이션의 경우 액세스 프로토콜, 가용성, 성능 요구사항에 따라 적절한 파일 스토리지 서비스를 선택합니다.

      액세스 프로토콜 권장사항
      NFS
      • 리전 가용성과 용량에 따라 확장되는 고성능이 필요한 경우 Filestore 리전을 사용합니다.
      • 영역 가용성이 충분하지만 용량에 따라 확장되는 고성능이 필요한 경우 Filestore Zonal 또는 NetApp Volumes Premium 또는 Extreme을 사용합니다.
      • 그렇지 않으면 Filestore 기본 또는 NetApp Volumes를 사용합니다.

      Filestore 서비스 등급 간의 차이점에 대한 자세한 내용은 서비스 등급을 참조하세요.

      SMB NetApp Volumes를 사용합니다.

    • 고성능의 기본 스토리지가 필요한 워크로드의 경우 요구사항에 따라 로컬 SSD, Persistent Disk 또는 하이퍼디스크를 사용하세요.

      요구사항 권장사항
      빠른 스크래치 디스크 또는 캐시

      로컬 SSD 디스크(임시)를 사용합니다.

      순차적 IOPS pd-standard 디스크 유형에 Persistent Disk를 사용합니다.
      IOPS 집약적인 워크로드 pd-extreme 또는 pd-ssd 디스크 유형에 Persistent Disk를 사용합니다.
      성능과 비용 간 균형 유지 pd-balanced 디스크 유형에 Persistent Disk를 사용합니다.
      성능과 용량을 동적으로 확장

      하이퍼디스크를 사용합니다.

      적합한 하이퍼디스크 유형을 선택하세요.

      • 하이퍼디스크 균형은 공유 쓰기 액세스가 필요한 범용 워크로드 및 고가용성 애플리케이션에 권장됩니다.
      • 하이퍼디스크 익스트림은 고성능 데이터베이스와 같이 높은 I/O가 필요한 워크로드에 권장됩니다.
      • 하이퍼디스크 처리량은 수평 확장 분석, 비용에 민감한 앱용 데이터 드라이브, 콜드 스토리지에 권장됩니다.
      • Hyperdisk ML은 읽기 전용 모드로 여러 VM에 대한 높은 처리량이 필요한 ML 워크로드에 권장됩니다.

      자세한 내용은 Google Cloud Hyperdisk 정보를 참조하세요.

      • 중복화 필요 여부에 따라 영역 디스크와 리전 디스크 중에서 선택합니다.
        요구사항 권장사항
        리전의 단일 영역 내에서 중복화 영역 Persistent Disk 또는 하이퍼디스크를 사용합니다.
        리전 내 여러 영역에 중복화 리전 Persistent Disk를 사용합니다.
        자세한 비교 분석은 Persistent Disk 옵션을 참조하세요.
    • 무제한 확장 및 전역적으로 사용 가능한 스토리지에는 Cloud Storage를 사용합니다.

      데이터 액세스 빈도와 스토리지 기간에 따라 적절한 Cloud Storage 클래스를 선택합니다.

      요구사항 권장사항>
      액세스 빈도에 차이가 있거나 데이터 보관 기간을 알 수 없거나 예측할 수 없습니다. 자동 클래스 기능을 사용하여 각 객체의 액세스 패턴에 따라 버킷의 객체를 적절한 스토리지 클래스로 자동 전환합니다.
      대용량 액세스/데이터 레이크, 웹사이트, 스트리밍 동영상, 모바일 앱을 비롯하여 자주 액세스하는 데이터용 스토리지입니다.

      표준 스토리지 클래스를 사용합니다.

      자주 액세스하는 데이터를 캐시하고 클라이언트에 가까운 위치에서 제공하려면 Cloud CDN을 사용합니다.

      자주 액세스하지 않는 데이터를 최소 30일 동안 저장할 수 있는 저비용 스토리지입니다(예: 백업 및 롱테일 멀티미디어 콘텐츠). Nearline 스토리지 클래스를 사용합니다.
      자주 액세스하지 않는 데이터를 최소 90일 동안 저장할 수 있는 저렴한 스토리지입니다(예: 재해 복구). Coldline 스토리지 클래스를 사용합니다.
      자주 액세스하지 않는 데이터를 365일 이상 저장할 수 있는 가장 저렴한 스토리지입니다(예: 규정 준수를 위한 보관처리). Archive 스토리지 클래스를 사용합니다.

      자세한 비교 분석은 Cloud Storage 클래스를 참조하세요.

    데이터 전송 옵션

    적절한 Google Cloud 스토리지 서비스를 선택한 후 워크로드를 배포하고 실행하려면 데이터를 Google Cloud로 전송해야 합니다. 전송해야 하는 데이터가 온프레미스 또는 다른 클라우드 플랫폼에 있을 수 있습니다.

    다음 방법을 사용하여 데이터를 Google Cloud로 전송할 수 있습니다.

    • Storage Transfer Service를 사용해 온라인으로 데이터 전송: Cloud Storage, Amazon S3, Azure Storage 서비스, 온프레미스 데이터 소스를 포함한 파일 스토리지 시스템과 객체 간에 대량의 데이터를 자동으로 전송합니다.
    • Transfer Appliance를 사용해 오프라인으로 데이터 전송: 네트워크 연결 및 대역폭을 사용할 수 없거나, 제한적이거나, 비용이 많이 드는 상황에서는 대량의 데이터를 오프라인으로 Google Cloud에 전송하고 로드합니다.
    • Cloud Storage에 데이터 업로드: Google Cloud 콘솔, gcloud CLI, Cloud Storage API 또는 클라이언트 라이브러리를 사용하여 Cloud Storage 버킷에 데이터를 온라인으로 업로드합니다.

    데이터 전송 방법을 선택할 때는 데이터 크기, 시간 제약조건, 대역폭 가용성, 비용 목표, 보안, 규정 준수 요구사항과 같은 요소를 고려해야 합니다. Google Cloud로의 데이터 전송을 계획 및 구현하는 방법에 대한 자세한 내용은 Google Cloud로 마이그레이션: 대규모 데이터 세트 전송을 참조하세요.

    스토리지 옵션 결정 트리

    다음 결정 트리는 앞에서 설명한 Google Cloud 스토리지 권장사항을 안내합니다. AI 및 ML 워크로드와 관련된 안내는 Google Cloud의 AI 및 ML 워크로드를 위한 스토리지 설계를 참고하세요.

    큰 이미지 보기

    스토리지 전략 선택을 위한 결정 트리

    다음 단계

    참여자

    저자: Kumar Dhanagopal | 크로스 프로덕트 솔루션 개발자

    기타 참여자: