第5章 ストレージクラス


5.1. ストレージクラス

ストレージクラスは、Ceph Object Gateway (RGW) 内でオブジェクトデータがどのように配置され、管理されるかを定義します。これらはオブジェクトを特定の配置ターゲットにマッピングし、特に S3 バケットのライフサイクル遷移と併用する場合に、コストとパフォーマンスを最適化した階層化をサポートします。

すべての配置対象には STANDARD ストレージクラスが含まれており、これはデフォルトで新しいオブジェクトに適用されます。ユーザーは、default_storage_class の 値を設定することで、このデフォルト設定を上書きできます。オブジェクトをデフォルト以外のストレージクラスに保存するには、リクエストヘッダーにストレージクラス名を指定します。

  • S3 プロトコル: X-Amz-Storage-Class
  • Swift プロトコル: X-Object-Storage-Class

S3 オブジェクトライフサイクル管理は、移行 アクションを使用してストレージクラス間の移行を自動化できます。

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_LOGSML_DATA)。
  • オブジェクトの経過時間やアクセスパターンに基づいて、STANDARD STANDARD_IA アーカイブプールなどの複数階層の移行を自動化します。
  • ストレージクラスを、異なるレプリケーション設定または消去符号化設定を持つプールにマッピングすることにより、異なる耐久性または回復力プロファイルを適用します。
  • ワークロード (分析、ログ記録、バックアップなど) を、圧縮、耐久性、コストモデルに合わせて最適化されたプールに分割する。

IBM Storage Ceph Object Gateway の配置ターゲットに新しいストレージクラスを追加し、それをデータプールと圧縮設定にマッピングします。

5.1.1.1. 前提条件

始める前に、以下の要件を満たしていることを確認してください。

  • 管理者特権には、radosgw-admin コマンドを実行する権限があります。
  • ゾーングループとゾーンは、すでに Ceph Object Gateway に設定済みです。
  • 必要なデータプール (たとえば、default.rgw.glacier.data) は Ceph クラスター内に存在します。
  • radosgw-admin ツールは、コマンドを実行するシステムにインストールされ、利用可能です。

5.1.1.2. 手順

  1. ゾーングループの配置対象に新しいストレージクラスを追加します。

    構文

    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

    このコマンドは、ゾーングループの配置設定を更新して、新しいストレージクラスを含めるようにします。

  2. ストレージクラスごとに、ゾーン固有の配置設定を定義します。

    構文

    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 バケットのライフサイクル遷移ルールで参照することができます。

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る