すべてのプロダクト
Search
ドキュメントセンター

Object Storage Service:リソースプール QoS の構成例

最終更新日:May 07, 2025

Alibaba Cloud アカウント内の複数のバケットを同じリソースプールに追加した後、ビジネス要件に基づいて、バケットおよびバケットにアクセスするリクエスト元の帯域幅調整をきめ細かく構成できます。

前提条件

  • リソースプール QoS は招待プレビュー中です。リージョン内の OSS バケットのスループットが 500 Gbit/s に達しているか、超えている場合は、テクニカルサポート に連絡して、この機能を申請できます。

  • ossutil 2.0 がインストールされていること。

構成例

説明

複数の RAM ユーザーがリソースプールへのアクセスに使用できる合計最大帯域幅を指定する

複数のリクエスト元が RAM ユーザーとして同時に同じリソースプール内の異なるバケットにアクセスする場合、RAM ユーザーがリソースプールの帯域幅を過剰に使用しないように、異なる RAM ユーザーの最大帯域幅を指定できます。

RAM ユーザーがバケットへのアクセスに使用できる合計最大帯域幅を指定する

異なるアプリケーションがリソースプール内の同じバケットにアクセスする場合、特定の RAM ユーザーがバケットへのアクセスに使用できる最大帯域幅を指定できます。これにより、RAM ユーザーがバケットの帯域幅を過剰に使用することを防ぎます。

バケットの合計最大帯域幅を指定する

異なるアプリケーションがリソースプール内の異なるバケットにアクセスする場合、単一バケットのトラフィックの急増によって他のバケットの帯域幅がプリエンプトされないように、バケットの最大帯域幅を指定できます。

バケットの合計最大インターネット帯域幅を指定する

インターネット経由でリソースプール内のバケットにあるオブジェクトにアクセス、プレビュー、またはダウンロードすると、アウトバウンドトラフィックが発生します。同時アクセス数の多さによる高額なトラフィック料金を防ぐために、バケットのインターネット経由の最大ダウンロード帯域幅を指定できます。

複数のクラウドサービスがバケットへのアクセスに使用できる合計最大帯域幅を指定する

ほとんどの場合、アプリケーションまたはサービスは RAM ロールを使用してサービス間で OSS にアクセスします。このようにして、RAM ロールがリソースプール内の特定のバケットにアクセスするために使用できる最大帯域幅を指定できます。これにより、RAM ロールが過剰な帯域幅を消費して他のサービスに影響を与えることを防ぎます。

優先度の低いバケットを持つバケットグループの合計最大帯域幅を指定する

同じリソースプール内の多数の優先度の低いバケットをバケットグループに割り当て、グループに帯域幅制限を適用できます。この方法により、少数の残りの優先度の高いバケットが内部または外部のデータ転送に十分な帯域幅を確保し、サービス品質と応答速度を維持できます。

優先度の低いバケットを持つバケットグループの合計最大インターネット帯域幅を指定する

同じリソースプール内の多数の優先度の低いバケットをバケットグループに割り当て、グループに帯域幅制限を適用できます。この方法により、少数の残りの優先度の高いバケットがピーク使用期間中に常に十分なインターネット帯域幅を確保できます。

複数の RAM ユーザーがリソースプールへのアクセスに使用できる合計最大帯域幅を指定する

