На проходящей в эти дни конференции Supercomputing 2012 представлен (http://xtreemfs.blogspot.ru/2012/11/xtreemfs-14-released-at-...) релиз распределенной файловой системы XtreemFS 1.4 (http://www.xtreemfs.org/), реализация которой распространяется (http://code.google.com/p/xtreemfs/) под лицензией BSD (http://code.google.com/p/xtreemfs/source/browse/branches/Xtr...). С момента прошлого выпуска было внесено несколько тысяч изменений, на тестирование и стабилизацию которых был потрачен примерно год.
XtreemFS позволяет организовать работу хранилища с распределением данных по нескольким серверам. Для обеспечения отказоустойчивости и обеспечения параллельного доступа данные могут реплицироваться между узлами. Процесс репликации оптимизирован для использования низкоскоростных соединений и возможных временных обрывов связи. Например, при помощи XtreemFS можно обеспечить синхронизацию хранилища на нескольких серверах в разных дата-центрах. Для расширения размера хранилища достаточно подключить к распределенному хранилищу дополнительные узлы хранения. Предоставляется возможность гибкого контроля и управления работой ФС через подключение плагинов. Возможно создание снапшотов и бэкапа метаданных в асинхронном режиме. Для защиты передаваемых по сети данных от перехвата поддерживается использование SSL.
Серверная часть XtreemFS, обеспечивающая управление метаданными, написана (http://www.xtreemfs.org/download_sources.php) на языке Java. Клиент для работы с XtreemFS написан на С++ и доступен для Unix-подобных ОС, Windows и Mac OS X. Клиентская часть ФС работает в пространстве пользователя (user-space) с использованием FUSE. Для приложений работа с XtreemFS мало чем отличается от NFS (XtreemFS может использоваться как замена NFS), так же нет отличий от того, является ли файл реплицированным на локальную систему или доступен только с удаленного хоста.
Из новшеств, добавленных в XtreemFS 1.4, можно отметить:
- Асинхронный режим записи. При монтировании раздела с опцией "--enable-async-writes" все операции записи будут выполнятся в фоне без блокировки до завершения записи, что позволяет добиться заметного увеличения пропускной способности;
- Поддержка интеграции с открытой платформой для распределённой обработки данных Apache Hadoop. XtreemFS теперь может использоваться для замены HDFS в конфигурациях Hadoop;
- Поставка библиотеки libxtreemfs для языка Java, позволяющей (http://www.xtreemfs.org/userguide.php) получить доступ к разделам XtreemFS напрямую из Java-приложений;
- Интеграция алгоритма Vivaldi (http://en.wikipedia.org/wiki/Vivaldi_coordinates) для оптимального выбора хоста при осуществлении репликации данных в распределённой сети. Ближайший к клиенту хост выбирается на основании задержки доставки пакетов;
- Полностью переписанный клиент для платформы Windows. Новый клиент написан на языке C++ с использованием libxtreemfs и Callback FS (http://www.eldos.com/cbfs/) от компании EldoS;
- Увеличение стабильности работы клиентских и серверных частей. В частности, устранены наблюдаемые в прошлых выпусках крахи клиента при проблемах с передачей данных по сети и недоработки в реализации Read/Write репликации файлов;
- Расширенные функции выбора хранилищ объектов (OSD). Для OSD можно привязывать собственные атрибуты, на основании которых определять лимиты на размещение файлов;
- Обновлённая реализация репликации DIR/MRC, в том числе с поддержкой механизмов обеспечения отказоустойчивости в процессе репликации DIR. Тем не менее, репликация DIR/MRC всё ещё имеет статус экспериментальной возможности;
- Из областей, которые могут оказаться интересны для реализации силами сообщества отмечаются поддержка интеграции с chef или puppet для автоматизации развёртывания XtreemFS; разработка клиентского GUI на Qt; создание на базе libxtreemfs интерфейса, совместимого с API Amazon S3; интеграция с Qemu/KVM на базе C++ версии библиотеки libxtreemfs.
URL: http://xtreemfs.blogspot.ru/2012/11/xtreemfs-14-released-at-...
Новость: http://www.opennet.me/opennews/art.shtml?num=35328