This page lists the Scaler service configuration variables. Defaults reflect the current ICC implementation.
These settings apply to both scaler versions.
| Variable | Default | Description |
|---|
PLT_SCALER_ALGORITHM_VERSION | v1 | Selects v1 reactive scaling or v2 predictive scaling. V2 is Enterprise-only. |
PLT_SCALER_SCALING_DISABLED | false | Prevents the scaler from changing controller replicas. |
PLT_SCALER_MIN_PODS_DEFAULT | 1 | Default application minimum when no stored limit exists. |
PLT_SCALER_MAX_PODS_DEFAULT | 10 | Default application maximum when no stored limit exists. |
PLT_SCALER_SYNC_K8S | 60 | Controller and label synchronization interval, in seconds. |
PLT_SCALER_POD_MIN_LABEL | icc.platformatic.dev/scaler-min | Controller label containing the application minimum. |
PLT_SCALER_POD_MIN_DEFAULT_VALUE | 1 | Minimum used during label synchronization when only the maximum label is provided and no stored minimum exists. |
PLT_SCALER_POD_MAX_LABEL | icc.platformatic.dev/scaler-max | Controller label containing the application maximum. |
PLT_SCALER_POD_MAX_DEFAULT_VALUE | 10 | Maximum used during label synchronization when only the minimum label is provided and no stored maximum exists. |
See Scaling Limits for application-level configuration.
| Variable | Default | Description |
|---|
PLT_ICC_VALKEY_CONNECTION_STRING | Required | Valkey connection used for scaler state, cooldowns, signals, and scheduled limits. |
PLT_MACHINIST_URL | Required | Machinist service used to read and update application controllers. |
PLT_MACHINIST_PROVIDER | k8s | Infrastructure provider prefix used by the Machinist client. |
PLT_METRICS_PROMETHEUS_URL | None | Prometheus endpoint used by V1 and scaling-event metric views. |
| Variable | Default | Description |
|---|
PLT_METRICS_TIME_RANGE | 60 | Prometheus history window used for application metrics, in seconds. |
PLT_SCALER_DEBOUNCE | 10000 | Alert debounce interval, in milliseconds. |
PLT_SCALER_MAX_HISTORY | 10 | Maximum recent scaling events retained per application. |
PLT_SCALER_MAX_CLUSTERS | 5 | Maximum performance-history clusters retained per application. |
PLT_SCALER_ELU_THRESHOLD | 0.8 | ELU threshold used by the current V1 executor. |
PLT_SCALER_HEAP_THRESHOLD | 0.85 | Heap-utilization threshold. |
PLT_SCALER_POST_EVAL_WINDOW | 300 | Delay before evaluating a scaling result, in seconds. |
PLT_SCALER_COOLDOWN | 15 | Scale-up cooldown, in seconds. The scale-down cooldown is derived from this value. |
PLT_SCALER_PERIODIC_TRIGGER | 60 | Periodic metrics evaluation interval, in seconds. |
The following settings are used only when PLT_SCALER_ALGORITHM_VERSION=v2.
| Variable | Default | Description |
|---|
PLT_SCALER_DASHBOARD_API_ENABLED | false | Includes additional prediction-debug fields in the dashboard API. |
PLT_SIGNALS_SCALER_RECONNECT_TIMEOUT_MS | 5000 | Grace period before treating a disconnected runtime as terminated. |
PLT_SIGNALS_SCALER_READINESS_DELAY_MS | 10000 | Readiness-probe interval allowance used when estimating when traffic reaches a new instance. |
PLT_SIGNALS_SCALER_HORIZONTAL_TREND_THRESHOLD | 0.2 | Normalized trend angle, in degrees, below which a trend is considered horizontal. |
PLT_SIGNALS_SCALER_PENDING_SCALE_UP_EXPIRY_MS | 60000 | Lifetime of a pending scale-up record. |
PLT_SIGNALS_SCALER_REDEPLOY_TIMEOUT_MS | 120000 | Window used to recognize a deployment replacement rather than a scaler action. |
PLT_SIGNALS_SCALER_INIT_TIMEOUT_MS | 30000 | Initial instance startup-time estimate. |
PLT_SIGNALS_SCALER_HORIZON_MULTIPLIER | 1.2 | Safety multiplier applied to the learned startup time. |
PLT_SIGNALS_SCALER_MIN_HORIZON_MS | 25000 | Minimum prediction horizon. |
PLT_SIGNALS_SCALER_MAX_HORIZON_MS | 40000 | Maximum prediction horizon. |
| Variable | Default | Description |
|---|
PLT_SIGNALS_SCALER_INIT_TIMEOUT_WINDOW_SIZE | 5 | Number of recent observed startup times used for the median target. |
PLT_SIGNALS_SCALER_INIT_TIMEOUT_STEP_RATE | 0.1 | Maximum proportional change applied in one update. |
PLT_SIGNALS_SCALER_INIT_TIMEOUT_UP_FACTOR | 1.5 | Multiplier allowing startup estimates to increase faster. |
PLT_SIGNALS_SCALER_INIT_TIMEOUT_DOWN_FACTOR | 1.0 | Multiplier controlling decreases in the startup estimate. |
| Variable | Default | Description |
|---|
PLT_SIGNALS_SCALER_SCALE_UP_K | 1.5 | Dampening coefficient applied to forecast growth during scale-up calculation. |
PLT_SIGNALS_SCALER_SCALE_UP_MARGIN | 0.1 | Additional scale-up margin used when forecast capacity is slightly over an instance boundary. |
PLT_SIGNALS_SCALER_SCALE_DOWN_MARGIN | 0.3 | Spare-capacity margin retained during scale-down. |
PLT_SIGNALS_SCALER_LIVE_METRIC_COUNT | 3 | Most recent raw samples per worker used for the live metric. |
PLT_SIGNALS_SCALER_MAX_SCALE_UP_STEP | 4 | Maximum instances added by a single V2 decision. |
PLT_SIGNALS_SCALER_PROCESSING_INIT_TIMEOUT_MS | 1000 | Delay before processing the first pending signal batch. |
PLT_SIGNALS_SCALER_PROCESSING_COOLDOWN_MS | 10000 | Delay before processing another pending batch after a decision cycle. |
PLT_SIGNALS_SCALER_INSTANCES_WINDOW_MS | 180000 | Runtime lifecycle history retained for reconstruction and deployment detection. |
| Variable | Default | Description |
|---|
PLT_SIGNALS_SCALER_COOLDOWN_SCALE_UP_AFTER_SCALE_UP_MS | 5000 | Scale-up delay after a scale-up. |
PLT_SIGNALS_SCALER_COOLDOWN_SCALE_UP_AFTER_SCALE_DOWN_MS | 5000 | Scale-up delay after a scale-down. |
PLT_SIGNALS_SCALER_COOLDOWN_SCALE_DOWN_AFTER_SCALE_UP_MS | 180000 | Scale-down delay after a scale-up. |
PLT_SIGNALS_SCALER_COOLDOWN_SCALE_DOWN_AFTER_SCALE_DOWN_MS | 60000 | Scale-down delay after a scale-down. |
| Variable | Default | Description |
|---|
PLT_SIGNALS_SCALER_ELU_WINDOW_MS | 90000 | ELU history window used for reconstruction and forecasting. |
PLT_SIGNALS_SCALER_ELU_SAMPLE_INTERVAL | 1000 | ELU alignment interval. |
PLT_SIGNALS_SCALER_ELU_REDISTRIBUTION_MS | 30000 | Period over which a new instance’s ELU contribution is introduced. |
PLT_SIGNALS_SCALER_ELU_ALPHA_UP | 0.2 | Holt level smoothing factor when ELU is above the forecast. |
PLT_SIGNALS_SCALER_ELU_ALPHA_DOWN | 0.1 | Holt level smoothing factor when ELU is below the forecast. |
PLT_SIGNALS_SCALER_ELU_BETA_UP | 0.12 | Holt trend smoothing factor when ELU is above the forecast. |
PLT_SIGNALS_SCALER_ELU_BETA_DOWN | 0.1 | Holt trend smoothing factor when ELU is below the forecast. |
| Variable | Default | Description |
|---|
PLT_SIGNALS_SCALER_HEAP_WINDOW_MS | 90000 | Heap history window used for reconstruction and forecasting. |
PLT_SIGNALS_SCALER_HEAP_SAMPLE_INTERVAL | 1000 | Heap alignment interval. |
PLT_SIGNALS_SCALER_HEAP_REDISTRIBUTION_MS | 30000 | Period over which a new instance’s heap contribution is introduced. |
PLT_SIGNALS_SCALER_HEAP_ALPHA_UP | 0.2 | Holt level smoothing factor when heap is above the forecast. |
PLT_SIGNALS_SCALER_HEAP_ALPHA_DOWN | 0.1 | Holt level smoothing factor when heap is below the forecast. |
PLT_SIGNALS_SCALER_HEAP_BETA_UP | 0.12 | Holt trend smoothing factor when heap is above the forecast. |
PLT_SIGNALS_SCALER_HEAP_BETA_DOWN | 0.1 | Holt trend smoothing factor when heap is below the forecast. |
PLT_SIGNALS_SCALER_VALKEY_KEY_PREFIX | scaler: | Prefix for V2 state stored in Valkey. |
V2 thresholds are supplied with the per-service runtime signals rather than configured through a global Scaler environment variable.
Planner settings apply only to V2 Enterprise deployments.
| Variable | Default | Description |
|---|
PLT_SCALER_SCHEDULER_ENABLED | true | Enables application of accepted suggestions and custom schedules. |
PLT_SCALER_SCHEDULER_TICK_MINUTES | 1 | Interval for evaluating active scheduled windows. |
PLT_SCALER_TIME_SLOT_MINUTES | 5 | Collection interval for raw required/actual instance statistics. Must divide 60 evenly. |
PLT_SCALER_TIME_SLOT_TIMEZONE | UTC | Cluster calendar timezone used for history, predictions, and plan rebuilding. |
PLT_SCALER_TIME_WINDOW_MINUTES | 60 | Planner aggregation and scheduling window. Must be a multiple of the slot and divide 1440. |
PLT_SCALER_PATTERN_PERCENTILE | p50 | Time-weighted percentile selected from each slot for pattern learning. |
PLT_SCALER_PATTERN_PREDICTION_DAYS | 60 | Number of future days generated by the Planner. |
PLT_SCALER_SUGGESTION_OCCURRENCES_LIMIT | 14 | Maximum past occurrences shown as evidence for a suggestion. |
PLT_SCALER_WINDOW_CATEGORIES | 5 | Number of relative capacity categories displayed in the Planner. Must be an odd integer of at least 3. |
PLT_SCALER_WINDOW_MIN_PODS | 3 | Minimum category width in instances. |
PLT_SCALER_WINDOW_MIN_FRACTION | 0.1 | Minimum category width as a fraction of the application’s capacity range. |