次の例では、2 人の RAM ユーザーがリソースプールへのアクセスに使用できる最大帯域幅を指定する方法について説明します。

  1. RAM ユーザー A がリソースプールへのアクセスに使用できる合計最大帯域幅を指定します。

    1. ローカルの qos.xml 構成ファイルを使用して、RAM ユーザー A がリソースプールへのアクセスに使用できる合計最大帯域幅を指定します。

      • 合計最大アップロード帯域幅を 100 Gbit/s に設定します。内部ネットワーク経由の最大アップロード帯域幅は 50 Gbit/s、インターネット経由の最大アップロード帯域幅は 50 Gbit/s です。

      • 合計最大ダウンロード帯域幅を 200 Gbit/s に設定します。内部ネットワーク経由の最大ダウンロード帯域幅は 150 Gbit/s、インターネット経由の最大ダウンロード帯域幅は 50 Gbit/s です。

        <QoSConfiguration>
          <TotalUploadBandwidth>100</TotalUploadBandwidth>
          <IntranetUploadBandwidth>50</IntranetUploadBandwidth>
          <ExtranetUploadBandwidth>50</ExtranetUploadBandwidth>
          <TotalDownloadBandwidth>200</TotalDownloadBandwidth>
          <IntranetDownloadBandwidth>150</IntranetDownloadBandwidth>
          <ExtranetDownloadBandwidth>50</ExtranetDownloadBandwidth>
        </QoSConfiguration>
    2. 上記の帯域幅構成を、UID が 266xxxx の RAM ユーザー A に追加します。

      ossutil api invoke-operation --op-name put-resource-pool-requester-qos-info --method PUT --parameters resourcePool=examplepool --parameters qosRequester=266xxxx --parameters requesterQosInfo --body=file://qos.xml
  2. RAM ユーザー B がリソースプールへのアクセスに使用できる合計最大帯域幅を指定します。

    1. ローカルの qos.xml 構成ファイルを使用して、RAM ユーザー B がリソースプールへのアクセスに使用できる合計最大帯域幅を指定します。

      • 合計最大アップロード帯域幅を 50 Gbit/s に設定します。内部ネットワーク経由の最大アップロード帯域幅は 30 Gbit/s、インターネット経由の最大アップロード帯域幅は 20 Gbit/s です。

      • 合計最大ダウンロード帯域幅を 50 Gbit/s に設定します。内部ネットワーク経由の最大ダウンロード帯域幅は 30 Gbit/s、インターネット経由の最大ダウンロード帯域幅は 20 Gbit/s です。

        <QoSConfiguration>
          <TotalUploadBandwidth>50</TotalUploadBandwidth>
          <IntranetUploadBandwidth>30</IntranetUploadBandwidth>
          <ExtranetUploadBandwidth>20</ExtranetUploadBandwidth>
          <TotalDownloadBandwidth>50</TotalDownloadBandwidth>
          <IntranetDownloadBandwidth>30</IntranetDownloadBandwidth>
          <ExtranetDownloadBandwidth>20</ExtranetDownloadBandwidth>
        </QoSConfiguration>
    2. 上記の帯域幅構成を、UID が 242xxxx の RAM ユーザー B に追加します。

      ossutil api invoke-operation --op-name put-resource-pool-requester-qos-info --method PUT --parameters resourcePool=examplepool --parameters qosRequester=242xxxx --parameters requesterQosInfo --body=file://qos.xml
  3. (オプション) リソースプール内のすべての RAM ユーザーの帯域幅構成を一覧表示します。

    ossutil api invoke-operation --op-name list-resource-pool-requester-qos-infos --method GET --parameters resourcePool=examplePool  --parameters requesterQosInfo

RAM ユーザーの UID を表示する方法については、「RAM ユーザーに関する情報を表示する」をご参照ください。

RAM ユーザーがバケットへのアクセスに使用できる合計最大帯域幅を指定する

