Idea #13908


[Epic] Replace SLURM for cloud job scheduling/dispatching

Added by Tom Morris almost 6 years ago. Updated over 3 years ago.

Assigned To:
Target version:
Start date:
Due date:
Story points:


See Dispatching containers to cloud VMs

Outstanding TODOs not covered by a linked ticket:
  • Integration test that uses a loopback driver to execute crunch-run on localhost (this verifies the interface between dispatcher and crunch-run)
  • Add tests for activity/resource usage metrics
  • Performance metrics for dispatching (e.g., time between seeing a container in the queue and starting its crunch-run process on a worker), see Dispatching containers to cloud VMs
  • Cloud behavior metrics: count unexpected shutdowns, split by instance type
  • Configurable spending limits
  • Update runtime_status field when cancelling containers after crunch-run crashes or the cloud VM dies without finalizing the container (already done for the “no suitable instance type” case)
  • (API) Allow admin users to specify image ID in runtime_constraints; (dispatcher) if present, use runtime_constraints image ID instead of image ID from cluster config file
  • Run crunch-run as a non-root user
  • Don't require root at all on the cloud instance
Outstanding TODO-or-maybe-not-TODOs not covered by a linked ticket:
  • Periodic status reports in logs. This kind of logging should normally (always?) be handled by an external monitoring system that connects to the existing metrics endpoint.
  • Cancel containers that take longer than a configurable time limit to schedule (e.g., no nodes ever come up). Unsure whether this is useful: maybe containers should just stay queued until the problem is fixed.

Related issues

Related to Arvados - Bug #13964: crunch-dispatch-cloud spikeResolvedTom CleggActions
Related to Arvados - Feature #14325: [crunch-dispatch-cloud] Dispatch containers to cloud VMs directly, without slurm or nodemanagerResolvedTom Clegg01/28/2019Actions
Related to Arvados - Idea #14360: [crunch-dispatch-cloud] Merge incomplete implementationResolvedTom Clegg10/26/2018Actions
Related to Arvados - Feature #14324: [crunch-dispatch-cloud] Azure driverResolvedPeter Amstutz01/09/2019Actions
Related to Arvados - Idea #14807: [arvados-dispatch-cloud] Features/fixes needed before first production deployResolvedTom Clegg01/29/2019Actions
Related to Arvados - Bug #14745: [crunch-dispatch-cloud] Azure cloud driver fixupsResolvedEric Biagiotti02/13/2019Actions
Related to Arvados - Bug #14844: [dispatch-cloud] Azure driver bugs discovered in trial runResolvedPeter Amstutz02/28/2019Actions
Related to Arvados - Feature #14291: [crunch-dispatch-cloud] AWS driverResolvedPeter Amstutz02/28/2019Actions
Related to Arvados - Idea #14931: [arvados-dispatch-cloud] Configurable instance tagsResolvedTom Clegg05/31/2019Actions
Related to Arvados - Feature #14912: [Crunch2] Azure driver supports attaching extra storageNewActions
Related to Arvados - Feature #15025: [arvados-dispatch-cloud] GCE driver (Google Compute Engine)NewActions
Related to Arvados - Feature #15051: [a-d-c] EC2 driver supports AssumeRoleNewActions
Related to Arvados - Feature #15063: [a-d-c] Assign names to EC2 instancesDuplicateTom CleggActions
Related to Arvados - Feature #12900: [Crunch2] [crunch-run] Prune old images before installing image for current containerNewActions
Related to Arvados - Feature #15370: [arvados-dispatch-cloud] loopback driverResolvedTom Clegg05/17/2022Actions
Related to Arvados - Idea #15759: [arvados-dispatch-cloud] deploy/run correct version of crunch-run binary on worker nodesResolvedTom Clegg12/30/2019Actions
Related to Arvados - Idea #15823: [arvados-dispatch-cloud] Add arvados-dispatch-cloud management APIs to doc siteResolvedTom Clegg01/13/2020Actions
Related to Arvados - Idea #15865: [arvados-dispatch-cloud] Cumulative instance time and cost metricsNewActions
Related to Arvados - Feature #16106: [arvados-dispatch-cloud] Azure driver support for preemptible instancesResolvedWard Vandewege01/07/2021Actions
Related to Arvados - Feature #16636: [arvados-dispatch-cloud] Add instance metricsResolvedWard Vandewege08/03/2020Actions
Blocked by Arvados - Idea #14796: [crunch-dispatch-cloud] Document installation / migration from c-d-slurm + node managerResolvedTom Clegg01/29/2019Actions
Blocks Arvados - Idea #13484: Support multiple load-balanced API server nodesNewWard VandewegeActions
Blocked by Arvados - Feature #15340: [arvados-dispatch-cloud] Error-counting metricsResolvedTom CleggActions
Blocked by Arvados - Idea #15026: [arvados-dispatch-cloud] Cloud driver/config testing toolResolvedTom Clegg06/21/2019Actions
Blocked by Arvados - Feature #15345: [arvados-dispatch-cloud] kill container (management API)ResolvedTom Clegg06/19/2019Actions
Blocked by Arvados - Idea #15775: [arvados-dispatch-cloud] Promote a-d-c from "experimental" to default in install docsResolvedPeter AmstutzActions
Blocked by Arvados - Idea #15776: [arvados-dispatch-cloud] Add nodemanager->a-d-c instructions to upgrade notesResolvedPeter AmstutzActions

Also available in: Atom PDF