Does someone know if there is an attempt to integrate Singularity with Kubernetes? That would be awesome for everyone who wants to run an HPC program (e.g. in the cloud). My only other idea would be to use an Singularity run as entry point for Docker and run that one in Kubernetes.
Edit: There is the plan to do an integration by the singularity team (post).
To fully enable Singularity support in Kubernetes cluster, Singularity-CRI should be installed on each Kubernetes node. However, one may choose to have a heterogeneous cluster with multiple container runtimes. In that case only dedicated Kubernetes nodes should be integrated, and no changes should be done to the rest.
Docker is currently the most widely deployed framework, ideally suited for micro- service architecture. Singularity is a framework that aims to provide mobility of compute with a focus on bare-metal HPC cluster systems.
A Singularity container is used to encapsulate all required software and dependencies for a workflow. This is extremely useful when trying to execute a particular workflow on different systems. Containers make compiling software on different compute platforms easy and effortless.
SingularityCE is the Community Edition of Singularity, an open source container platform designed to be simple, fast, and secure. Many container platforms are available, but SingularityCE is designed for ease-of-use on shared systems and in high performance computing (HPC) environments.
In the thread mentioned by the OP, Gregory Kurtzer (CEO, Sylabs Inc.) just added:
Apologies that the thread got dropped, but our interest certainly has not changed. We have begun two projects which will help on this initiative:
An OCI compatible interface (both CLI and library) to Singularity. This is a good path forward for community compliance, but it won't support features like cryptographically signed containers via SIF or encryption as they are not OCI compliant.
Because OCI doesn't support all of our features, we are also developing a Kubernetes CRI gRPC shim which will allow us to interface Singularity into Kubernetes at the same level as Docker and Podman. This will allow us to support all of our features under K8s.
Also, please note, that we have also prototyped and even demo'ed Singularity running under HashiCorp Nomad for services and AI workflows.
The OCI, Kubernetes and the Nomad work in progress will be opened up in the coming weeks so stay tuned!
In the meantime, a tool like dgruber/drmaa2os
does have support for Singularity Container.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With