次の例では、RAM ユーザーがリソースプール内のバケットにアクセスするために使用できる合計最大帯域幅を指定する方法について説明します。

  1. ローカルの qos.xml 構成ファイルを使用して、特定の RAM ユーザーがリソースプール内のバケットにアクセスするために使用できる合計最大帯域幅を指定します。

    • 合計最大アップロード帯域幅を 100 Gbit/s に設定します。アップロード帯域幅は、内部ネットワークとインターネットの両方で無制限です。

    • 合計最大ダウンロード帯域幅を 100 Gbit/s に設定します。ダウンロード帯域幅は、内部ネットワークとインターネットの両方で無制限です。

      <QoSConfiguration>
        <TotalUploadBandwidth>100</TotalUploadBandwidth>
        <IntranetUploadBandwidth>-1</IntranetUploadBandwidth>
        <ExtranetUploadBandwidth>-1</ExtranetUploadBandwidth>
        <TotalDownloadBandwidth>100</TotalDownloadBandwidth>
        <IntranetDownloadBandwidth>-1</IntranetDownloadBandwidth>
        <ExtranetDownloadBandwidth>-1</ExtranetDownloadBandwidth>
      </QoSConfiguration>
  2. examplebucket という名前のバケットにアクセスするために、上記の帯域幅構成を UID が 266xxxx の RAM ユーザーに追加します。

    ossutil api invoke-operation --op-name put-bucket-requester-qos-info --method PUT --bucket=examplebucket --parameters requesterQosInfo --parameters qosRequester=266xxxx --body file://qos.xml
  3. (オプション) リソースプール内の特定のバケットにアクセスするための RAM ユーザーの帯域幅構成を取得します。

    ossutil api invoke-operation --op-name get-bucket-requester-qos-info --method GET --bucket=examplebucket --parameters requesterQosInfo --parameters qosRequester=266xxxx

バケットの合計最大帯域幅を指定する

次の例では、リソースプール内のバケットの合計最大帯域幅を指定する方法について説明します。

  1. ローカルの qos.xml 構成ファイルを使用して、リソースプール内のバケットの合計最大帯域幅を指定します。

    • 合計最大アップロード帯域幅を 100 Gbit/s に設定します。アップロード帯域幅は、内部ネットワークとインターネットの両方で無制限です。

    • 合計最大ダウンロード帯域幅を 200 Gbit/s に設定します。ダウンロード帯域幅は、内部ネットワークとインターネットの両方で無制限です。

      <QoSConfiguration>
        <TotalUploadBandwidth>100</TotalUploadBandwidth>
        <IntranetUploadBandwidth>-1</IntranetUploadBandwidth>
        <ExtranetUploadBandwidth>-1</ExtranetUploadBandwidth>
        <TotalDownloadBandwidth>200</TotalDownloadBandwidth>
        <IntranetDownloadBandwidth>-1</IntranetDownloadBandwidth>
        <ExtranetDownloadBandwidth>-1</ExtranetDownloadBandwidth>
      </QoSConfiguration>
  2. 上記の帯域幅構成を、examplebucket という名前のバケットに追加します。

    ossutil api invoke-operation --op-name put-bucket-qos-info --method PUT --bucket examplebucket --parameters qosInfo --body=file://qos.xml
  3. (オプション) バケットの合計帯域幅構成を取得します。

    ossutil api invoke-operation --op-name get-bucket-qos-info --method GET --bucket examplebucket --parameters qosInfo

バケットの合計最大インターネット帯域幅を指定する

次の例では、リソースプール内のバケットのインターネット経由の合計最大帯域幅を指定する方法について説明します。

  1. ローカルの qos.xml 構成ファイルを使用して、バケットのインターネット経由の合計最大帯域幅を指定します。

    • 合計最大アップロード帯域幅を 100 Gbit/s に設定します。内部ネットワークのアップロード帯域幅は無制限ですが、インターネット経由の最大アップロード帯域幅は 20 Gbit/s です。

    • 合計最大ダウンロード帯域幅を 100 Gbit/s に設定します。内部ネットワークのダウンロード帯域幅は無制限ですが、インターネット経由の最大ダウンロード帯域幅は 20 Gbit/s です。

      <QoSConfiguration>
        <TotalUploadBandwidth>100</TotalUploadBandwidth>
        <IntranetUploadBandwidth>-1</IntranetUploadBandwidth>
        <ExtranetUploadBandwidth>20</ExtranetUploadBandwidth>
        <TotalDownloadBandwidth>100</TotalDownloadBandwidth>
        <IntranetDownloadBandwidth>-1</IntranetDownloadBandwidth>
        <ExtranetDownloadBandwidth>20</ExtranetDownloadBandwidth>
      </QoSConfiguration>
  2. 上記の帯域幅構成を、examplebucket という名前のバケットに追加します。

    ossutil api invoke-operation --op-name put-bucket-qos-info --method PUT --bucket examplebucket --parameters qosInfo --body=file://qos.xml
  3. (オプション) バケットの内部帯域幅構成を取得します。

    ossutil api invoke-operation --op-name get-bucket-qos-info --method GET --bucket examplebucket --parameters qosInfo

