Мне нужно реализовать распределенную систему хранения для набора узлов (устройств), подключенных в ячеистой сети.
Итак, каковы в основном мои цели дизайна:
Для этого я думаю об использовании распределенной файловой системы. Каждый узел мог получить доступ к данным на других узлах прозрачным образом.
Существуют ли простые, легко подключаемые реализации с открытым исходным кодом?
Спасибо за ваши мысли!
OpenAFS - это хорошо поддерживаемое широко используемое кроссплатформенное решение для распределенной файловой системы, которое может делать все, что вы сказали.
Ceph, когда он достигает качества продукции, может быть хорошим выбором.
OpenAFS неплох. Это также позволяет создать пул служб, чтобы отключенный узел все еще имел копию своих данных. то есть вы работаете на своем ноутбуке, который является узлом AFS, но файлы, которые недавно были изменены в распределенном хранилище, все еще имеют локальную копию. При повторном подключении эти измененные файлы повторно синхронизируются.
GlusterFS / Lustre - еще один достойный вариант. У меня были проблемы с производительностью GlusterFS для контента с большим объемом записи, но он работал очень хорошо.
http://www.cleversafe.org/dispersed-storage/ еще одно возможное решение.
http://danga.com/mogilefs/ если вам не нужна файловая система, совместимая с posix
Если вам нужна отказоустойчивая распределенная файловая система с открытым исходным кодом, вы можете использовать MooseFS. Вы можете легко установить его, например, на Ubuntu.