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

Elasticsearch:aliyun-qosプラグインを使用する

最終更新日:Jan 11, 2025

aliyun-qosは、Alibaba Cloud Elasticsearchチームによって開発された調整プラグインです。このプラグインは、クラスターの安定性を向上させるように設計されています。プラグインは、クラスターレベルの読み取りまたは書き込み調整を実装し、実際の状況に基づいて特定のインデックスの優先度を下げます。 aliyun-qosプラグインを使用すると、プラグインによって事前定義されたルールに基づいてサービスの優先度を下げることができます。これは、アップストリームサービス、特に読み取りリクエストで調整を実装できない場合に役立ちます。

前提条件

Elasticsearchクラスターにインストールされているaliyun-qosプラグインが最新バージョンにアップグレードされていること。

ElasticsearchクラスターのKibanaコンソールにログオンし、GET /_cat/plugins?vコマンドを実行して、プラグインのバージョンを確認できます。Check the version of the aliyun-qos plug-in

Elasticsearch V7.10クラスター用のプラグインの最新バージョンは 7.10.0_ali1.6.0.2 です。他のバージョンのElasticsearchクラスター用のプラグインの最新バージョンは、<Elasticsearchクラスターのバージョン>-rc4 の形式です。プラグインが最新バージョンでない場合は、次のいずれかの方法を使用してプラグインのバージョンをアップグレードできます。

  • Elasticsearch V7.10クラスターにインストールされているプラグイン:カーネルバージョンを V1.6.0 に更新します。詳細については、クラスターのバージョンをアップグレードする をご参照ください。

  • V7.10以外のバージョンのElasticsearchクラスターにインストールされているプラグイン:チケットを送信することで、Elasticsearchテクニカルエンジニアに連絡してプラグインのバージョンをアップグレードします。アップグレード後、変更を有効にするには、Elasticsearchクラスターを再起動する必要があります。

説明
  • aliyun-qosプラグインのバージョンが rc4 より前の場合、プラグインを使用すると、システムは unsupported_operation_exception エラーを報告します。

  • V6.7.0以降のElasticsearchクラスターにインストールされているaliyun-qosプラグインのバージョンをアップグレードできます。 V6.7.0より前のバージョンのElasticsearchクラスターにインストールされているaliyun-qosプラグインのバージョンをアップグレードする場合は、aliyun-qosプラグインのバージョンをアップグレードする前に、クラスターのバージョンを V6.7.0 以降にアップグレードする必要があります。

注意事項

  • aliyun-qosは組み込みプラグインであり、アンインストールできません。このプラグインによって提供される調整機能は、デフォルトで無効になっています。このプラグインは、クラスターを保護し、クラスターの安定性を向上させるように設計されています。読み取りまたは書き込みトラフィックを正確に測定するものではありません。aliyun-qos plug-in

    説明

    プラグインを使用する前に、Elasticsearchコンソールの [プラグイン] ページでプラグインがインストールされているかどうかを確認できます。プラグインがインストールされていない場合は、最初にインストールしてください。詳細については、組み込みプラグインをインストールおよび削除する をご参照ください。プラグインは、インストール後にアンインストールできません。

  • aliyun-qosを最新バージョンにアップグレードする前に、次の項目に注意してください。

    • 以前のバージョンのaliyun-qosプラグインとそれ以降のバージョンのaliyun-qosプラグインによって提供される調整機能の実装メカニズムの違いにより、アップグレード中に調整機能が短時間無効になる場合があります。クラスターの専用マスターノードにインストールされているプラグインが最新バージョンにアップグレードされると、調整機能は回復します。

    • aliyun-qosプラグインを最新バージョンにアップグレードすると、プラグインで構成されている一部のリミッターがアップグレードに失敗する場合があります。このような状況が発生した場合は、次のコマンドを実行してプラグインを再度アップグレードする必要があります。コマンドの実行後にエラーが報告された場合は、hasError の値が false になるまでコマンドを複数回実行できます。

      POST /_qos/limiter/ops/upgrade
      説明

      上記のコマンドを実行しても結果が返されない場合は、aliyun-qosプラグインで構成されているすべてのリミッターが最新バージョンです。

