awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com

cluster resource scheduler / job scheduler

Ranking updated Jun 30, 2026

For a resource allocation scheduler for distributed systems, the first results are volcano-sh/volcano (Volcano is a Kubernetes-native batch scheduler that provides priority queues, preemption, GPU scheduling for AI/ML workloads, hierarchical resource isolation, and policy-driven gang scheduling, matching all the required features for cluster resource scheduling), hashicorp/nomad (Nomad is a distributed workload orchestrator that directly schedules and allocates CPU, memory, and GPU resources across clusters, supporting priority queues, preemption, and policy-driven scheduling — making it a complete match for a cluster resource scheduler) and ray-project/ray. kubernetes/kubernetes and apache/mesos round out the shortlist. Compare the match explanations and check the project documentation against your requirements.

We curate open-source GitHub repositories matching “resource allocation schedulers”. Results are ranked by relevance to your query — pick filters below to narrow, or refine with AI.

Results for “a resource allocation scheduler for distributed systems”

Find the best repos with AI.We'll search the best matching repositories with AI.
  • volcano-sh/volcanovolcano-sh avatar

    volcano-sh/volcano

    5,337View on GitHub↗

    Volcano is a Kubernetes-native batch scheduler specialized for AI, machine learning, and high-performance computing workloads. It provides gang scheduling to atomically allocate resources for all tasks of a distributed job, preventing deadlocks from partial allocation, and supports hierarchical queue management for multi-tenant resource isolation with configurable quotas, borrowing, and preemption. Topology-aware placement optimizes communication-intensive workloads by modeling network hierarchy to minimize cross-switch latency. Volcano differentiates itself with automated orchestration of di

    Volcano is a Kubernetes-native batch scheduler that provides priority queues, preemption, GPU scheduling for AI/ML workloads, hierarchical resource isolation, and policy-driven gang scheduling, matching all the required features for cluster resource scheduling.

    GoGPU Affinity SchedulersPluggable Scheduling PipelinesCross-Cluster Job Prioritization
    View on GitHub↗5,337
  • hashicorp/nomadhashicorp avatar

    hashicorp/nomad

    16,211View on GitHub↗

    Nomad is a distributed workload orchestrator and infrastructure automation platform designed to manage the lifecycle of applications across large-scale, heterogeneous environments. It functions as a multi-cloud orchestration engine, providing a unified control plane to deploy, scale, and govern containers, virtual machines, and legacy applications. By utilizing declarative job specifications, the system ensures infrastructure convergence and maintains the desired state across distributed data centers and geographic regions. The platform distinguishes itself through a flexible, plugin-based ar

    Nomad is a distributed workload orchestrator that directly schedules and allocates CPU, memory, and GPU resources across clusters, supporting priority queues, preemption, and policy-driven scheduling — making it a complete match for a cluster resource scheduler.

    GoResource IsolationKernel Isolation PrimitivesBin-Packing Schedulers
    View on GitHub↗16,211
  • ray-project/rayray-project avatar

    ray-project/ray

    42,895View on GitHub↗

    Ray is a distributed computing framework designed to scale Python and Java applications across clusters by abstracting task scheduling and resource management. It functions as a resource-aware execution engine that manages task dependencies, placement, and fault tolerance across networked compute nodes. At its core, the system provides a stateful actor model, allowing developers to define classes that run in dedicated processes to maintain and mutate internal state across remote method calls. The framework distinguishes itself through a robust cross-language interoperability layer, enabling f

    Ray is a distributed computing framework that natively schedules tasks and manages CPU, memory, and GPU resources across clusters, making it a direct fit for a cluster resource scheduler with support for priority queues, GPU scheduling, scalability, and policy‑driven placement via its actor and task model.

    PythonScheduling Strategies
    View on GitHub↗42,895
  • kubernetes/kuberneteskubernetes avatar

    kubernetes/kubernetes

    123,197View on GitHub↗

    Kubernetes is a distributed container orchestration platform that automates the deployment, scaling, and management of containerized applications across clusters of computing nodes. It functions as a declarative infrastructure controller, utilizing a control loop architecture that continuously monitors the current system state against user-defined configurations to ensure desired operational outcomes. The system relies on a centralized API-driven interface and a replicated key-value store to maintain a consistent source of truth for all cluster objects. The platform distinguishes itself throu

    Kubernetes is a container orchestration platform whose built-in scheduler handles priority queues, GPU scheduling, preemption, and policy-driven resource allocation at scale, making it an excellent fit for this search.

    GoBin-Packing Schedulers
    View on GitHub↗123,197
  • apache/mesosapache avatar

    apache/mesos

    5,369View on GitHub↗

    Apache Mesos is a distributed systems kernel and cluster resource manager that abstracts CPU, memory, and storage across a pool of nodes. It functions as a distributed infrastructure orchestrator, providing a layer to run multiple orchestration frameworks on a shared set of physical or virtual machines. The system acts as a resource isolation engine, dividing a shared cluster into isolated containers to run diverse workloads concurrently. It enables multi-framework orchestration, allowing different distributed application frameworks to share a single infrastructure to maximize hardware utiliz

    Apache Mesos is a proven cluster resource scheduler that abstracts CPU, memory, and GPUs across nodes, with two-level scheduling, offer-based allocation, and resource isolation — directly matching your need for an efficient cluster scheduler.

    C++Resource Isolation
    View on GitHub↗5,369
  • mesosphere/marathonmesosphere avatar

    mesosphere/marathon

    4,036View on GitHub↗

    Marathon is an Apache Mesos container orchestrator and distributed workload manager. It serves as a framework for deploying and managing containerized applications and workloads across a distributed cluster. The system functions as a cluster resource scheduler that assigns applications to available resources using a centralized control plane. It distinguishes its orchestration through constraint-based instance placement, which restricts where containers are deployed based on node attributes or rack locations to ensure high availability. The platform provides capabilities for automated cluste

    Marathon is a cluster scheduler that deploys and manages containers on top of Apache Mesos at scale, fitting the search for an open-source tool to allocate resources across jobs, though it relies on Mesos for core resource management and lacks built-in preemption and explicit priority queues.

    ScalaContainerized Application DeploymentDistributed Workload ManagersCentralized Control Planes
    View on GitHub↗4,036
  • dcos/dcosdcos avatar

    dcos/dcos

    2,353View on GitHub↗

    DC/OS - The Datacenter Operating System

    DC/OS is a full datacenter operating system that includes a cluster resource scheduler for deploying and managing jobs and containers, making it a genuine tool in this category despite its broader scope.

    PythonInfrastructure Management
    View on GitHub↗2,353
  • automattic/kueAutomattic avatar

    Automattic/kue

    9,437View on GitHub↗

    Kue is a Redis-backed job queue library for Node.js that provides a complete system for defining, scheduling, and processing background work. It stores job metadata and state in Redis lists and sorted sets, enabling persistent, in-memory operations with configurable concurrency control and priority-sorted processing. The library includes a RESTful HTTP API for managing jobs and a web-based monitoring dashboard for inspecting job status, progress, and logs. The system distinguishes itself through its event-driven worker model, where workers listen for job events via Redis pub/sub and process j

    Kue is a Redis-backed job queue library for Node.js background tasks, not a cluster resource scheduler that allocates CPU, memory, or GPUs across jobs or containers.

    JavaScriptJob Priority Management
    View on GitHub↗9,437
  • coleifer/hueycoleifer avatar

    coleifer/huey

    5,933View on GitHub↗

    .. image:: https://media.charlesleifer.com/blog/photos/huey3-logo.png

    Huey is a lightweight task queue for Python that schedules background jobs, but it does not allocate cluster resources like CPU, memory, or GPUs across nodes, so it doesn't meet your need for a cluster resource scheduler.

    PythonPriority Queues
    View on GitHub↗5,933
  • oban-bg/obanoban-bg avatar

    oban-bg/oban

    3,812View on GitHub↗

    Oban is a distributed background job processing system and task scheduler that uses PostgreSQL for transactional job storage and reliable execution across multiple nodes. It serves as a PostgreSQL-backed background worker and job queue, coordinating task execution and concurrency through a relational database to ensure delivery guarantees. The system differentiates itself through a distributed workflow orchestrator capable of managing multi-step processing pipelines, dependent job sequencing, and shared context. It provides advanced orchestration tools including job batching, chunked processi

    Oban is a distributed background job processing system and task scheduler, not a cluster resource scheduler that allocates CPU, memory, or GPUs across containers or jobs in a cluster environment.

    ElixirJob Priority ManagementWorker Scaling
    View on GitHub↗3,812
  • optimalbits/bullOptimalBits avatar

    OptimalBits/bull

    16,243View on GitHub↗

    Bull is a Node.js library for managing distributed jobs and message queues using Redis as the primary data store. It functions as a distributed task worker, job scheduler, and priority queue manager designed to handle asynchronous workloads across multiple processes. The project distinguishes itself by providing a persistent communication channel that decouples servers through the exchange of serializable data objects. It ensures distributed system reliability by detecting stalled tasks and recovering from process crashes to ensure every queued job is completed. The system covers a broad ran

    Bull is a Node.js job queue and scheduling library for managing asynchronous tasks, but it does not schedule or allocate CPU, memory, or GPU resources across cluster nodes, so it does not match the cluster resource scheduler category.

    JavaScriptJob Priority Management
    View on GitHub↗16,243
  • triggerdotdev/trigger.devtriggerdotdev avatar

    triggerdotdev/trigger.dev

    13,696View on GitHub↗

    Trigger.dev is a platform for building durable, event-driven background workflows. It functions as a workflow engine that allows developers to define complex, long-running processes using standard code rather than proprietary configuration languages. By utilizing a durable execution model, the system checkpoints progress, ensuring that tasks can automatically resume from the exact point of failure after a crash or interruption. The platform distinguishes itself through its focus on stateful, multi-step automation and real-time feedback. It supports the orchestration of AI agents and external

    Trigger.dev is a workflow engine for durable background jobs and AI agent orchestration, not a cluster-wide resource scheduler that allocates CPU, memory, or GPUs across nodes—it schedules tasks and automations, not compute resources in a cluster.

    TypeScriptResource Isolation
    View on GitHub↗13,696
Compare the top 10 at a glance
RepositoryStarsLanguageLicenseLast push
volcano-sh/volcano5.3KGoapache-2.0Feb 13, 2026
hashicorp/nomad16.2KGootherFeb 20, 2026
ray-project/ray
42.9K
Python
Apache-2.0
Jun 16, 2026
kubernetes/kubernetes123.2KGoApache-2.0Jun 23, 2026
apache/mesos5.4KC++Apache-2.0May 15, 2026
mesosphere/marathon4KScalaApache-2.0Sep 8, 2022
dcos/dcos2.4KPythonApache-2.0Jul 27, 2023
automattic/kue9.4KJavaScriptMITFeb 12, 2024
coleifer/huey5.9KPythonmitFeb 4, 2026
oban-bg/oban3.8KElixirapache-2.0Feb 17, 2026

Related searches

  • a study path for distributed systems
  • a framework for building distributed computing systems
  • a library for scheduling tasks in Go
  • a java library for scheduling background tasks
  • a system for distributing LLM inference across nodes
  • a background job scheduler for server tasks
  • a centralized cron job scheduler
  • a library for scheduling tasks in C#