Анонсирован первый выпуск проекта LibreS3, в рамках которого развивается открытая реализация облачного сервиса хранения Amazon S3. LibreS3 позволяет развернуть на своих серверах сервис хранения данных, полностью совместимый с клиентскими библиотеками для Amazon S3 и построенными на их основе инструментами, такими как python-boto, s3cmd и DragonDisk. Исходные тексты LibreS3 написаны на языках Си и OCaml, код распространяется под лицензией GPLv2 (библиотеки под LGPL). Платформа может быть использована в Linux, OS X и различных BSD-системах.
Стоит отметить, что проект развивается командой разработчиков, в своё время покинувших проект ClamAV для развития своих новых идей. Среди разработчиков Skylable числятся Томаш Койм (Tomasz Kojm), основатель свободного антивирусного пакета ClamAV, и ещё три разработчика, стоящих у истоков проекта.
Для организации хранения данных на группе серверов применяется распределённое кластерное хранилище Skylable Sx, первый выпуск которого представлен одновременно с LibreS3. Skylable Sx также является свободным проектом и берёт на себя выполнение задач по репликации данных между узлами и дедупликации идентичных данных на разных узлах кластера. Skylable Sx позволяет объединить в единое виртуальное хранилище дисковое пространство с нескольких серверов. Для обеспечения отказоустойчивости и сохранности информации наборы данных реплицируются на несколько разных серверов. Число копий, которые будут храниться на разных серверах, определяются администратором при конфигурации системы.
Для защиты данных применяется техника шифрования на стороне клиента, при которой на серверы системы информация поступает уже в зашифрованном виде, что исключает перехват данных в случае получения спецслужбами или злоумышленниками доступа к серверам хранения. Кроме того, опционально может быть использовано шифрование разделов на серверах, но в этом случае теряется эффективность от использования дедупликации. Обмен данными между клиентом и сервером и между узлами шифруется с использованием HTTPS. Для экономии дискового пространства используется сжатие данных на лету.
Skylable Sx состоит из следующих компонентов:
sxhttpd - демон, обслуживающий запросы по протоколу HTTP, используемому как для обращения клиентов, так и для взаимодействия узлов хранения.
sx.fcgi - работающий с использованием FastCGI процесс, непосредственно обрабатывающий запросы и распределяющий их среди дочерних процессов-обработчиков:
Менеджер выполнения работ - планирует передачу блоков данных и выполняет команды администрирования);
Менеджер передачи блоков данных - передаёт данные между узлами хранения и отдаёт данные клиентам;
Сборщик мусора - выполняет поиск и чистку блоков данных, потерявших актуальность или не связанных с файлами.