FastCFS — высокоэффективная распределённая файловая система общего назначения для баз данных, Kubernetes и KVM и т.д.
Английский | Китайский
1. Описание
FastCFS — это распределённая файловая система с сильной согласованностью, высокой производительностью и надёжностью, поддерживающая работу с миллиардами больших файлов.
FastCFS может использоваться в качестве основного хранилища для баз данных (MySQL, PostgreSQL, Oracle и т.д.), Kubernetes, KVM, FTP, SMB и NFS.
Основные возможности
- Высокая производительность при условии сильной согласованности данных: производительность выше, чем у Ceph
- Полная совместимость с POSIX, поддержка блокировки файлов и работы с миллиардами больших файлов
- Высокий уровень доступности: отсутствие единой точки отказа и автоматическое восстановление после отказа
- Простота использования:
- простая и эффективная архитектура и нативная реализация
- независимость от сторонних компонентов
- встроенные средства управления и обслуживания
- Высокая производительность случайных записей: FastCFS выделяет место на основе ствола файла, преобразует случайные записи клиентов в последовательные записи
Классическая сцена применения* Базы данных: поддерживает два метода хранения (обычное эксклюзивное хранение данных и высокоуровневое совместное использование данных) и облачное решение для баз данных
-
Хранение файлов: документы, изображения, видео и т.д.; FastCFS проще интегрировать с общими программами, чем объектное хранение
-
Единое хранение: базы данных и хранение файлов используют одинаковый кластер хранения, что значительно повышает использование ресурсов хранения
-
Высокопроизводительные вычисления: FastCFS с высокой надежностью и производительностью естественно подходят для сцен высокопроизводительных вычислений
-
Видеонаблюдение: плавная запись нескольких каналов видео с жестких дисков типа SATA благодаря тому, что FastCFS использует последовательные записи## 2. Текущая версия: V5.3.3
3. Поддерживаемые платформы
- Linux: версия ядра ≥ 3.10 (полная поддержка, рекомендуются версии ≥ 4.18)
- macOS или FreeBSD (только серверная сторона)
4. Внешние зависимости
5. Установка
5.1 Самостоятельная установка
Вы можете использовать инструмент управления кластером Cluster Operation Tool для развертывания FastCFS.
Шаг за шагом см. INSTALL.
Рекомендуется выполнить libfuse_setup.sh
для компиляции и установки libfuse.
5.2 Лёгкая установка
Libfastcommon, libserverframe, fastDIR, faststore и FastCFS могут быть скомпилированы, установлены и автоматически настроены с помощью fastcfs.sh
.
fastcfs.sh
может автоматически вытянуть или обновить код шести вышеупомянутых проектов с GitHub, скомпилировать и установить в соответствии с порядком зависимостей, а также автоматически сгенерировать конфигурационные файлы, связанные с кластером, согласно шаблонам конфигураций.```bash
git clone https://github.com/happyfish100/FastCFS.git; cd FastCFS/
Использование `fastcfs.sh`:
```bash
* Установка: вытягивание/обновление кода с Gitee, затем компиляция и установка
* Конфигурация: копирование конфигурационных файлов и их настройка локальным IP
* Запуск | Остановка | Перезапуск: для контроля процессов службы
Один клик для создания (развертки и запуска) демонстрационной среды одиночного узла (ДОЛЖЕН выполняться от имени root):
или выполните следующие команды (ДОЛЖНЫ выполняться от имени root):
./fastcfs.sh install
./fastcfs.sh config --force
./fastcfs.sh restart
теперь вы можете видеть примонтированный путь FastCFS с помощью команды:
df -h /opt/fastcfs/fuse | grep fuse
6. Бенчмарки
FastCFS имеет значительно лучшие характеристики производительности по сравнению с Ceph: соотношение операций ввода-вывода при последовательной записи составляет 6.4, при последовательном чтении — 2.2, при случайной записи — около 2.0.
7. Драйвер K8s CSI
fastcfs-csi
8. Китайские относящиеся статьи
Блог CSDN## 9. Список задач на будущее*
- [fstore] восстановление данных после отказа одного жесткого диска (выполнено)
- [fstore] после восстановления машины, мастера данных должны быть перебалансированы (выполнено)
- [fauth & fdir & fstore] выбор лидера использует принцип "большинство" для предотвращения разделения мозга (выполнено)
- [fauth & fdir & fstore] импорт публичного голосового узла в сценарии двух копий для предотвращения разделения мозга (выполнено)
- [fdir & fstore] деконфликтация бинлогов и удаление исторических данных (выполнено)
- [fdir & fstore] подтверждение большинства для обеспечения согласованности данных при отправке данных (выполнено)
- [fdir & fstore] для двух реплик, механизм подтверждения большинства при отправке данных является интеллектуальным (выполнено)
- [fstore] оптимизация производительности чтения и записи файлов (выполнено)
- [fdir & api] тест совместимости с POSIX и улучшение (выполнено)
- [fstore] плагин хранилища срезов для поддержки больших объемов данных с ограниченной памятью (выполнено)
- [все] адаптация к сети RDMA для преодоления сетевых ограничений (выполнено)
- [fdir] поддержка корзины для повторного использования, не беспокоиться случайно удалёнными файлами (в процессе)
- [все] онлайн расширение кластера
10. Поддержка бизнесаМы предоставляем услуги технической поддержки и индивидуальное развитие. Добро пожаловать к нам в WeChat или по электронной почте для обсуждения.
11. Контактная информация
Электронная почта: 384681(at)qq(dot)com
Подписка на WeChat: найдите "fastdfs" для связанных статей (только на китайском языке)
Приложение:
- Электронная почта: 384681@qq.com
- Подписка на WeChat: найдите "fastdfs" для связанных статей (только на китайском языке)
Комментарии ( 0 )