Kong Manager でコンシューマグループを作成
コンシューマグループを使用すると、必要な数の流量制限ティアを定義して、コンシューマのサブセットに適用できるため、コンシューマを個別に管理する必要がありません。
たとえば、次の3つのコンシューマグループを定義できます。
- 毎分1000リクエストの「ゴールドティア」
- 毎秒10リクエストの「シルバーティア」
- 30秒あたり6リクエストの「ブロンズレベル」
consumer_groups
エンドポイントは、限られたプラグインのセットと連携して動作します。詳細については、スコープの互換性表を参照してください。
コンシューマグループに属していないコンシューマは、デフォルトでRate Limiting Advancedプラグインの設定に従うため、一部のユーザーの階層グループを定義し、グループに属さないコンシューマに対してはデフォルトの動作を設定できます。
コンシューマグループを使用して流量制限するには、以下を行う必要があります。
- 1つ以上のコンシューマグループを作成する
- コンシューマを作成します
- コンシューマをグループに割り当てる
-
enforce_consumer_groups
およびconsumer_groups
パラメータを使用して Rate Limiting Advancedプラグインをグローバルに設定し、プラグインが受け入れるコンシューマグループの リストを設定します。 - 各コンシューマグループに流量制限ポリシーを設定し、プラグインの グローバル構成を上書きします。
すべてのリクエストについては、 消費者グループのリファレンス。
コンシューマを含むコンシューマグループの設定
このセクションでは、そのグループに割り当てられたコンシューマがいるブロンズティアのコンシューマグループを作成します。
- デフォルト のワークスペースを開きます。
- メニューから コンシューマ を開き、 グループ タブをクリックします。
- 新しいコンシューマグループ をクリックします。
- コンシューマグループ名として
Bronze
を入力し、 作成 をクリックします。 - メニューの コンシューマ をクリックし、 新規コンシューマ をクリックします。
-
ユーザー名 と カスタム ID を入力します。この例では、各フィールドに
Amal
を使用できます。 - 作成 をクリックします。
- メニューから グループ タブをクリックします。
- 作成した
Bronze
コンシューマグループをクリックします。 -
コンシューマ と コンシューマを追加 をクリックして、作成した
Amal
コンシューマをBronze
コンシューマグループに追加します。
すべてのコンシューマに対してRate Limiting Advancedプラグインを構成
このセクションでは、Rate Limiting Advancedプラグインを構成して、すべてのコンシューマを対象に30秒あたり5リクエストに流量制限を設定します。
-
デフォルト のワークスペースを開きます。
-
メニューから プラグイン を開き、 プラグインのインストール をクリックします。
-
Rate Limiting プラグインを見つけて、 有効にする をクリックします。
-
プラグインを グローバル として適用すると、流量制限はワークスペース内のすべてのサービスとルートを含むすべてのリクエストに適用されます。
Scoped に切り替えると、流量制限はプラグインを1つのサービス、ルート、またはコンシューマだけに適用します。
デフォルトでは、フォームが送信されるとプラグインは自動的に有効になります。また、 このプラグインは有効になっています ボタンを切り替えて、プラグインを有効にせずに構成することもできます。この例では、プラグインを有効のままにします。
-
次のフィールドのみに、次のパラメータを入力します。
- config.limit:
5
- config.window_size:
30
- config.window_type:
sliding
- config.retry_after_jitter_max:
0
- config.enforce_consumer_groups:
true
- config.consumer_groups:
Bronze
上記のフィールド以外にも、デフォルト値が設定されているフィールドが存在する場合があります。この例では、残りのフィールドはそのままにしておきます。
- config.limit:
-
インストール をクリックします。
コンシューマグループの流量制限の構成
このセクションでは、Rate Limiting Advanced プラグインを構成して、ブロンズティアのコンシューマのみを対象に、30 秒あたり 6 リクエストに流量制限を設定します。
- デフォルト のワークスペースを開きます。
- メニューから コンシューマ を開き、 グループ タブをクリックします。
- 作成した
Bronze
コンシューマグループをクリックします。 - Policy タブをクリックします。
- 次のパラメータを使用して、次のフィールドのみを入力してください。
- config.limit:
6
- config.window_size:
30
- config.window_type:
sliding
- config.retry_after_jitter_max:
0
- config.limit:
- 保存 をクリックします。