複数のクラウドサービスがバケット内のオブジェクトにアクセスするために使用できる合計最大帯域幅を指定する

次の例では、Alibaba Cloud CDN と Cloud Parallel File Storage (CPFS) がリソースプール内のバケットにアクセスするために使用できる合計最大帯域幅を指定する方法について説明します。

  1. RAM ロールを使用して Alibaba Cloud CDN で非公開バケットからオブジェクトを取得する場合に、RAM ロールの合計最大帯域幅を構成します。

    リソースプール内の非公開バケットを使用して静的オブジェクトを保存し、Alibaba Cloud CDN を使用して静的オブジェクトの配信を高速化します。 Alibaba Cloud CDN が非公開バケットから必要な静的オブジェクトを取得できるようにするには、Alibaba Cloud CDN の非公開 OSS バケットからのオリジンフェッチを有効にする必要があります。その後、Alibaba Cloud CDN は、AliyunCDNAccessingPrivateOSSRole という名前の RAM ロールを使用して、非公開バケット内のオブジェクトにアクセスできます。

    1. ローカルの qos.xml 構成ファイルを使用して、RAM ロールがバケット内のオブジェクトにアクセスするために使用できる合計最大帯域幅を指定します。

      • 合計最大アップロード帯域幅を 20 Gbit/s に設定します。アップロード帯域幅は、内部ネットワークとインターネットの両方で無制限です。

      • 最大ダウンロード帯域幅を 40 Gbit/s に設定します。ダウンロード帯域幅は、内部ネットワークとインターネットの両方で無制限です。

        <QoSConfiguration>
          <TotalUploadBandwidth>20</TotalUploadBandwidth>
          <IntranetUploadBandwidth>-1</IntranetUploadBandwidth>
          <ExtranetUploadBandwidth>-1</ExtranetUploadBandwidth>
          <TotalDownloadBandwidth>40</TotalDownloadBandwidth>
          <IntranetDownloadBandwidth>-1</IntranetDownloadBandwidth>
          <ExtranetDownloadBandwidth>-1</ExtranetDownloadBandwidth>
        </QoSConfiguration>
    2. examplebucket という名前のバケット内のオブジェクトにアクセスするために、上記の帯域幅構成を ID が 362xxxx の RAM ロールに追加します。

      ossutil api invoke-operation --op-name put-bucket-requester-qos-info --method PUT --bucket=examplebucket --parameters requesterQosInfo --parameters qosRequester=362xxxx --body file://qos.xml
  2. RAM ロールを使用して CPFS でバケット内のオブジェクトにアクセスする場合に、RAM ロールの合計最大帯域幅を構成します。

    高性能コンピューティングと AI トレーニングのシナリオでは、大量のトレーニングデータを OSS バケットから頻繁に読み取り、大量のトレーニングデータを OSS バケットに書き込む必要があります。データの読み取りと書き込みの効率を向上させるために、CPFS を使用してデータフロータスクを作成し、OSS から CPFS にデータをすばやくロードできます。データのロード中に、CPFS は AliyunServiceRoleForNasOssDataFlow ロールを偽装して、OSS 内の指定されたバケットのデータをクエリ、読み取り、および書き込みます。

    1. ローカルの qos.xml 構成ファイルを使用して、RAM ロールがバケット内のオブジェクトにアクセスするために使用できる合計最大帯域幅を指定します。

      • 合計最大アップロード帯域幅を 30 Gbit/s に設定します。アップロード帯域幅は、内部ネットワークとインターネットの両方で無制限です。

      • 最大ダウンロード帯域幅を 50 Gbit/s に設定します。ダウンロード帯域幅は、内部ネットワークとインターネットの両方で無制限です。

        <QoSConfiguration>
          <TotalUploadBandwidth>30</TotalUploadBandwidth>
          <IntranetUploadBandwidth>-1</IntranetUploadBandwidth>
          <ExtranetUploadBandwidth>-1</ExtranetUploadBandwidth>
          <TotalDownloadBandwidth>50</TotalDownloadBandwidth>
          <IntranetDownloadBandwidth>-1</IntranetDownloadBandwidth>
          <ExtranetDownloadBandwidth>-1</ExtranetDownloadBandwidth>
        </QoSConfiguration>
    2. 300xxxx という名前のバケット内のオブジェクトにアクセスするために、上記の帯域幅構成を ID が 手順 3: メディア設定を構成する の RAM ロールに追加します。

      ossutil api invoke-operation --op-name put-bucket-requester-qos-info --method PUT --bucket=examplebucket --parameters requesterQosInfo --parameters qosRequester=300xxxx --body file://qos.xml
  3. (オプション) リソースプール内のすべての RAM ロールの帯域幅構成を一覧表示します。

    ossutil api invoke-operation --op-name list-resource-pool-requester-qos-infos --method GET --parameters resourcePool=examplePool  --parameters requesterQosInfo

