This document explains how you can use environment load balancing to help
maintain platform stability and ensure fair resource distribution, especially in
multi-tenant environments. It aims to prevent any single, heavy-loaded
environment from consuming excessive system resources over a short period of
time.
To ensure balanced resource allocation across the platform, a lottery
algorithm randomly selects environments.
Administrators can also prioritize certain environments by assigning them
higher weights in the lottery algorithm, ensuring that they receive sufficient
resources even during periods of high load.
Configure environment load balancing
The APIs in this document are categorized by their migration status:
Legacy API endpoints: used by environments that have not yet migrated.
Chronicle API endpoints: used by environments after migration.
Environment load balancing and its settings are managed through the REST
API endpoints described in this document. While some existing APIs
transitioning to new Chronicle API endpoints, some legacy endpoints remain
available. Administrative users must use these APIs to enable and configure
environment load balancing, at a
basic or
advanced configuration level.
Once enabled, the system uses a lottery algorithm to allocate resources.
Each active environment receives tickets. By default, all environments receive
an equal number of tickets. The system randomly selects winning tickets, and
the corresponding environments are granted access to system resources for task
processing.
This randomized approach ensures fair and balanced resource distribution
across all environments.
Basic configuration: enable or disable
environment load balancing
The API for enabling or disabling environment load balancing is a legacy
endpoint. To enable or disable this feature, use the following API:
POST /api/external/v1/settings/toggle-environment-load-balancing
Advanced configuration: environment weights and
prioritization
Use the following APIs to manage the weights assigned to individual
environments. Chronicle API endpoints are available and recommended for the
following operations.
Chronicle API endpoints (recommended)
Use these APIs for managing environment weights:
To reset the weights of all environments to their default:
POST /projects/{project}/locations/{location}/instances/{instance}/environments:resetWeights
To view the weight of all environments:
GET /projects/{project}/locations/{location}/instances/{instance}/environments
To view the weight of a specific environment:
GET /projects/{project}/locations/{location}/instances/{instance}/environments/{environment}
To set the weight of a specific environment, replace
{environment} with the environment_ID, and adjust the
weight value in the request body:
To reset the weights of all environments to their default (equal weight), use the following API:
POST /api/external/v1/settings/reset-environment-priorities
To view the weight of all environments, use the following API:
GET /api/external/v1/settings/environment-priorities
To view the weight of a specific environment, replace {environment} with the environment_ID, and use the following API:
GET /api/external/v1/settings/environment-priorities/{environment}
To set the weight of a specific environment, replace {environment} with the environment_ID, update the weight value in the request body, and use the following API:
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-29 UTC."],[],[],null,["# Manage environment load balancing\n=================================\n\nSupported in: \nGoogle secops [SOAR](/chronicle/docs/secops/google-secops-soar-toc) \n\nThis document explains how you can use environment load balancing to help\nmaintain platform stability and ensure fair resource distribution, especially in\nmulti-tenant environments. It aims to prevent any single, heavy-loaded\nenvironment from consuming excessive system resources over a short period of\ntime.\n\nTo ensure balanced resource allocation across the platform, a lottery\nalgorithm randomly selects environments.\n\nAdministrators can also prioritize certain environments by assigning them\nhigher weights in the lottery algorithm, ensuring that they receive sufficient\nresources even during periods of high load.\n\nConfigure environment load balancing\n------------------------------------\n\nThe APIs in this document are categorized by their migration status:\n\n- **Legacy API endpoints**: used by environments that have not yet migrated.\n- **Chronicle API endpoints**: used by environments after migration.\n\nFor more information on the migration, see\n[Migrate to Google Cloud](/chronicle/docs/soar/admin-tasks/advanced/migrate-to-gcp).\n\nEnvironment load balancing and its settings are managed through the REST\nAPI endpoints described in this document. While some existing APIs\ntransitioning to new Chronicle API endpoints, some legacy endpoints remain\navailable. Administrative users must use these APIs to enable and configure\nenvironment load balancing, at a\n[basic](#basic-configuration) or\n[advanced](#advanced-configuration) configuration level.\n\nOnce enabled, the system uses a lottery algorithm to allocate resources.\nEach active environment receives tickets. By default, all environments receive\nan equal number of tickets. The system randomly selects winning tickets, and\nthe corresponding environments are granted access to system resources for task\nprocessing.\n\nThis randomized approach ensures fair and balanced resource distribution\nacross all environments.\n\n### Basic configuration: enable or disable\nenvironment load balancing\n\nThe API for enabling or disabling environment load balancing is a legacy\nendpoint. To enable or disable this feature, use the following API: \n\n POST /api/external/v1/settings/toggle-environment-load-balancing\n\n### Advanced configuration: environment weights and\nprioritization\n\nUse the following APIs to manage the weights assigned to individual\nenvironments. Chronicle API endpoints are available and recommended for the\nfollowing operations.\n\n#### Chronicle API endpoints (recommended)\n\nUse these APIs for managing environment weights:\n\n- To reset the weights of all environments to their default: \n\n POST /projects/{project}/locations/{location}/instances/{instance}/environments:resetWeights\n\n- To view the weight of all environments: \n\n GET /projects/{project}/locations/{location}/instances/{instance}/environments\n\n- To view the weight of a specific environment: \n\n GET /projects/{project}/locations/{location}/instances/{instance}/environments/{environment}\n\n- To set the weight of a specific environment, replace `{environment}` with the `environment_ID`, and adjust the `weight` value in the request body: \n\n PATCH /projects/{project}/locations/{location}/instances/{instance}/environments/{environment}\n\n Request Body example: \n\n\n {\n \"weight\": 5\n }\n\n#### Legacy API endpoints (deprecated)\n\n- To reset the weights of all environments to their default (equal weight), use the following API: \n\n POST /api/external/v1/settings/reset-environment-priorities\n\n- To view the weight of all environments, use the following API: \n\n GET /api/external/v1/settings/environment-priorities\n\n- To view the weight of a specific environment, replace `{environment}` with the `environment_ID`, and use the following API: \n\n GET /api/external/v1/settings/environment-priorities/{environment}\n\n- To set the weight of a specific environment, replace `{environment}` with the `environment_ID`, update the `weight` value in the request body, and use the following API: \n\n PATCH /api/external/v1/settings/environment-priorities/{environment}\n\n Request Body example: \n\n\n {\n \"weight\": 3\n }\n\n**Need more help?** [Get answers from Community members and Google SecOps professionals.](https://security.googlecloudcommunity.com/google-security-operations-2)"]]