Что такое GlusterFS

Обновлено Обновлено: Опубликовано Опубликовано:

GlusterFS —
простыми словами

распределенная файловая система, то есть, файловая система, которая может быть размазана по разным серверам с целью защиты от сбоев и/или повышения производительности дисковой системы. Разработана компанией Gluster Inc на языке Си.

Обладает следующими преимуществами:

  • Отказоустойчивость.
  • Масштабируемость.
  • Высокая скорость работы.

Имеет клиент-серверную архитектуру. На стороне сервера работает демон glusterfsd. На стороне клиента запускается процесс glusterfs, который подключается по сети к серверам и объединяет все серверные тома в один том и монтирует его при помощи модуля FUSE (filesystem in userspace). Безопасность подключения мы можем настроить с помощью опции auth.allow на стороне сервера.

Так как доступ к дисковым томам осуществляется по сети, для работы распределенная файловая система использует следующие порты:

Порт Назначение
24007/tcp Для сервиса glusterfsd
24008/tcp Порт для управления
24009/tcp и выше (GlusterFS 3.4 и ниже) Для каждого кирпичика (brick или основной единицы хранения в GlusterFS) требуется свой порт
49152/tcp и выше (GlusterFS 3.4 и выше)
38465-38467/tcp Для Gluster NFS
111/udp Для сопоставления портов

GlusterFS позволяет создать следующие типы томов:

  1. Distributed (Распределенный). Файлы раскиданы по серверам без дублирования. Дает хорошую производительность, но без резервирования данных.
  2. Replicated (С репликацией). Данные дублируются на других серверах. Применяется, где нужна высокая доступность.
  3. Distributed Replicated (Распределенный с репликацией). Данные раскиданы по серверам, но с дублированием. Хорошая производительность на чтение + отказоустойчивость.
  4. Dispersed (Рассредоточенный). Данные дублируются, но создается не копия файла, а фрагмент, которого достаточно для восстановления исходного файла. Является экономным вариантом распределенного тома.
  5. Distributed Dispersed (Распределенный рассредоточенный). Распределение файлов по серверам с дублированием за счет сохранения не копии файлов, а части, необъходимой для восстановления информации.

* есть еще несколько других типов, которые разработчик объявил устаревшими.

Примеры использования GlusterFS:

  • Хранение контейнеров кластеров Kubernetes.
  • Создание общего тома для кластеров виртуализации с системой управления Proxmox VE или oVirt.

Установку GlusterFS можно выполнить из репозитория на системы семейства Linux (Ubuntu, Debian, CentOS, Red Hat и так далее), BSD, Mac OS.

Среди аналогов можно выделить:

  1. Ceph. Обработка данных и метаданных выполняется на разных серверах.
  2. Lustre. Как и в Ceph, использует разные серверы для обработки метаданных и данных.
  3. BeeGFS. Оптимизированная для высокопроизводительных вычислений.
  4. GFS (Google File System). Оптимизирована для нужд операционной системы.

В сравнении с Lustre и Ceph, для GlusterFS не требуется отдельного сервера для хранения метаданных. Также GlusterFS работает поверх файловых систем, используя FUSE и не размазывает файлы по серверам, храня их целиком.

Еще немного о GlusterFS на Википедии.

Официальная документация доступна на сайте разработчика.



Дмитрий Моск
— IT-специалист.
Настройка серверов, услуги DevOps.

Другие термины

TeamCity   Maven   GPT (диск)   SSD   NET Framework   Samba   VMware   MX-запись   WordPress   RAW   Redis   Remote Desktop Gateway   Redmine   Чипсет   Kubernetes   OpenVZ   PTR-запись   RAW (формат)   Mail.ru   ISO-образ  
.....

Реклама