Какая распределенная файловая система в качестве бэкэнда для облачных вычислений?


11

У меня есть базовое облако, работающее на Ubuntu Server (9.04) и Eucalyptus. Walrus (совместимая с Eucalyptus API реализация S3) хранит файлы на облачном контроллере. Однако каждый из 4 других серверов имеет 1 ТБ хранилища, которое в основном не используется. Я ищу способ объединить все хранилище вместе, чтобы использовать все доступные ресурсы. Я разглядывал различные варианты, включая PVFS, Lustre, HDFS (Hadoop).

Единственное, что мне нужно, - это чтобы его можно было масштабировать и чтобы он хорошо работал в Ubuntu. Я был бы признателен всем, кто имеет опыт работы с такими технологиями, и я с нетерпением жду ваших предложений.


Если бы это не был Ubuntu, я бы сказал, ZFS.
Брэд Гилберт

3
За исключением того, что ZFS не является кластерной файловой системой.
MarkR

Ответы:


5

Хотя я лично нигде не реализовывал это в наших системах, я довольно широко изучал Gluster . Я знаю несколько человек на некоторых крупных сайтах, которые используют это, и это, очевидно, работает очень хорошо. Они используют его в производстве для некоторых высокопроизводительных применений HPC.


2

GlusterFS показался бы мне идеальным решением. Парню, который утверждает, что Gluster требует много усилий, чтобы настроить, я должен сказать, что он, вероятно, никогда не пытался. Начиная с Gluster 3.2, утилиты конфигурирования довольно крутые, и требуется 2 или 3 команды для увеличения громкости и общего доступа к сети. Установить объемы кластера одинаково просто.

С положительной стороны это также дает вам гораздо больше гибкости, чем NFS. Он выполняет чередование, репликацию, георепликацию, конечно, POSIX-совместимость и так далее. Существует расширение под названием HekaFS, которое также добавляет SSL и более продвинутые механизмы аутентификации, что, вероятно, интересно для облачных вычислений. И это масштабируется! Это F / OSS и разрабатывается RedHat, который недавно приобрел Gluster.


1

Вы когда-нибудь смотрели на mogileFS? http://danga.com/mogilefs/

В традиционном смысле это не файловая система, но она хороша для распределения файловых данных по кластеру (с учетом репликации и избыточности).

Если вы подаете файлы для веб-приложения, вам понадобится что-то для обслуживания файлов. Я бы предложил PHP-скрипт, который использует HTTP-запрос в качестве ключа поиска для поиска нужного вам файла в mogile FS. Затем вы можете прочитать содержимое файла в буфер и распечатать его.

MogileFS уже работает довольно быстро, но вы можете объединить mogileFS с memcache, чтобы ускорить доступ к наиболее часто используемым файлам.


Кажется, я вспоминаю, что в случае узла метаданных у MogileFS была одна точка отказа. HDFS имеет аналогичную проблему.
Дэвид Пашли

MogileFS кажется довольно интересным, и его репликация и избыточность идеальны, однако, как представляется, он не подходит для общего использования, так как приложения должны знать, что они работают на нем. Более традиционная файловая система, в которой приложения могут быть независимыми от FS, была бы более подходящей.
Jaunty

1
MogileFS может иметь несколько работающих трекеров, и вы можете использовать mysql для отработки отказа в бэкэнде. Таким образом, вы можете удалить все отдельные точки отказа.
Давидшельдон

1

С Luster у вас должно быть специальное ядро ​​на серверах, а у меня будут только серверы, являющиеся серверами, и ничего больше.

Странно, самый вменяемый ответ гораздо лучше NFS. Мы использовали NFS в облаке Amazon. Он может масштабироваться не так хорошо, как некоторые файловые системы, но простота не должна меня игнорировать. Одно пространство имен, вероятно, не стоит того усилия, которое потребуется для его реализации.


1

Вы все еще изучаете HDFS? Один из ребят из Cloudera выступил с докладом на VelocityConf в этом году о Hadoop и HDFS, сфокусированных на управлении кластерами больших данных, поэтому он немного рассказал о HDFS. Слайды довольно информативны. Я не работал с HDFS лично, но я разговаривал с некоторыми случайными людьми из Velocity, которые используют его в Ubuntu для анализа различных данных.


1

Размещение какой-то общей файловой системы в среде виртуализации довольно распространено. У вас есть много вариантов, в зависимости от того, что вы хотите сделать.

Самым простым решением, вероятно, является NFS, потому что это будет поддерживаться изначально любым дистрибутивом, который вы используете. NFS может работать достаточно хорошо в качестве серверной файловой системы виртуализации, хотя это не будет самой быстрой вещью.

Если вы используете кластер RedHat (или производный), у вас будет хорошая встроенная поддержка GFS2, кластерной файловой системы RedHat. Это не масштабируется до сотен узлов, но это хорошо для небольших кластеров.

Помимо этого, вы начинаете вводить ряд вещей, таких как Luster, Glusterfs, GPFS и так далее. Все это высокопроизводительные параллельные файловые системы, но для их настройки требуется значительно больше работы, чем для других вариантов. Если у вас большая среда, на них стоит обратить внимание.


1

я согласен с @larsks в том, что NFS - лучший вариант; установить некоторые цели iSCSI, NFS, готово. это увеличится до 5-10 узлов; YMMV на основе ввода-вывода, возможностей сети и т. Д. (В качестве альтернативы, настройте iSCSI с поддержкой многопутевого ввода-вывода).

Если вам нужно что-то около 20+ узлов, вы можете изучить Ceph . Luster перспективен и стабилен, но является (F / OSS) продуктом Oracle, и мне не нравятся Oracle. :)

Ceph также довольно активен; самый последний выпуск был 5 дней назад.


Блеск больше не находится под зонтиком Oracle. Смотрите whamcloud.com
утопия вокруг

1

XtreemFS может быть решением для вас. Его довольно просто установить и настроить, есть также пакеты для Ubuntu.



0

Не уверен, что вы делаете, но это звучит как потенциально интересное приложение для CouchDB .


0

Вы можете попробовать PVFS2 . Это намного проще в настройке, чем Luster, и, как правило, быстрее, чем Gluster.


быстрее, чем Gluster? Вы можете поделиться какими-либо данными о производительности?
John-ZFS

У меня нет недавних ориентиров под рукой. Еще в 2008 году Gluster был намного медленнее, чем Luster, в то время как PVFS2 был лишь немного медленнее. В наши дни это может быть по-другому, может быть, я сравню это.
wazoox

спасибо, если вы сделаете тест, пожалуйста, дайте мне знать. maruti.j@gmail.com или вы можете сделать сообщение об ошибке на сервере для всех
John-ZFS
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.