しきい値を評価する

読み取りおよび書き込みリクエストの処理効率を確保するために、aliyun-qosプラグインはElasticsearchクラスターで調整を実行しますが、クラスター内のすべてのノードの読み取りまたは書き込みトラフィックを正確に測定するわけではありません。これは、測定されたトラフィックと実際のトラフィックの間に不一致が生じる可能性があります。 aliyun-qosプラグインを使用する前に、次のルールに基づいて調整しきい値を評価できます。

  • クエリリクエスト

    クエリリクエストの調整しきい値 = クライアントからElasticsearchへのエンドツーエンドの1秒あたりのクエリ数(QPS)

    説明

    エンドツーエンドQPSは、クライアントノードに1秒あたりに送信されるクエリリクエストの数を示します。

  • 書き込みリクエスト

    書き込みリクエストの調整しきい値の計算に使用される方法は、クエリリクエストの調整しきい値の計算に使用される方法と似ています。ただし、レプリカシャードの数に基づいて、計算された書き込みリクエストのしきい値を調整する必要があります。

    たとえば、クラスターに2つのデータノードが含まれており、1つのプライマリシャードと1つのレプリカシャードを持つ1つのインデックスが格納されており、毎回 10 MB のデータが書き込まれるとします。この場合、インデックスには1つのレプリカシャードがあるため、毎回 10 MB のデータが各データノードに書き込まれます。さらに、X-Pack Monitor、Audit、および Watcher タスクも書き込みトラフィックを生成します。調整しきい値を構成する際には、これらのタスクを考慮する必要があります。

調整を有効にする

aliyun-qosプラグインによって提供される調整機能は、デフォルトで無効になっています。プラグインを使用する前に、機能を有効にする必要があります。調整機能を有効にするために使用されるコードは、aliyun-qosプラグインのバージョンによって異なります。次の表に、異なるバージョンのaliyun-qosプラグインに使用できるコードを示します。

説明

このトピックで提供されているすべてのコマンドは、Kibanaコンソールで実行できます。詳細については、Kibanaコンソールにログオンする をご参照ください。

Elasticsearch V7.10クラスターにインストールされているプラグインの最新バージョンのコード

他のバージョンのElasticsearchクラスターにインストールされているプラグインのコード

PUT _cluster/settings
{
  "persistent": {
    "apack.qos.limiter.enabled": true
  }
}
PUT _cluster/settings
{
   "persistent" : {
      "apack.qos.ratelimit.enabled":"true"
   }
}

調整を無効にする

調整機能に関連するパラメーターを false または null に設定して、機能を無効にすることができます。調整機能を無効にするために使用されるコードは、aliyun-qosプラグインのバージョンによって異なります。次の表に、異なるバージョンのaliyun-qosプラグインに使用できるコードを示します。

方法

Elasticsearch V7.10クラスターにインストールされているプラグインの最新バージョンのコード

他のバージョンのElasticsearchクラスターにインストールされているプラグインのコード

調整機能に関連するパラメーターを false に設定する

PUT _cluster/settings
{
  "persistent": {
    "apack.qos.limiter.enabled": false
  }
}
PUT _cluster/settings
{
   "persistent" : {
      "apack.qos.ratelimit.enabled":"false"
   }
}

調整機能に関連するパラメーターを null に設定する

PUT _cluster/settings
{
  "persistent": {
    "apack.qos.limiter.enabled": null
  }
}
PUT _cluster/settings
{
   "persistent" : {
      "apack.qos.ratelimit.enabled":null
   }
}

Elasticsearch V7.10クラスターにインストールされているaliyun-qosプラグインのリミッターを構成する

