Worker Managers¶
Worker managers handle the provisioning and destruction of worker resources. They bridge Scaler’s scaling policies and the underlying infrastructure — local processes, cloud instances, or container orchestrators.
Note
For more details on Scaler configuration, see Commands.
Note
By default, the scheduler starts with the no scaling policy, meaning no workers are provisioned automatically. To enable auto-scaling, pass --policy-content (-pc) to the scheduler.
Enabling Auto-Scaling¶
Configure the scheduler with a scaling policy, then start a worker manager:
# Terminal 1 — Scheduler
scaler_scheduler tcp://127.0.0.1:8516 -pc "allocate=even_load; scaling=vanilla"
# Terminal 2 — Worker Manager (e.g., Baremetal Native)
scaler_worker_manager baremetal_native tcp://127.0.0.1:8516 --max-task-concurrency 8
The vanilla policy automatically scales workers up and down based on the task-to-worker ratio. For available policies and their parameters, see Scaling Policies.
Worker Managers Overview¶
Worker Manager |
Description |
Scaling |
Infrastructure |
|---|---|---|---|
Runs each task as an AWS Batch job on managed EC2 compute. |
Concurrency-limited |
AWS Batch + S3 |
|
Dynamically provisions workers on AWS EC2 instances using the ORB system. |
Dynamic (scheduler-driven) |
AWS EC2 |
|
Offloads tasks to IBM Spectrum Symphony via the SOAM API. |
Concurrency-limited |
IBM Symphony |
|
Provisions full Scaler worker processes as Fargate tasks. |
Dynamic (scheduler-driven) |
AWS ECS Fargate |
|
Spawns workers as local subprocesses. The simplest worker manager and the recommended starting point. |
Dynamic or fixed |
Local machine |
Although worker managers target different infrastructures, many configuration options are shared. See Common Worker Manager Parameters for these shared settings.
Unified Entry Points¶
The scaler_worker_manager command provides a single entry point for all worker managers. The scaler command boots the full stack from a single TOML config file.