kube-batch VS sarus

Compare kube-batch vs sarus and see what are their differences.

kube-batch

A batch scheduler of kubernetes for high performance workload, e.g. AI/ML, BigData, HPC (by kubernetes-retired)

sarus

OCI-compatible engine to deploy Linux containers on HPC environments. (by eth-cscs)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
kube-batch sarus
3 2
1,057 119
- 4.2%
4.0 7.6
11 months ago about 2 months ago
Go C++
Apache License 2.0 BSD 3-clause "New" or "Revised" License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

kube-batch

Posts with mentions or reviews of kube-batch. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-05-03.
  • Volcano vs Yunikorn vs Knative
    5 projects | /r/kubernetes | 3 May 2023
    tldr; Knative Batch Job provider should support the respective coscheduling and kube-batch support. We had developed an in-house one for KubeFlow, from scratch. We had added Apache Arrow support into knative-serving with the respective CloudEvents interop layer, natively (i.e. secure shmem via IPC namespace, instead of message passing on the same host). We use it as a direct replacement for Apache Arrow Ballista, and had planned researching further DataFusion compat layer. Almost any modern ETL is pretty dubious without Apache Arrow.
  • Kubernetes Was Never Designed for Batch Jobs
    5 projects | dev.to | 1 Sep 2022
    Another aspect of batch jobs is that we’ll often want to run distributed computations where we split our data into chunks and run a function on each chunk. One popular option is to run Spark, which is built for exactly this use case, on top of Kubernetes. And there are other options for additional software to make running distributed computations on Kubernetes easier.
  • Scaling Kubernetes to 7,500 Nodes
    3 projects | news.ycombinator.com | 25 Jan 2021
    > That said, strain on the kube-scheduler is spiky. A new job may consist of many hundreds of pods all being created at once, then return to a relatively low rate of churn.

    Last I checked, the default scheduler places Pods one at a time. It might be advantageous to use a gang/batch scheduler like kube-batch[0], Poseidon[1] or DCM[2].

    [0] https://github.com/kubernetes-sigs/kube-batch

    [1] https://github.com/kubernetes-sigs/poseidon

    [2] https://github.com/vmware/declarative-cluster-management

sarus

Posts with mentions or reviews of sarus. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-01-25.
  • Sarus VS Podman: comparison of both technologies
    1 project | /r/podman | 25 Jun 2022
    Sarus is An OCI-compatible container engine for HPC: https://sarus.readthedocs.io/en/stable/. At this point of view, it is very similar to use case of Podman.
  • Scaling Kubernetes to 7,500 Nodes
    3 projects | news.ycombinator.com | 25 Jan 2021
    The problem with slurm is how it's typically used: ssh into a shared login node with a shared file system, auth is handled by the linux users mostly, submit jobs with sbatch. Kubernetes deployment feels much more modern and safe.

    I have worked with containers + slurm, where the vendor libmpi is injected in the container runtime [1] by a hook, which gives you close to bare metal performance with some container goodness in terms of isolation and deployment.

    [1] https://github.com/eth-cscs/sarus

What are some alternatives?

When comparing kube-batch and sarus you can also consider the following projects:

volcano - A Cloud Native Batch System (Project under CNCF)

mpi-operator - Kubernetes Operator for MPI-based applications (distributed training, HPC, etc.)

argo - Workflow Engine for Kubernetes

pyTORCS-docker - Docker-based, gym-like torcs environment with vision.

udocker - A basic user tool to execute simple docker containers in batch or interactive systems without root privileges.

kube-scheduler-simulator - The simulator for the Kubernetes scheduler

img - Standalone, daemon-less, unprivileged Dockerfile and OCI compatible container image builder.

sidekick - High Performance HTTP Sidecar Load Balancer

crun - A fast and lightweight fully featured OCI runtime and C library for running containers

warewulf - Warewulf is a stateless and diskless container operating system provisioning system for large clusters of bare metal and/or virtual systems.

runtime-spec - OCI Runtime Specification