説明
  • このセクションは、Elasticsearch V7.10クラスターにインストールされているaliyun-qosプラグインにのみ適しています。

  • リミッターの構成には、limiters と tags の2つの項目が含まれています。 tags 構成項目は、調整が実行されるリソースを定義します。 limiters 構成項目は、調整タイプと調整しきい値を定義します。

  • リミッターは、共通リミッターとデフォルトリミッターに分類されます。 tags 構成項目で ** を指定して、デフォルトリミッターの機能を実装できます。たとえば、tags 構成項目で ** を指定して、デフォルトリミッターを使用して、各プライマリまたはレプリカシャードに転送されるトラフィック、または各アプリケーションのQPSを調整できます。

  • しきい値に達すると、システムは後続のリクエストを拒否します。

  • リミッターの構成例の詳細については、リミッターを構成する例 をご参照ください。

PUT /_qos/limiter/<limiterName>
{
  "limiters": {
     ${action}.${limiter_type}:${threshold}
  },
  "tags": {
    ${tagName}:${tagValue}
  },
  "priority":0,               
  "params":{  
      "watchMode":true
  }
}

パラメーター

説明

有効な値

action

調整が実行される操作のタイプ。

  • write:ドキュメントの書き込み操作。ドキュメントのインデックス作成または作成が含まれます。

  • update:ドキュメントの更新操作。

  • delete:ドキュメントの削除操作。

  • search:クエリ操作。

  • search_shards:インデックスのプライマリおよびレプリカシャードの総数をクエリするために使用されるクエリ操作。

limiter_type

調整タイプ。次の調整タイプがサポートされています。

  • レート

  • 同時スレッド数

  • 単一リクエスト

  • rate:レート。このパラメーターを rate に設定した場合、threshold パラメーターは整数にのみ設定できます。

  • qps:QPS。このパラメーターを qps に設定した場合、threshold パラメーターは整数にのみ設定できます。

  • tps:1秒あたりのトランザクション数(TPS)。このパラメーターを tps に設定した場合、threshold パラメーターは整数にのみ設定できます。

  • throughput:スループット。 action パラメーターを write、update、または delete に設定した場合にのみ、このパラメーターを throughput に設定できます。このパラメーターを throughput に設定した場合、threshold パラメーターでサポートされる単位は GB、MB、KB であり、threshold パラメーターの最大値は 2 GB です。

  • thread_count:リクエストに使用できる同時スレッド数。デフォルトでは、1つのリクエストに1つのスレッドが使用されます。

  • concurrent_count:リクエストに使用できる同時スレッド数。このパラメーターを concurrent_count に設定した場合、threshold パラメーターの値は、リクエストで指定された操作に基づいて計算されます。たとえば、limiters 構成項目で search_shards.concurrent_count:20 を指定した場合、最大 20 の同時スレッドを使用して、インデックスのプライマリまたはレプリカシャードの数をクエリできます。

  • max_per_request:単一のリクエストで特定の種類の操作の実行が許可される最大回数。たとえば、update.max_per_request:10 を指定した場合、書き込みリクエストでは最大 10 の更新操作が許可されます。

  • max_size_per_request:単一のリクエストで許可される操作の最大数。 action パラメーターを write、update、または delete に設定した場合にのみ、このパラメーターを max_size_per_request に設定できます。

threshold

調整しきい値。

-1以上の整数。

説明

一部のリミッタータイプでは、このパラメーターを単位を含む文字列に設定できます。詳細については、limiter_type パラメーターの説明をご参照ください。

tagName

タグキー。

  • node:現在のノードの名前。

  • is_master:現在のノードが専用マスターノードであるかどうかを指定します。 tagName パラメーターをこの値に設定した場合、tagValue パラメーターの値は true または false です。

  • index:インデックスの名前。複数のインデックス名を指定する場合は、tagValue パラメーターをインデックス名で構成される配列に設定します。 tagValue パラメーターをインデックスのエイリアスに設定した場合、aliyun-qosプラグインはインデックスの実際の名前を解析し、実際の名前に基づいてインデックスの調整を実行します。 tagName パラメーターは、IndicesRequest タイプのサブリクエストに対してのみこの値に設定できます。

  • shard:プライマリまたはレプリカシャードの名前。このパラメーターを shard に設定した場合、tagValue パラメーターを test[0] などの index[id] 形式の値に設定する必要があります。 tagName パラメーターは、ReplicationRequest タイプのサブリクエストに対してのみこの値に設定できます。

  • index_in_url:URL内のインデックス名の文字列。 tagValue パラメーターをインデックスのエイリアスに設定した場合、aliyun-qosプラグインはエイリアスで示されたインデックスの調整を実行します。 tagName パラメーターは、IndicesRequest タイプのサブリクエストに対してのみこの値に設定できます。

