Перейти к содержанию

MooseFS

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис
Moose File System
Логотип программы Moose File System
Тип Распределённые файловые системы
Разработчик Core Technology Sp. z o.o.
Операционная система Linux, FreeBSD, NetBSD, Solaris, OpenSolaris, Mac OS X
Первый выпуск 30 мая 2008; 17 лет назад (2008-05-30)[1] (v. 1.5.0[2])
Последняя версия 3.0.116-1 (12 августа 2021; 4 года назад (2021-08-12)[3][4][5])
Тестовая версия 3.0.115-1 (12 августа 2021; 4 года назад (2021-08-12)[3][4][5])
Лицензия GNU General Public License v2
Сайт moosefs.com

MooseFS (Moose file system) — отказоустойчивая распределённая файловая система, разработанная в 2005 году в Варшаве фирмой Core Technology, главный разработчик — Якуб Крушоно-Завацкий. 5 мая 2008 года исходный код системы опубликован под лицензией GNU General Public License; выпускается также коммерческая версия, некоторые функции которой недоступны в свободной.

По строению сходна с Ceph, Lustre,GFS; выделяется ведущий узел (англ. master, он же сервер метаданных, metadata server, MDS), данные записываются на множественные узлы блоков хранения (chunk servers, CSS). Ведущий узел управляет метаинформацией о распределении блоков хранения по соответствующим CSS, количество которых может достигать нескольких сотен. Предусмотрены также узлы журналирования метаданных (metaloggers), их может быть несколько, каждый из них сохраняет изменения метаданных и может взять на себя роль ведущего узла в случае отказа основного.

Система может быть смонтирована в среде выполнения, поддерживающей FUSE, в том числе в Linux, FreeBSD, OpenSolaris, Mac OS X. Предоставляемая файловая система POSIX-совместима: поддерживает соответствующие атрибуты (разрешения, время доступа и модификации), организована в иерархическое дерево каталогов, поддерживает специальные файлы (блочных и символьных устройств, сокетов, именованных каналов), символические и жёсткие ссылки. Существует возможность ограничения доступа к файловой системе на основе IP-адреса или пароля.

Содержимое файлов, превышающих заданный размер блока (до 64 МБ) распределяется на несколько узлов блоков хранения. Для каждого файла указывается, в скольких копиях (репликах) будут хранится его блоки, в коммерческой версии вместо полных реплик блоков возможно хранение кодов избыточности.

При добавлении накопителей в узлы блоков хранения или новых узлов блоков хранения доступное пространство автоматически расширяется. Поддерживается функция мгновенных снимков файлов. При удалении файл помещается в «корзину», где хранится в течение установленного в настройках времени, лишь по истечении которого соответствующие блоки хранения очищаются. Для мониторинга реализован веб-интерфейс, предоставляющий сведения о состоянии накопителей, наличии ошибок, состоянии репликации и производительности системы.

Максимальный размер хранения — 264 байтов (16 эксбибайтов); максимальный размер отдельного файла — 257 (128 пебибайтов); максимальное количество файлов в одном экзмепляре системы — 229 (около 536 млн). Количество подключений на стороне системы не ограничено, и зависит от лимитов на файловые дескрипторы на стороне операционной системы.

В 2013 году частью польских разработчиков система была ответвлена в проект LizardFS[польск.], выпускаемый под лицензией GPLv3 и дополняющий MooseFS некоторыми функциональными возможностями.

Примечания

  1. Date of the first public release: 2008-05-30 https://github.com/moosefs/moosefs/blob/master/README.md Архивная копия от 29 апреля 2019 на Wayback Machine
  2. MooseFS 1.5 (2008-05-30) https://github.com/moosefs/moosefs/blob/master/NEWS
  3. 3,0 3,1 Support – documentation, status and best practices – MooseFS. Дата обращения: 12 апреля 2019. Архивировано 12 апреля 2019 года.
  4. 4,0 4,1 moosefs/NEWS at master · moosefs/moosefs.
  5. 5,0 5,1 Releases · moosefs/moosefs.

Ссылки