J'ai un cloud de base fonctionnant sur Ubuntu Server (9.04) et Eucalyptus. Walrus (implémentation S3 compatible avec l'API d'Eucalyptus) stocke les fichiers sur le contrôleur cloud. Cependant, chacun des 4 autres serveurs dispose d'un stockage de 1 To qui est largement inutilisé. Je cherche un moyen de regrouper tout le stockage ensemble afin d'utiliser toutes les ressources disponibles. J'ai regardé diverses options, notamment PVFS, Lustre, HDFS (Hadoop).
Mes seules exigences sont qu'il doit être évolutif et qu'il fonctionne bien sur Ubuntu. J'apprécierais d'avoir des nouvelles de toute personne ayant de l'expérience avec ces technologies et j'ai hâte d'entendre vos suggestions.
ubuntu
storage
cloud-computing
Désinvolte
la source
la source
Réponses:
Bien que je ne l'ai personnellement implémenté nulle part dans nos systèmes, j'ai examiné de manière assez approfondie Gluster . Je connais quelques personnes sur de grands sites qui utilisent cela et cela fonctionne apparemment très bien. Ils l'utilisent en production pour certaines applications HPC robustes.
la source
GlusterFS me semble être la solution idéale. Au gars qui prétend que Gluster prend beaucoup d'efforts pour s'installer, je dois dire qu'il n'a probablement jamais essayé. Depuis Gluster 3.2, les utilitaires de configuration sont assez impressionnants et il faut 2 ou 3 commandes pour obtenir un volume gluster et le partager sur le réseau. Le montage de volumes plus brillants est tout aussi simple.
Du côté positif, il vous donne également beaucoup plus de flexibilité que NFS. Il fait le striping, la relication, la géoréplication, est bien sûr compatible POSIX et ainsi de suite. Il existe une extension appelée HekaFS, qui ajoute également SSL et des mécanismes d'authentification plus avancés, ce qui est probablement intéressant pour le cloud computing. Il évolue aussi! Il s'agit de F / OSS et est développé par RedHat qui a récemment acheté Gluster.
la source
Avez-vous déjà regardé mogileFS? http://danga.com/mogilefs/
Ce n'est pas un système de fichiers au sens traditionnel, mais il est bon pour distribuer des données de fichiers à travers un cluster (avec la réplication et la redondance prises en compte).
Si vous servez des fichiers pour une application Web, vous aurez besoin de quelque chose pour servir les fichiers. Je proposerais un script PHP qui utilise la requête HTTP comme clé de recherche pour trouver le fichier que vous voulez dans le mogile FS. Vous pouvez ensuite lire le contenu du fichier dans un tampon et l'écho / l'imprimer.
MogileFS est déjà assez rapide, mais vous pouvez combiner mogileFS avec memcache pour accélérer l'accès aux fichiers les plus couramment utilisés.
la source
Avec Luster, vous devez avoir un noyau spécial sur les serveurs, et je n'aurais que les serveurs étant des serveurs et rien d'autre.
Étrangement, la réponse la plus sensée est bien NFS. Nous avons utilisé NFS sur le cloud d'Amazon. Il peut ne pas évoluer aussi bien que certains systèmes de fichiers, mais la simplicité ne doit pas être négligée. Un espace de nom unique ne vaut probablement pas l'effort qu'il faudrait pour l'implémenter.
la source
Cherchez-vous toujours dans HDFS? Un des gars de Cloudera a donné une conférence à VelocityConf cette année sur Hadoop et HDFS axé sur la gestion des clusters de Big Data, il a donc beaucoup parlé de HDFS. Les diapositives sont assez informatives. Je n'ai pas travaillé personnellement avec HDFS, mais j'ai parlé avec des gens aléatoires de Velocity qui l'utilisent sur Ubuntu pour faire diverses analyses de données.
la source
Mettre une sorte de système de fichiers partagé derrière un environnement de virtualisation est assez courant. Vous avez beaucoup de choix, selon ce que vous cherchez à accomplir.
La solution la plus simple est probablement NFS, car cela va être pris en charge nativement par la distribution que vous exécutez. NFS peut raisonnablement bien fonctionner en tant que système de fichiers dorsal de virtualisation, bien que ce ne soit pas la chose la plus rapide.
Si vous exécutez un cluster RedHat (ou dérivé), vous aurez une bonne prise en charge prête à l'emploi pour GFS2, le système de fichiers du cluster RedHat. Cela ne s'étend pas à des centaines de nœuds, mais cela convient aux petits clusters.
Au-delà de cela, vous commencez à entrer dans la gamme de choses comme Lustre, Glusterfs, GPFS, etc. Ce sont tous des systèmes de fichiers parallèles hautes performances, mais ils nécessitent beaucoup plus de travail à configurer que les autres options ici. Si vous avez un grand environnement, il vaut peut-être la peine de le regarder.
la source
je serais d'accord avec @larsks en ce que NFS est la meilleure option; mis en place des cibles iSCSI, NFS, fait. cela augmentera à environ 5-10 nœuds; YMMV basé sur les E / S, la capacité réseau, etc.
Si vous avez besoin de quelque 20 nœuds ou plus, vous voudrez peut-être enquêter sur Ceph . Lustre est prometteur et stable, mais est un produit Oracle (F / OSS) et j'ai des aversions personnelles contre Oracle. :)
Ceph est également très actif; la version la plus récente remonte à 5 jours.
la source
XtreemFS pourrait être une solution pour vous. Il est assez simple à installer et à configurer, il existe également des packages pour Ubuntu.
la source
MooseFS (Distributed File System) s'adapte à vos besoins. Il est évolutif et fonctionne bien sur Ubuntu. Il peut également vous être utile de voir comment installer / mettre à jour MooseFS à partir d'un référentiel officiellement pris en charge sur Ubuntu .
la source
Je ne sais pas ce que vous faites, mais cela ressemble à une application potentiellement intéressante pour CouchDB .
la source
Vous pouvez essayer PVFS2 . Il est beaucoup plus facile à configurer que Luster et généralement plus rapide que Gluster.
la source