RAM ロールの ID を表示する方法については、「RAM ロールに関する情報を表示する」をご参照ください。

優先度の低いバケットを持つバケットグループの合計最大帯域幅を指定する

たとえば、リソースプールは、onlineoffline-01offline-02 の各バケットで構成されています。 online バケットはオンラインのビジネス運用専用であり、帯域幅割り当ての優先順位を付ける必要があります。 offline-01 バケットと offline-02 バケットは、異なるオフラインタスクを処理します。オフラインタスクがオンラインのビジネス運用に干渉しないようにするために、offline-01 バケットと offline-02 バケットを 1 つのバケットグループにグループ化できます。このグループに帯域幅制限を適用することにより、システムは、オフラインタスクが制御された帯域幅制約内で動作する一方で、オンラインのビジネス運用が中断のない優先アクセスを維持することを保証します。

  1. ローカルの qos.xml 構成ファイルを使用して、リソースプール内のバケットグループの合計最大帯域幅を指定します。

    • 合計最大アップロード帯域幅を 50 Gbit/s に設定します。アップロード帯域幅は、内部ネットワークとインターネットの両方で無制限です。

    • 合計最大ダウンロード帯域幅を 100 Gbit/s に設定します。ダウンロード帯域幅は、内部ネットワークとインターネットの両方で無制限です。

      <QoSConfiguration>
        <TotalUploadBandwidth>50</TotalUploadBandwidth>
        <IntranetUploadBandwidth>-1</IntranetUploadBandwidth>
        <ExtranetUploadBandwidth>-1</ExtranetUploadBandwidth>
        <TotalDownloadBandwidth>100</TotalDownloadBandwidth>
        <IntranetDownloadBandwidth>-1</IntranetDownloadBandwidth>
        <ExtranetDownloadBandwidth>-1</ExtranetDownloadBandwidth>
      </QoSConfiguration>
  2. offline-01 バケットと offline-02 バケットをバケットグループに追加します。

    1. offline-01 バケットをバケットグループに追加します。

      ossutil api invoke-operation --op-name put-bucket-resource-pool-bucket-group --method PUT --bucket offline-01 --parameters resourcePool=pool-for-ai --parameters resourcePoolBucketGroup=offline-group
    2. offline-02 バケットをバケットグループに追加します。

      ossutil api invoke-operation --op-name put-bucket-resource-pool-bucket-group --method PUT --bucket offline-02 --parameters resourcePool=pool-for-ai --parameters resourcePoolBucketGroup=offline-group
    3. (オプション) バケットグループに追加されているバケットのリストを取得します。

      ossutil api invoke-operation --op-name list-resource-pool-bucket-groups --method GET --parameters resourcePool=pool-for-ai --parameters resourcePoolBucketGroup
  3. バケットグループの帯域幅しきい値を構成します。

    ossutil api invoke-operation --op-name put-resource-pool-bucket-group-qos-info --method PUT --parameters resourcePoolBucketGroupQosInfo --parameters resourcePool pool-for-ai --parameters resourcePoolBucketGroup offline-group --body=file://qos.xml
  4. (オプション) バケットグループの帯域幅構成を取得します。

    ossutil api invoke-operation --op-name get-resource-pool-bucket-group-qos-info --method GET --parameters resourcePool=pool-for-ai --parameters resourcePoolBucketGroup=offline-group --parameters resourcePoolBucketGroupQoSInfo