tagValue

タグ値。

文字列または配列。配列が指定されている場合、調整は配列内のいずれかの要素に一致するリソースに適用されます。タグ値には、完全一致、あいまい一致、およびすべての値がサポートされています。例:

  • 完全一致:"abc"

  • あいまい一致:"ab*"

  • すべての値:"**"

    説明

    tagValue パラメーターを "**" に設定すると、デフォルトリミッターが使用されます。これは、タグに一致する各リソースに対してリミッターが生成されることを示します。たとえば、index:"**",search.tps:1 を指定した場合、すべてのインデックスではなく、各インデックスの検索速度はデフォルトで 1 に制限されます。

priority

優先度。

整数。デフォルト値:0。

説明

優先度の高いリミッターほど有効になる可能性が高くなります。複数のデフォルトリミッターにヒットした場合、優先度の最も高いリミッターが有効になります。

params

詳細パラメーター。

watchMode:監視モードを有効にするかどうかを指定します。有効な値:true および false。デフォルト値:false。 watchMode パラメーターを true に設定すると、Elasticsearch は関連するメトリックで拒否されたリクエストの数のみを記録し、調整は実行しません。 API を呼び出してメトリックの監視データを表示し、事前に調整効果を確認できます。これにより、不適切な構成によって引き起こされる予期しない調整効果を防ぎます。詳細については、FAQ をご参照ください。

リミッターを構成する例

QPSの調整を構成する

インデックスのQPSしきい値を指定して、クライアントノードが1秒あたりに受信できるクエリリクエストの数を制限できます。クライアントノードが1秒あたりに受信するクエリリクエストの数がしきい値を超えると、システムはリクエストを拒否します。

タグキー index および index_patterns に対応するタグ値には、完全なインデックス名とインデックス名のワイルドカードがサポートされています。 QPSの調整を構成するために使用されるコードは、aliyun-qosプラグインのバージョンによって異なります。次の表に、異なるバージョンのaliyun-qosプラグインでQPSの調整を構成するために使用できるコードを示します。

操作

Elasticsearch V7.10クラスターにインストールされているプラグインの最新バージョンのコード

他のバージョンのElasticsearchクラスターにインストールされているプラグインのコード

特定のインデックスのQPSの調整を構成する

PUT /_qos/limiter/<limiterName>
{
  "limiters": {
    "search.qps": "1000"
  },
  "tags": {
    "index": "twitter"
  }
}
PUT _qos/_ratelimit/<limiterName>
{
   "search.index_patterns" : "twitter",
   "search.max_queries_per_sec" : 1000
}

名前に特定のプレフィックスが付いているインデックスのQPSの調整を構成する

PUT /_qos/limiter/<limiterName>
{
  "limiters": {
    "search.qps": "1000"
  },
  "tags": {
    "index": "nginx-log-*"
  }
}
PUT _qos/_ratelimit/<limiterName>
{
   "search.index_patterns" : "nginx-log-*",
   "search.max_queries_per_sec" : 1000
}

任意のインデックスのQPSの調整を構成する

PUT /_qos/limiter/<limiterName>
{
  "limiters": {
    "search.qps": "1000"
  },
  "tags": {
    "index": "**"
  }
}
説明

index:** は任意のインデックスを示します。たとえば、Elasticsearchクラスターに A、B、C の3つのインデックスがあるとします。 A、B、C のそれぞれのQPSしきい値は 1,000 です。

サポートされていません

すべてのインデックスの合計QPSの調整を構成する

PUT /_qos/limiter/<limiterName>
{
  "limiters": {
    "search.qps": "1000"
  },
  "tags": {
    "index": "*"
  }
}
説明

