環境のロード バランシングを管理する
このドキュメントでは、環境ロード バランシングを使用して、特にマルチテナント環境でプラットフォームの安定性を維持し、リソースの公平な分配を確保する方法について説明します。これは、負荷の高い単一の環境が短期間に過剰なシステム リソースを消費することを防ぐことを目的としています。
システムは、リソース割り当ての環境をランダムに選択するために、抽選アルゴリズムを使用します。アクティブな環境ごとにチケットが割り当てられ、システムはランダムに当選チケットを選択してタスクを処理します。デフォルトでは、すべての環境に同じ数のチケットが割り当てられますが、管理者は特定の環境に高い重みを割り当てて優先順位を付けることができます。
環境ロード バランシングを構成する
有効にすると、システムは抽選アルゴリズムを使用してリソースを割り当てます。アクティブな環境ごとにチケットが発行されます。デフォルトでは、すべての環境に同じ数のチケットが割り当てられます。システムは当選チケットをランダムに選択し、対応する環境にタスク処理用のシステム リソースへのアクセス権が付与されます。
このランダム化されたアプローチにより、すべての環境でリソースが公平かつバランスよく分散されます。
基本的な構成
次の以前の API エンドポイントを使用して、環境のロード バランシングを有効または無効にできます。
POST /api/external/v1/settings/toggle-environment-load-balancing
詳細構成
次の API は、個々の環境に割り当てられた重みを管理するために使用されます。
Chronicle API エンドポイント(推奨)
- すべての環境の重みをデフォルトにリセットするには:
POST /projects/{project}/locations/{location}/instances/{instance}/environments:resetWeights
- すべての環境の重みを表示するには:
GET /projects/{project}/locations/{location}/instances/{instance}/environments
- 特定の環境の重みを表示するには:
GET /projects/{project}/locations/{location}/instances/{instance}/environments/{environment}
- 特定の環境の重みを設定するには、
{environment}
をenvironment_ID
に置き換え、リクエスト本文のweight
値を調整します。PATCH /projects/{project}/locations/{location}/instances/{instance}/environments/{environment}
リクエスト本文の例:
{ "weight": 5 }
以前の API エンドポイント(非推奨)
- すべての環境の重みをデフォルト(等しい重み)にリセットするには、次の API を使用します。
POST /api/external/v1/settings/reset-environment-priorities
- すべての環境の重みを表示するには、次の API を使用します。
GET /api/external/v1/settings/environment-priorities
- 特定の環境の重みを表示するには、
{environment}
をenvironment_ID
に置き換えて、次の API を使用します。GET /api/external/v1/settings/environment-priorities/{environment}
- 特定の環境の重みを設定するには、
{environment}
をenvironment_ID
に置き換え、リクエスト本文のweight
値を更新して、次の API を使用します。PATCH /api/external/v1/settings/environment-priorities/{environment}
リクエスト本文の例:
{ "weight": 3 }
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。