優先度の低いバケットを持つバケットグループの合計最大インターネット帯域幅を指定する

たとえば、リソースプールは、realtime-chatscheduled-postsarchived-comments の各バケットで構成されています。 realtime-chat バケットは、厳格なリアルタイム要件を持つ優先度の高いオンラインビジネスをサポートしますが、scheduled-posts バケットと archived-comments バケットは、優先度の低いタスクを処理します。優先度の高いトラフィックが影響を受けないようにするために、優先度の低い scheduled-posts バケットと archived-comments バケットをグループ化し、共有帯域幅制限を適用できます。この方法により、優先度の高い realtime-chat バケットが常に十分なネットワークリソースを確保し、重要なオンラインサービスのスムーズな運用を維持できます。

  1. ローカルの qos.xml 構成ファイルを使用して、リソースプール内のバケットグループの合計最大帯域幅を指定します。

    • 合計最大アップロード帯域幅を 50 Gbit/s に設定します。内部ネットワークのアップロード帯域幅は無制限ですが、インターネット経由の最大アップロード帯域幅は 20 Gbit/s です。

    • 合計最大ダウンロード帯域幅を 100 Gbit/s に設定します。内部ネットワークのダウンロード帯域幅は無制限ですが、インターネット経由の最大ダウンロード帯域幅は 20 Gbit/s です。

      <QoSConfiguration>
        <TotalUploadBandwidth>50</TotalUploadBandwidth>
        <IntranetUploadBandwidth>-1</IntranetUploadBandwidth>
        <ExtranetUploadBandwidth>20</ExtranetUploadBandwidth>
        <TotalDownloadBandwidth>100</TotalDownloadBandwidth>
        <IntranetDownloadBandwidth>-1</IntranetDownloadBandwidth>
        <ExtranetDownloadBandwidth>20</ExtranetDownloadBandwidth>
      </QoSConfiguration>
  2. scheduled-posts バケットと archived-comments バケットをバケットグループに追加します。

    1. scheduled-posts バケットをバケットグループに追加します。

      ossutil api invoke-operation --op-name put-bucket-resource-pool-bucket-group --method PUT --bucket scheduled-posts --parameters resourcePool=pool-for-ai --parameters resourcePoolBucketGroup=test-group
    2. archived-comments バケットをバケットグループに追加します。

      ossutil api invoke-operation --op-name put-bucket-resource-pool-bucket-group --method PUT --bucket archived-comments --parameters resourcePool=pool-for-ai --parameters resourcePoolBucketGroup=test-group
    3. (オプション) バケットグループに追加されているバケットのリストを取得します。

      ossutil api invoke-operation --op-name list-resource-pool-bucket-groups --method GET --parameters resourcePool=pool-for-ai --parameters resourcePoolBucketGroup
  3. バケットグループの帯域幅しきい値を構成します。

    ossutil api invoke-operation --op-name put-resource-pool-bucket-group-qos-info --method PUT --parameters resourcePoolBucketGroupQosInfo --parameters resourcePool pool-for-ai --parameters resourcePoolBucketGroup test-group --body=file://qos.xml
  4. (オプション) バケットグループの帯域幅構成を取得します。

    ossutil api invoke-operation --op-name get-resource-pool-bucket-group-qos-info --method GET --parameters resourcePool=pool-for-ai --parameters resourcePoolBucketGroup=test-group --parameters resourcePoolBucketGroupQoSInfo

参照

リソースプール、リクエスト元、およびバケットの帯域幅しきい値を構成した後 (前の例で示したように)、CloudMonitor で各ディメンションの帯域幅しきい値と使用量を監視できます。詳細については、「CloudMonitor を使用する」をご参照ください。