This document explains how you can use environment load balancing to help
maintain platform stability and secure 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.
The system uses a lottery algorithm to randomly select environments for resource allocation. Each active environment receives a number of tickets, and the system randomly selects winning tickets to process tasks. By default, all environments receive an equal number of tickets, but administrators can assign higher weights to certain environments to prioritize them.
Configure environment load balancing
Environment load balancing is managed through REST API endpoints. Some existing APIs are transitioning to new Chronicle API endpoints, but some Legacy API endpoints are still available. Administrative users must use these APIs to enable and configure load balancing at a basic or advanced configuration level.
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
You can enable or disable environment load balancing using the following legacy API endpoint:
POST /api/external/v1/settings/toggle-environment-load-balancing
Advanced configuration
The following APIs are used to manage the weights assigned to individual environments:
Chronicle API endpoints (recommended)
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-09-04 UTC."],[],[],null,["Manage environment load balancing \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 secure 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\nThe system uses a lottery algorithm to randomly select environments for resource allocation. Each active environment receives a number of tickets, and the system randomly selects winning tickets to process tasks. By default, all environments receive an equal number of tickets, but administrators can assign higher weights to certain environments to prioritize them.\n\nConfigure environment load balancing\n\nEnvironment load balancing is managed through REST API endpoints. Some existing APIs are transitioning to new Chronicle API endpoints, but some Legacy API endpoints are still available. Administrative users must use these APIs to enable and configure load balancing at a [basic](#basic-configuration) or [advanced](#advanced-configuration) configuration level.\n\nFor more information about 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\nBasic configuration\n\nYou can enable or disable environment load balancing using the following legacy API endpoint: \n\n POST /api/external/v1/settings/toggle-environment-load-balancing\n\nAdvanced configuration\n\nThe following APIs are used to manage the weights assigned to individual environments:\n\nChronicle API endpoints (recommended)\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\nLegacy 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)"]]