5장. 스토리지 클래스
5.1. 스토리지 클래스 링크 복사링크가 클립보드에 복사되었습니다!
스토리지 클래스는 Ceph Object Gateway(RGW)에 개체 데이터를 배치 및 관리하는 방법을 정의합니다. 오브젝트를 특정 배치 대상에 매핑하고 특히 S3 버킷 라이프사이클 전환과 함께 사용할 때 비용 및 성능에 최적화된 계층화를 지원합니다.
모든 배치 대상에는 기본적으로 새 오브젝트에 적용되는 STANDARD 스토리지 클래스가 포함됩니다. default_storage_class 값을 설정하여 이 기본값을 덮어쓸 수 있습니다. 기본이 아닌 스토리지 클래스에 오브젝트를 저장하려면 요청 헤더에 스토리지 클래스 이름을 지정합니다.
-
S3 프로토콜:
X-Amz-Storage-Class -
Swift 프로토콜:
X-Object-Storage-Class
S3 Object Lifecycle Management는 전환 작업을 사용하여 스토리지 클래스 간 전환을 자동화할 수 있습니다. jjksdfjhsdjf kakhsdkhsa sdasdfas
AWS S3 SDK(예: boto3)를 사용하는 경우 스토리지 클래스 이름이 AWS 이름 지정 규칙과 일치해야 합니다. 그렇지 않으면 SDK가 요청을 삭제하거나 예외를 발생시킬 수 있습니다. 일부 SDK는 GLACIER 와 같은 이름을 사용할 때 AWS 관련 동작을 예상하므로 Ceph RGW에 액세스할 때 오류가 발생할 수 있습니다.
이러한 문제를 방지하려면 Ceph에서 다음과 같은 대체 스토리지 클래스 이름을 사용하는 것이 좋습니다.
-
INTELLIGENT-TIERING -
STANDARD_IA -
REDUCED_REDUNDANCY -
ONEZONE_IA
CHEAPNDEEP 와 같은 사용자 지정 스토리지 클래스는 Ceph에서 허용되지만 일부 S3 클라이언트 또는 라이브러리에서는 인식되지 않을 수 있습니다.
5.1.1. 사용 사례 링크 복사링크가 클립보드에 복사되었습니다!
스토리지 클래스는 데이터 배치, 비용 및 성능을 최적화하기 위해 일반적으로 다음 시나리오에서 사용됩니다.
- 자동화된 라이프사이클 전환을 사용하여 자주 액세스하는 오브젝트를 저비용 풀로 이동.
- NVMe 지원 풀과 같이 대기 시간에 민감하거나 자주 액세스하는 워크로드를 더 빠른 풀에 할당합니다.
-
규정 준수, 격리 또는 애플리케이션별 데이터 배치를 위한 사용자 지정 스토리지 클래스 생성(예:
APP_LOGS,ML_DATA). -
개체 수명 또는 액세스 패턴을 기반으로
STANDARDSTANDARD_IA보관 풀과 같은 다중 계층 전환 자동화. - 다양한 복제 또는 삭제 코딩 설정으로 풀에 스토리지 클래스를 매핑하여 다른 지속성 또는 복원력 프로필을 적용합니다.
- 워크로드(분석, 로깅 또는 백업)를 압축, 지속성 또는 비용 모델에 최적화된 풀로 분리합니다.
IBM Storage Ceph Object Gateway의 배치 대상에 새 스토리지 클래스를 추가하고 데이터 풀 및 압축 설정에 매핑합니다.
5.1.1.1. 사전 요구 사항 링크 복사링크가 클립보드에 복사되었습니다!
시작하기 전에 다음 요구 사항이 충족되었는지 확인합니다.
-
radosgw-admin명령을 실행할 관리자 권한이 있습니다. - zonegroup 및 영역은 Ceph Object Gateway에 이미 구성되어 있습니다.
-
필요한 데이터 풀(예:
default.rgw.glacier.data)이 Ceph 클러스터에 있습니다. -
radosgw-admin도구가 설치되어 명령을 실행하는 시스템에서 사용할 수 있습니다.
5.1.1.2. 프로세스 링크 복사링크가 클립보드에 복사되었습니다!
새 스토리지 클래스를 zonegroup 배치 대상에 추가합니다.
구문
radosgw-admin zonegroup placement add \ --rgw-zonegroup default \ --placement-id default-placement \ --storage-class STANDARD_IA예
radosgw-admin zonegroup placement add \ --rgw-zonegroup prod-zonegroup \ --placement-id app-placement \ --storage-class APP_LOGS이 명령은 새 스토리지 클래스를 포함하도록 zonegroup 배치 구성을 업데이트합니다.
스토리지 클래스의 영역별 배치 구성을 정의합니다.
구문
radosgw-admin zone placement add \ --rgw-zone default \ --placement-id default-placement \ --storage-class STANDARD_IA \ --data-pool default.rgw.glacier.data \ --compression lz4예
radosgw-admin zone placement add \ --rgw-zone prod-zone \ --placement-id app-placement \ --storage-class APP_LOGS \ --data-pool prod.rgw.logs.data \ --compression lz4이 명령은 선택한 압축 알고리즘을 사용하여 지정된 데이터 풀에 스토리지 클래스를 매핑합니다.
5.1.1.3. 결과 링크 복사링크가 클립보드에 복사되었습니다!
이제 지정된 배치 대상에 사용할 수 있는 새 스토리지 클래스를 사용할 수 있습니다. S3 헤더를 사용하여 오브젝트를 업로드하거나 S3 Bucket Lifecycle 전환 규칙에서 오브젝트를 참조할 때 지정할 수 있습니다.