Overview¶
Architecture¶
Below is a diagram of the relationship between multiple Clients, the Scheduler, Worker Managers, and Workers.
Multiple clients can submit tasks to the same scheduler concurrently.
The client is responsible for serializing tasks and arguments.
Multiple worker managers can connect to the same scheduler and provision capacity in parallel.
Worker managers spawn workers, and workers connect directly to the scheduler.
The scheduler dispatches tasks to connected workers, and workers execute tasks and return results.
Key Features¶
Cross-cloud computing with a unified single-client API
Easily spawn clusters on a local machine or in the cloud
Python
multiprocessing-style client API, for exampleclient.map(),client.starmap(), andclient.submit().Graph tasks for DAG-based execution with explicit dependencies use
client.get().Both CLI and WebUI monitoring dashboards for real-time worker and task visibility.
Task profiling for runtime and resource diagnostics.
For code API examples and client patterns, see Scaler Client.
Start Services¶
Scaler supports multiple service startup patterns. Choose the one that matches your deployment style:
Local bundled services in Python (fixed workers): use
SchedulerClusterComboto start object storage, scheduler, and a fixed-size local worker pool in one Python flow. See Baremetal Native Worker Manager.Local elastic workers managed by a worker manager: run scheduler +
baremetal_nativeworker manager in dynamic mode and let scheduler policies scale workers up/down. See Quickstart, Worker Managers, and Policy Engine.Remote elastic workers managed by cloud worker managers: keep the scheduler on one machine and attach one or more remote managers (for example,
aws_raw_ecs,aws_hpc,orb_aws_ec2,symphony). See Worker Managers.Fully separated services: start object storage server, scheduler, and one or more worker managers as independent processes (possibly on different machines). See scaler_object_storage_server, scaler_scheduler, and scaler_worker_manager.
Single TOML launcher: use scaler to start scheduler and one or more worker managers from one configuration file.