storiq logo

La traînée de poudre

Le blog StorIQ

 

Mercredi, 16 mai 2018

Le Grand Comparatif des systèmes de fichiers en nuage: Introduction

Le temps est révolu où les professionnels aux besoins de stockage importants pouvaient se contenter d’un simple système centralisé de type NAS ou SAN. Désormais, tout le monde pense nuage, architecture scalable, montée en charge, redondance…

Malheureusement il existe un nombre sans cesse croissant de logiciels, de plate-formes, de systèmes ouverts ou propriétaires pour construire ces systèmes de stockage de nouveau style. Quels en sont les points faibles, les points forts, le cadre d’utilisation? Pourquoi choisir un tel plutôt que tel autre? Voilà le but de ce comparatif.

Qu’est ce qu’un système de fichiers en nuage?

Un système de fichiers est une organisation de données selon le modèle bien connu de l’arborescence contenant dossiers et fichiers, généralement suivant le modèle POSIX, avec des variations. Dans le cas général, un système de fichier est contenu dans un seul périphérique de stockage, que ce soit un SSD, un disque dur ou un volume RAID (ce dernier faisant l’abstraction entre un agrégat de disques et un périphérique physique virtuel).

Un système de fichiers en grappe (cluster) permet à plusieurs machines (ou nœuds) d’accéder à un même système de fichier (donc la même arborescence et les mêmes fichiers). Ces systèmes de fichiers en grappe se partagent en deux grands groupes: les systèmes de fichier SAN et les systèmes de fichier en nuage (certains systèmes appartenant aux deux catégories en même temps).

Un système de fichiers SAN permet à un ensemble de machines reliées à un réseau de stockage de partager un périphérique de stockage commun (typiquement, une baie de stockage SAN) et d’y travailler simultanément sur la même arborescence et les mêmes fichiers. La redondance, la scalabilité sont entièrement déléguées au sous-système de stockage SAN. Des exemples de ce type de systèmes sont Quantum StorNext, HP(SGI) CXFS, IBM GPFS, Tiger tech Tiger Store… En logiciel libre nous avons RedHat GPFS, Oracle OCFS… Ce n’est pas notre sujet actuel.

Schéma SAN

Un système de stockage en nuage permet, à plusieurs machines d’accéder à un volume de stockage commun, mais au lieu de passer par un sous-système de stockage partagé, en s’appuyant sur la mise en commun des ressources de stockage individuelles de chaque machine. Il existe un grand nombre de systèmes de stockage en nuage; certains offrent la possibilité de présenter le stockage sous forme de système de fichiers, d’autres non. Ces derniers présentent généralement uniquement une interface “objet”, destinée à des usages Internet de stockage de données massives, et ne seront pas traités ici. Certains sont à la fois objet et système de fichiers, mais privilégient généralement le mode objet.

Exemples de stockage en nuage (et leur mode d’accès): Scality (objet, passerelle fichier), Dell/EMC Isilon (fichier seulement), OpenIO (objet seulement), CEPH (objet, bloc, fichier), LizardFS (fichier), XtreemFS (fichier), MooseFS (fichier), RozoFS (fichier)…

Schéma Nuage

Une dernière catégorie de systèmes de fichiers agrégeant l’espace de plusieurs machines n’offre pas de redondance et sont destinés au calcul intensif et scientifique, ce sont entre autre Lustre, OrangeFS, BeeGFS, etc. Ces systèmes de fichiers ne seront pas traités ici.

Pourquoi un système de fichiers en nuage?

La plupart des systèmes de fichiers en nuage présentent de gros avantages en terme de scalabilité (possibilité d’agrandir le stockage au fil de l’eau) et de redondance.(tolérance à la panne d’un serveur voire d’un centre de données entier).

Tous les systèmes de notre comparatif offrent au moins les capacités suivantes:

  • ajout d’un nœud de stockage à chaud pour étendre la capacité
  • tolérance à la panne d’un nœud de stockage
  • reconstruction d’un nœud de stockage défaillant

La plupart de ces systèmes de fichiers fonctionnent en mode utilisateur (pilote FUSE). L’avantage des pilotes FUSE est qu’ils sont généralement disponibles également pour MacOS et Windows, permettant ainsi aux clients d’accéder directement au système de fichier de façon native. L’inconvénient des pilotes FUSE est qu’ils sont généralement moins robustes que les pilotes natifs intégrés au noyau Linux, en particulier ils sont susceptibles, dans des conditions de charge mémoire importante, d’être arrêtés de force par le “OOM Killer”. De plus, les pilotes FUSE ne permettent pas le partage du système de fichier via le serveur NFS intégré au noyau, qui est plus performant que le serveur NFS en mode utilisateur.

Les concurrents de notre comparatif

Nous avons prévu de tester les systèmes de fichier en nuage suivants:

  • LizardFS
  • RozoFS
  • CEPH FS
  • GlusterFS

L’optique est de tester ces systèmes de fichiers dans un usage entreprise de type stockage de production vidéo, archivage plutôt que pour les usages internet purs type virtualisation massive, diffusion en streaming, etc.

posté à: 17:19 permalink