index:* は任意のインデックスを示します。たとえば、Elasticsearchクラスターに A、B、C の3つのインデックスがあるとします。 A、B、C の合計QPSしきい値は 1,000 です。 tags 構成項目を省略しても同じ効果が得られます。

PUT _qos/_ratelimit/<limiterName>
{
   "search.index_patterns" : "*",
   "search.max_queries_per_sec" : 1000
}
説明

調整をトリガーするために複数のルールを定義できます。リクエストがいずれかのルールにヒットすると、調整がトリガーされます。

クライアントを使用してデータをクエリする場合、またはElasticsearchクラスターのKibanaコンソールでデータをクエリする場合に、QPSがaliyun-qosプラグインで構成した調整しきい値を超えると、システムは次のいずれかのエラーメッセージを報告します。この場合、QPSを削減する必要があります。報告されるエラーメッセージは、aliyun-qosプラグインのバージョンによって異なります。

  • Elasticsearch V7.10クラスターにインストールされているプラグインの最新バージョンのコード

    {
      "error": {
        "root_cause": [
          {
            "type": "status_exception",
            "reason": "search blocked, limited by [<limiterName>][search.qps](<limiterId>) threshold:[x]"
          }
        ],
        "type": "status_exception",
        "reason": "search blocked, limited by [<limiterName>][search.qps](<limiterId>) threshold:[x]"
      },
      "status": 429
    }
  • 他のバージョンのElasticsearchクラスターにインストールされているプラグインのコード

    {
      "error": {
        "root_cause": [
          {
            "type": "rate_limited_exception",
            "reason": "request indices:data/read/search rejected, limited by [l1:t*:1.0]"
          }
        ],
        "type": "rate_limited_exception",
        "reason": "request indices:data/read/search rejected, limited by [l1:t*:1.0]"
      },
      "status": 429
    }

TPSの調整を構成する

インデックスのTPSしきい値を指定して、クライアントノードが1秒あたりに受信できる書き込みリクエストの数を制限できます。クライアントノードが1秒あたりに受信する書き込みリクエストの数がしきい値を超えると、システムはリクエストを拒否します。

タグキー index および index_patterns に対応するタグ値には、完全なインデックス名とインデックス名のワイルドカードがサポートされています。 TPSの調整を構成するために使用されるコードは、aliyun-qosプラグインのバージョンによって異なります。次の表に、異なるバージョンのaliyun-qosプラグインでTPSの調整を構成するために使用できるコードを示します。

Elasticsearch V7.10クラスターにインストールされているプラグインの最新バージョンのコード

他のバージョンのElasticsearchクラスターにインストールされているプラグインのコード

PUT /_qos/limiter/<limiterName>
{
  "limiters": {
    "write.tps": "100000"
  },
  "tags": {
    "index": "nginx-log-*"
  }
}

サポートされていません

すべてのバルクリクエストに対して1秒あたりに書き込むことができるデータ量の調整を構成する

すべてのバルクリクエストに対して書き込むことができるバイト数の合計を指定して、クライアントノードが1秒あたりに受信できる最大バイト数を制限できます。バルクリクエストの詳細については、Bulk API をご参照ください。クライアントノードが1秒あたりに受信するバイト数がしきい値を超えると、システムはリクエストを拒否します。

タグキー index および index_patterns に対応するタグ値には、完全なインデックス名とインデックス名のワイルドカードがサポートされています。すべてのバルクリクエストに対して1秒あたりに書き込むことができるデータ量の調整を構成するために使用されるコードは、aliyun-qosプラグインのバージョンによって異なります。次の表に、異なるバージョンのaliyun-qosプラグインに使用できるコードを示します。

Elasticsearch V7.10クラスターにインストールされているプラグインの最新バージョンのコード

他のバージョンのElasticsearchクラスターにインストールされているプラグインのコード

