Circuit Breaker Thresholds
Summary
In Pomerium requests will automatically fail when circuit breaker thresholds are reached. The following thresholds are available:
- Max Connections: The maximum number of connections that Pomerium will establish to all hosts in a route's upstream cluster. Default is
1024
. - Max Pending Requests: The maximum number of requests that will be queued while waiting for a ready connection pool connection. Default is
1024
. - Max Requests: The maximum number of requests that can be outstanding to all route upstream hosts in a cluster at any given time. Default is
1024
. - Max Retries: The maximum number of retries that can be outstanding to all hosts in a route upstream cluster at any given time. Default is
3
. At this time Pomerium does not enable retries for any requests, though this may change in the future. - Max Connection Pools: The maximum number of connection pools that can be concurrently instantiated. Default is unlimited.
Thresholds can be set at the global level or the individual route level. Each threshold is optional.
How to Configure
- Core
- Enterprise
- Kubernetes
Config file keys | Environment variables | Type | Usage |
---|---|---|---|
circuit_breaker_thresholds | CIRCUIT_BREAKER_THRESHOLDS | object | optional |
Available Thresholds
max_connections
max_pending_requests
max_requests
max_retries
max_connection_pools
Examples
circuit_breaker_thresholds:
max_connections: 128
CIRCUIT_BREAKER_THRESHOLDS='{"max_connections":128}'
Low Values may Break Installation
Circuit breaker thresholds are a dangerous configuration setting. When set to low values, Pomerium may no longer be able to serve requests to the Enterprise Console itself resulting in a broken installation that can't easily be fixed.
Set the circuit breaker thresholds under Proxy settings in the Console:
Parameter name | Type | Usage |
---|---|---|
circuitBreakerThresholds | Object | optional |
Available Thresholds
maxConnections
maxPendingRequests
maxRequests
maxRetries
maxConnectionPools
Examples
circuitBreakerThresholds:
maxConnections: 128