Réseau : Globus réinvente le stockage et le calcul à distance
L’association issue de l’Université de Chicago a mis au point une plateforme qui chapeaute les transferts de fichier et l’exécution d’applicatifs entre des sites différents, sans passer par le cloud.
Une plateforme pour encadrer tous les transferts de fichiers entre sites, mais aussi les exécutions de commandes à distance. Telle est la fonction de Globus, un kit d’agents à installer localement et de services à utiliser en ligne, qui a été développé au sein de l’université de Chicago pour, initialement, épauler les chercheurs dans les tâches de calcul distribué, mais qui a désormais des visées commerciales, tant ses capacités sont adaptées aux besoins modernes des entreprises.
« Nous restons une association à but non lucratif et, d’ailleurs, toute la propriété intellectuelle de Globus reste celle de l’Université de Chicago », dit Rachana Ananthakrishnan, la directrice du projet (en photo en haut de cet article), que LeMagIT a rencontré lors d’un récent événement IT Press Tour consacré aux acteurs du stockage qui innovent dans la Silicon Valley.
« Notre plateforme est librement téléchargeable. Elle est librement utilisable pour les usages non commerciaux, principalement les activités de recherche. Nous demandons en revanche une souscription annuelle pour accéder aux fonctions les plus pointues, ou lorsque l’utilisateur est une entité commerciale », ajoute-t-elle.
La plateforme Globus propose six fonctions : la gestion des transferts de fichiers, la gestion des partages de fichiers, l’exécution d’applicatifs à distance, la gestion de flux de collecte/publication de données entre différents sites, ainsi qu’un moteur de recherche de données, le tout chapeauté par un système transversal d’authentification.
Toutes ces fonctions sont individuellement disponibles dans pléthore d’autres logiciels, y compris Open source. Mais l’équipe de Globus estime qu’ils sont bien trop compliqués à mettre en œuvre pour des utilisateurs isolés, qui ne sont pas spécialement informaticiens. Et qui manipulent des données suffisamment stratégiques pour ne pas que leur sécurité soit compromise durant un transfert.
Ce profil, qui correspond à celui d’un chercheur travaillant à distance sur un supercalculateur ou collaborant avec des pairs à l’international, est aujourd’hui aussi celui de n’importe quel salarié nomade ou en télétravail, qui utilise à distance des IA et échange des données sensibles avec ses collègues, ou des partenaires d’affaires.
« Dès le départ, notre mission a été d’augmenter l’efficacité des chercheurs qui doivent envoyer ou collecter des données soumises à des accords de protection très stricts et qui ne disposent pas eux-mêmes de gros moyens informatiques », explique Rachana Ananthakrishnan.
Rendre les protocoles transparents via un service générique et simple
Par exemple, dans le monde de la recherche, l’envoi de données se fait classiquement via un le protocole FTP, de la source à la destination. Mais, de nos jours, les données peuvent avoir une taille si importante – plusieurs Po – que le transfert mettra des jours à s’achever. Entretemps, la connexion via des liens Internet publics a toutes les chances de s’interrompre.
En passant par Globus, c’est-à-dire en commandant ce transfert depuis sa console en ligne, les données continuent de voyager directement entre la source et la destination. Mais les agents installés de part et d’autre détectent les interruptions et relancent automatiquement la communication là où elle s’était arrêtée, si c’est bien ce qu’il a été indiqué de faire dans la console. Ils se chargent aussi de chiffrer les données. L’expéditeur n’a même pas à ouvrir de client FTP.
Le partage de fichiers fonctionne sur exactement le même principe. La console en ligne de Globus offre une interface similaire en tous points à celle d’un Google Drive, avec des partages qui peuvent être définis pour une période donnée, à un public d’utilisateurs possédant un lien secret, qu’ils reçoivent automatiquement par e-mail. Sauf que les données ne sont pas stockées en ligne : elles sont physiquement partagées depuis la machine où elles ont été créées. Cela n’est d’ordinaire possible que si la personne qui partage sait mettre en place un serveur de fichiers qui expose ses contenus sur Internet de manière protégée.
Il est à noter que les agents disposent de connecteurs pour tous types de stockage source. Ainsi, qu’importe s’il s’agit au départ de stockage objet, POSIX ou autre, des fichiers classiques seront toujours transmis. Il existe toute une gamme de connecteurs et ce sont justement les plus élaborés d’entre eux que Globus entend commercialiser.
Parmi ces connecteurs, certains prennent en charge des systèmes de stockage d’entreprise sur site : DataCore, Scality, Ceph, Cloudian, Lustre... D’autres permettent de repartager des services de stockage déjà en cloud : AWS S3, Microsoft OneDrive, GoogleDrive, DropBox, Wasabi...
Ces connecteurs ne se limitent pas au transfert de fichiers. Ils savent aussi lire les métadonnées de chacun des stockages pour alimenter le moteur de recherche et les règles d’accès – que ce soit par identifiant, comme par criticité du contenu – que l’on peut définir dans la console de Globus.
« Concernant les services de stockage en ligne, vous n’avez même pas à y définir des règles de délai ou d’accès. Le connecteur transcrit automatiquement les règles définies dans la console Globus en règles interprétables par ces services. C’est d’ailleurs essentiel, car, encore une fois, les données ne voyagent jamais via le service Globus, mais directement du service source à la machine de destination. Nous ne faisons que superviser la bonne marche du transfert », assure Rachana Ananthakrishnan.
Par exemple, dans le cas où les collaborateurs utilisent la version gratuite d’un service de stockage en ligne qui est limitée à une certaine quantité de données à transférer par jour, Globus prendra en compte cette limite et attendra tout seul que la limite soit réinitialisée pour lancer l’ordre de transfert.
Pilotage à distance : abolir la contrainte des accords et des délais
L’exécution d’applicatifs à distance relève d’un niveau d’ingénierie encore plus élevé. Le but initial était de permettre à des chercheurs de lancer depuis chez eux des calculs sur un supercalculateur. Sans Globus, il faut passer par toute une démarche : essentiellement, poster l’exécutable sur un serveur et communiquer avec les équipes responsables du supercalculateur pour savoir quand elles pourront le lancer.
Globus automatise le processus avec une bibliothèque Python et à installer côté serveur pour piloter n’importe quel exécutable. Depuis la console en ligne de Blogus où l’utilisateur passe l’ordre d’exécution. Mais aussi potentiellement en direct depuis la machine de l’utilisateur s’il installe lui aussi une bibliothèque Python d’accès à distance.
En fait, l’utilisateur a même la possibilité d’écrire depuis sa machine des scripts Python qui utilisent des batteries de fonction Python proposées sur le serveur. C’est le principe d’une API. Mais cette API est supervisée par le service en ligne de Blogus. En dehors du monde de la recherche, il devient trivial pour une entreprise de partager des accès contrôlés vers un LLM qu’elle exécute sur ses serveurs, à des collaborateurs qui ne disposent pas de la puissance de calcul nécessaire chez eux.
La dernière fonction, celle des flux, consiste simplement à programmer une succession de transferts et d’exécution d’applicatifs entre différentes machines.
« C’est beaucoup utilisé dans la recherche médicale. Vous automatisez la collecte de relevés faits par des instruments dans un laboratoire et vous les envoyez pour traitement à un autre laboratoire. Globus va gérer les disponibilités de chacun et éventuellement envoyer les données à traiter à un autre laboratoire qui dispose des mêmes applicatifs de calcul, mais qui a plus de bande passante disponible », détaille Rachana Ananthakrishnan.
Techniquement, le flux d’opération est décrit dans un fichier JSON, que l’utilisateur peut fournir. Mais dans un souci de simplicité, le service en ligne de Globus propose aussi une interface graphique pour ordonner les étapas à la souris. `
Une carrière commerciale qui démarre, mais déjà un public conséquent
À l’heure actuelle, Globus serait utilisé dans plus de 80 pays – on le trouve en France à l’Institut du Cerveau et de la Moelle épinière, ou encore au Synchrotron SOLEIL – et compterait un peu plus de 250 clients payants. « Les utilisateurs payants sont à ce jour essentiellement les entités commerciales de groupes de recherche pharmaceutiques », précise Rachana Ananthakrishnan.
Le modèle de tarification repose sur un abonnement annuel, fixé en fonction du budget de recherche de l’institution plutôt que sur des critères techniques ou des volumes d’utilisation. « Ainsi, même si une université double son usage, cela n’a pas d’impact sur la facture », souligne la responsable.
Concernant le proche avenir, Globus travaille à simplifier encore plus la gestion des systèmes de stockage pour les administrateurs IT, via des outils de monitoring et d’automatisation adaptés à leurs pratiques. L’équipe investit aussi dans l’intégration de flux génériques, prêts à l’emploi, de sorte à implémenter par exemple des processus qui respectent automatiquement les exigences réglementaires sans même que les utilisateurs aient à faire des manipulations.
« Nous voulons croire que la collaboration autour du calcul distribué – IA incluse - ne fera que gagner en efficacité si les infrastructures IT sont transparentes et accessibles pour tous », conclut Rachana Ananthakrishnan.