PUT /_qos/limiter/<limiterName>
{
  "limiters": {
    "write.throughput": "100MB"
  },
  "tags": {
    "index": "nginx-log-*"
  }
}
PUT _qos/_ratelimit/<limiterName>
{
   "bulk.index_patterns": "nginx-log-*",
   "bulk.max_throughput_in_bytes" : 104857600
}
説明

調整をトリガーするために複数のルールを定義できます。リクエストがいずれかのルールにヒットすると、調整がトリガーされます。

バルクリクエストに対して1秒あたりに書き込むことができるデータ量の調整を構成する

単一のバルクリクエストに対して書き込むことができる最大バイト数を指定して、クライアントノードが単一のリクエストから受信できる最大バイト数を制限できます。バルクリクエストの詳細については、Bulk API をご参照ください。クライアントノードが単一のリクエストから受信するバイト数がしきい値を超えると、システムはリクエストを拒否します。

タグキー index および index_patterns に対応するタグ値には、完全なインデックス名とインデックス名のワイルドカードがサポートされています。バルクリクエストに書き込むことができるデータ量の調整を構成するために使用されるコードは、aliyun-qosプラグインのバージョンによって異なります。次の表に、異なるバージョンのaliyun-qosプラグインに使用できるコードを示します。

Elasticsearch V7.10クラスターにインストールされているプラグインの最新バージョンのコード

他のバージョンのElasticsearchクラスターにインストールされているプラグインのコード

PUT /_qos/limiter/<limiterName>
{
  "limiters": {
    "write.max_size_per_request": "1000"
  },
  "tags": {
    "index": "nginx-log-*"
  }
}
PUT _qos/_ratelimit/<limiterName>
{
   "bulk.index_patterns": "nginx-log-*",
   "bulk.max_request_size_in_bytes" : 1000
}
説明

調整をトリガーするために複数のルールを定義できます。リクエストがいずれかのルールにヒットすると、調整がトリガーされます。

クライアントを使用してElasticsearchクラスターにデータを書き込む場合、またはKibanaコンソールでデータを書き込む場合に、バルクリクエストに書き込むバイト数が、クラスターにインストールされているaliyun-qosプラグインで構成した調整しきい値を超えると、システムは次のいずれかのエラーメッセージを報告します。この場合、エラーメッセージに基づいて、バルクリクエストに書き込むバイト数を減らす必要があります。報告されるエラーメッセージは、aliyun-qosプラグインのバージョンによって異なります。

  • Elasticsearch V7.10クラスターにインストールされているプラグインの最新バージョンのコード

    {
      "error" : {
        "root_cause" : [
          {
            "type" : "status_exception",
            "reason" : "write_size blocked, limited by [<limiterName>][write.max_size_per_request](<limiterId>) threshold:[x] try acquire [x]"
          }
        ],
        "type" : "status_exception",
        "reason" : "write_size blocked, limited by [<limiterName>][write.max_size_per_request](<limiterId>) threshold:[x] try acquire [x]"
      },
      "status" : 400
    }
  • 他のバージョンのElasticsearchクラスターにインストールされているプラグインのコード

    {
      "error": {
        "root_cause": [
          {
            "type": "rate_limited_exception",
            "reason": "request indices:data/write/bulk rejected, limited by [b2:ByteSizePreSeconds:992.0]"
          }
        ],
        "type": "rate_limited_exception",
        "reason": "request indices:data/write/bulk rejected, limited by [b2:ByteSizePreSeconds:992.0]"
      },
      "status": 413
    }

プライマリまたはレプリカシャードの数をクエリするために使用される同時スレッド数の調整を構成する

プライマリまたはレプリカシャードの数をクエリするために使用される同時スレッド数のしきい値を指定して、Elasticsearchクラスターの負荷を軽減できます。タグキー index および index_patterns に対応するタグ値には、完全なインデックス名とインデックス名のワイルドカードがサポートされています。プライマリまたはレプリカシャードの数をクエリするために使用される同時スレッド数の調整を構成するために使用されるコードは、aliyun-qosプラグインのバージョンによって異なります。次の表に、異なるバージョンのaliyun-qosプラグインに使用できるコードを示します。

