ceph (программа)
Последнее изменение этой страницы: 10:13, 10 июня 2017.
![]() | |
Создатели: | Inktank Storage (Sage Wei], Yehuda Sadeh Weinraub, Gregory Farnum, Josh Durgin, Samuel Just, Wido den Hollander) |
---|---|
Разработчики: |
Canonical Ltd CERN Cisco Systems, Inc. Fujitsu Ltd. Intel Corporation Red Hat, Inc. SanDisk Corporation SUSE[1] |
Постоянный выпуск: | 9.2.0 "Infernalis"[2] / 6 November 2015 года |
Написана на: | C++, Python[citation needed] |
Операционная система: | Linux |
Тип ПО: | Distributed object store |
Лицензия: | LGPL 2.1[3] |
Веб-сайт |
ceph |
Ceph - это масштабируемое петабайтное хранилище с открытым исходным кодом, в основе которого лежит принцип объединения дисковых пространств серверов в единое объектное хранилище, что позволяет реализовать гибкую многократную псевдослучайную избыточность данных[4].
История
Разработка Ceph была начата Сейдж Вейлем (Sage Weil) в Калифорнийском Университете в Санта-Круз (University of California, Santa Cruz - UCSC) как исследовательский проект по системам хранения данных, выполняемый на звание доктора философии, с участием Ливерморской Национальной лаборатории, Лос-Аламосской Национальной лаборатории, и Сандийской Национальной лаборатории (СНЛ)[5]. После его окончания осенью 2007 года, Вейль продолжал работать над Ceph, и основная команда разработчиков расширилась. В 2012 году Вейль создал Inktank хранения на профессиональные услуги и поддержку для Ceph.Но уже с конца марта 2010 года вы можете обнаружить Ceph в основной ветке ядра Linux (с версии 2.6.34). Хотя система Ceph, возможно, еще не готова для промышленной эксплуатации, она по-прежнему интересна с точки зрения ее оценки.
Архитектура
Файловая система Ceph работает на базе той системы хранения объектов, которая обеспечивает хранение объектов и блокируют интерфейсы устройств . Кластер Ceph с сервером метаданных предоставляет услугу, которая сопоставляет имена каталогов и файлов файловой системы для объектов, хранящихся в RADOS кластеров. Кластер серверов метаданных могут расширяться или сужаться, и это может динамического перераспределения файловой системы для распространения данных равномерно между узлами кластера. Это обеспечивает высокую производительность и предотвращает тяжелые нагрузки на отдельных узлах кластера[6]. Ceph можно поделить на 4 части:
- Клиенты
Пользователи данных с помощью серверов метаданных выполняют операции с метаданными для определения местонахождения данных.
- Сервера метаданных
Кэшируют и синхронизируют распределенные метаданные. С помощью метаданных клиент в любой промежуток времени знает, где находятся нужные ему данные. Также сервера метаданных выполняют распределение новых данных.
- Кластер хранения объектов
В виде объектов хранятся как данные,так и метаданные.
- Кластерные мониторы
С их помощью реализуются функции мониторинга.
Фактический файловый ввод/вывод происходит между клиентом и кластером хранения объектов. Таким образом, управление высокоуровневыми функциями POSIX (открытие, закрытие и переименование) осуществляется с помощью серверов метаданных, а управление обычными функциями POSIX (чтение и запись) осуществляется непосредственно через кластер хранения объектов. Любых компонентов может быть несколько, в зависимости от стоящих перед администратором задач. Файловая система может быть подключена как напрямую, с помощью модуля ядра, так через FUSE. С точки зрения пользователя, файловая система Ceph является прозрачной. Они просто имеют доступ к огромной системе хранения данных и не осведомлены об используемых для этого серверах метаданных, мониторах и отдельных устройствах, составляющих массивный пул системы хранения данных. Пользователи просто видят точку монтирования, в которой могут быть выполнены стандартные операции файлового ввода / вывода. С точки зрения администратора имеется возможность прозрачно расширить кластер, добавив сколько угодно необходимых компонентов, мониторов, хранилищ, серверов метаданных.
Ceph предоставляет на выбор три различных абстракции для работы с хранилищем: абстракцию объектного хранилища (RADOS Gateway), блочного устройства (RADOS Block Device) или POSIX-совместимой файловой системы (CephFS):
- RADOS Gateway
Абстракция объектного хранилища (RADOS Gateway, или RGW) вкупе с FastCGI-сервером позволяет использовать Ceph для хранения пользовательских объектов и предоставляет API, совместимый с S3/Swift. В режиме объектного хранилища Ceph давно и успешно используется в производстве у ряда компаний. Библиотеки Ceph обеспечивают клиентским приложениям прямой доступ к RADOS объектно-ориентированным системам хранения, а также обеспечивают основу для некоторых расширенных функций Ceph, в том числе для устройств RADOS Block Device (RBD), RADOS Gateway, и the Ceph File System.
- RADOS Block Device
Абстракция блочного устройства (в оригинале — RADOS Block Device, или RBD) предоставляет пользователю возможность создавать и использовать виртуальные блочные устройства произвольного размера. Программный интерфейс RBD позволяет работать с этими устройствами в режиме чтения/записи и выполнять служебные операции — изменение размера, клонирование, создание и возврат к снимку состояния и т.д. Гипервизор QEMU содержит драйвер для работы с Ceph и обеспечивает виртуальным машинам доступ к блочным устройствам RBD. Поэтому Ceph сейчас поддерживается во всех популярных решениях для оркестровки облаков — OpenStack, CloudStack, ProxMox. RBD также готов к промышленному использованию.
- CephFS
Это POSIX-совместимая файловая система, использующая Ceph в качестве хранилища. Несмотря на то, что CephFS не является production-ready и пока не имеет значимого промышленного применения. Система хранения объектов Ceph предлагает существенную особенность по сравнению со многими системами хранения объектов сегодня: Ceph обеспечивает традиционной файловой системы интерфейс с семантикой posix. Системы хранения объектов являются значительной инновацией, и они дополняют, а не заменяют традиционные файловые системы. Поскольку требования к системам хранения растут для старых приложений, организации могут настроить свои унаследованные приложения для использования файловой системы Ceph тоже. Это означает, что вы можете запустить один кластер для хранения объекта, блок и файловое хранилище данных.
Пример установки
Особенности
- Ceph обеспечивает более высокий уровень безопасности данных для критически важных приложений
- Она предоставляет практически неограниченное пространство для хранения данных в файловых системах
- Приложениям, которыми пользуются файловыми системами, можно использовать системы ceph FS с семантики posix, ибо никакой интеграции или настройки не требуется
- Ceph автоматически распределяет файловую систему для обеспечения максимальной производительности
Примечания
- ↑ "Ceph Community Forms Advisory Board". 2015-10-28. Retrieved 2016-01-20.
- ↑ "v9.2.0 Infernalis released".
- ↑ "LGPL2.1 license file in the Ceph sources". 2014-10-24. Retrieved 2014-10-24.
- ↑ Ceph [Электронный ресурс]: Ceph / Дата обращения: 09.07.2016. — Режим доступа: http://ceph.com
- ↑ Ceph: Распределенная файловая система петабайтных масштабов для Linux [Электронный ресурс] : Материал из http://rus-linux.net/: — Режим доступа: http://rus-linux.net/nlib.php?name=/MyLDP/file-sys/ceph/ceph.html
- ↑ Хабрахабр [Электронный ресурс]: Ceph: Cloud Storage без компромиссов / Дата обращения: 10.07.2016. — Режим доступа: https://habrahabr.ru/company/performix/blog/218065/
ISSN 2542-0356
Следуй за Полисом
Оставайся в курсе последних событий
Лицензия
Если не указано иное, содержание этой страницы доступно по лицензии Creative Commons «Attribution-NonCommercial-NoDerivatives» 4.0, а примеры кода – по лицензии Apache 2.0. Подробнее см. Условия использования.