Omnia : un projet open source qui marie Slurm et Kubernetes

Dell porte Omnia, projet open source destiné à automatiser la mise en place de clusters HPC sur base Slurm et Kubernetes.

Qu’est-ce qu’Omnia ? Une « boîte à outils open source destinée à déployer et à gérer des clusters haute performance pour le HPC, l’IA et l’analytics. » C’est en tout cas la définition qui figure sur le GitHub du projet. Ce dernier n’est pas nouveau : le premier commit remonte à février 2020. Mais Dell, qui en est le principal porteur*, vient d’accentuer sa communication.

Omnia repose sur une collection de playbooks Ansible. La promesse : constituer une infrastructure convergée. Le moyen : automatiser le déploiement de clusters Slurm et/ou Kubernetes. Ainsi que d’outils additionnels comme JupyterHub et Kubeflow.

Stack Slurm

Stack Kubernetes Omnia

Deux solutions pour exploiter Omnia. D’un côté, l’installation en ligne de commande sur des serveurs Linux. De l’autre, une appliance pour « partir de zéro ».

Dans le deuxième cas (illustré ci-dessous), l’initialisation des serveurs se fait avec l’outil Cobbler et une image « minimale » de CentOS (7.9 2009 au minimum ; SELinux doit être désactivé). Deux topologies réseau sont possibles : plate (tous les nœuds connectés à Internet via un switch) ou hiérarchique (nœuds de calcul connectés à un switch ; nœud gestionnaire connecté à Internet).

Exemple InfiniBand

Un autre projet open source a inspiré à Omnia ses lignes directrices. En l’occurrence, Pravega. Il s’agit d’un service de messagerie distribuée inscrit dans la lignée de Kafka et de Pulsar.

* Au départ, la démarche visait la communauté Dell HPC, sur la base des serveurs PowerEdge. Le projet en conserve des traces. Par exemple au niveau du nom par défaut de l’organisation sur Ansible : Dell EMC. Le groupe américain précise n’assurer la prise en charge que des modules qu’il a lui-même développés.

Illustration principale © Markus Spiske – Unsplash