Elasticsearch V7.10クラスターにインストールされているプラグインの最新バージョンのコード

他のバージョンのElasticsearchクラスターにインストールされているプラグインのコード

PUT /_qos/limiter/<limiterName>
{
  "limiters": {
    "search_shards.concurrent_count": "10"
  },
  "tags": {
    "index": "nginx-log-*"
  }
}

サポートされていません

説明

調整をトリガーするために複数のルールを定義できます。リクエストがいずれかのルールにヒットすると、調整がトリガーされます。

リミッターに一度に複数の設定を構成する

リミッターに一度に複数の設定を構成できます。タグキー index および index_patterns に対応するタグ値には、完全なインデックス名とインデックス名のワイルドカードがサポートされています。リミッターに一度に複数の設定を構成するために使用されるコードは、aliyun-qosプラグインのバージョンによって異なります。次の表に、異なるバージョンのaliyun-qosプラグインに使用できるコードを示します。

Elasticsearch V7.10クラスターにインストールされているプラグインの最新バージョンのコード

他のバージョンのElasticsearchクラスターにインストールされているプラグインのコード

PUT /_qos/limiter/<limiterName>
{
  "limiters": {
    "search.qps": "1000",
    "write.tps": "100000",
    "write.throughput": "1000000",
    "write.max_size_per_request": "1000",
    "search_shards.concurrent_count": "10"
  },
  "tags": {
    "index": "nginx-log-*"
  }
}

サポートされていません

説明

調整をトリガーするために複数のルールを定義できます。リクエストがいずれかのルールにヒットすると、調整がトリガーされます。

リミッターをクエリする

リミッターをクエリするために使用されるコードは、aliyun-qosプラグインのバージョンによって異なります。次の表に、異なるバージョンのaliyun-qosプラグインに使用できるコードを示します。

操作

Elasticsearch V7.10クラスターにインストールされているプラグインの最新バージョンのコード

他のバージョンのElasticsearchクラスターにインストールされているプラグインのコード

すべてのリミッターをクエリする

GET _qos/limiter
GET _qos/_ratelimit

特定のリミッターをクエリする

GET _qos/limiter/<limiterName>
GET _qos/_ratelimit/<limiterName>

複数のリミッターをクエリする

説明

複数のリミッター名はコンマ(,)で区切ります。ワイルドカードはサポートされていません。

GET _qos/limiter/<limiterName1,limiterName2>
GET _qos/_ratelimit/<limiterName1,limiterName2>

リミッターを削除する

リミッターを削除するために使用されるコードは、aliyun-qosプラグインのバージョンによって異なります。次の表に、異なるバージョンのaliyun-qosプラグインに使用できるコードを示します。

操作

Elasticsearch V7.10クラスターにインストールされているプラグインの最新バージョンのコード

他のバージョンのElasticsearchクラスターにインストールされているプラグインのコード

特定のリミッターを削除する

DELETE _qos/limiter/<limiterName>
DELETE _qos/_ratelimit/<limiterName>

複数のリミッターを削除する

説明

複数のリミッター名はコンマ(,)で区切ります。ワイルドカードはサポートされていません。

DELETE _qos/limiter/<limiterName1,limiterName2>
DELETE _qos/_ratelimit/<limiterName1,limiterName2>

FAQ

Q:調整関連メトリックの監視データを取得するにはどうすればよいですか?

A:次の API を使用できます。

  • 現在の監視データを取得する

    • すべてのメトリックの現在の監視データを取得する

      GET /_qos/limiter/nodes/stats
    • 特定のノードのメトリックの現在の監視データを取得する

      GET /_qos/limiter/nodes/{nodeId}/stats
    • 特定のノードとリミッターのメトリックの現在の監視データを取得する

      GET /_qos/limiter/nodes/{nodeId}/stats/{limiterIds}
  • 履歴監視データを取得する

    • すべてのメトリックの履歴監視データを取得する

      GET /_qos/limiter/metric
    • 特定のリミッターのメトリックの履歴監視データを取得する

      GET /_qos/limiter/metric/{limiterId}