Разделы презентаций


www.synerdocs.ru Использование Ceph для организации файлового хранилища

Содержание

О продукте

Слайды и текст этой презентации

Слайд 1www.synerdocs.ru
Использование Ceph для организации
файлового хранилища

www.synerdocs.ruИспользование Ceph для организациифайлового хранилища

Слайд 2О продукте

О продукте

Слайд 4Содержание доклада
Предпосылки внедрения ФХ
Варианты решений для ФХ
Ceph:
кратко о системе;
варианты установки;
принцип

работы;
администрирование кластера.
Резюме

Содержание докладаПредпосылки внедрения ФХВарианты решений для ФХCeph:кратко о системе;варианты установки;принцип работы;администрирование кластера.Резюме

Слайд 5Предпосылки внедрения ФХ в архитектуру

Предпосылки внедрения ФХ в архитектуру

Слайд 6Инфраструктура до
Ферма серверов приложений
Отказоустойчивый кластер СУБД

Инфраструктура доФерма серверов приложенийОтказоустойчивый кластер СУБД

Слайд 760% объема – тела документов
БД сервиса

60% объема – тела документовБД сервиса

Слайд 8Инфраструктура после
Ферма серверов приложений
Отказоустойчивый кластер СУБД
...

Инфраструктура послеФерма серверов приложенийОтказоустойчивый кластер СУБД...

Слайд 9Варианты решений для ФХ

Варианты решений для ФХ

Слайд 10Требования
Распределенность
Скорость
Репликация данных
Отказоустойчивость

ТребованияРаспределенностьСкоростьРепликация данныхОтказоустойчивость

Слайд 11Сравнение скоростей
Физический сервер – источник файлов
SSD диск
vm – SMB-шара
Анализируемый кластер
Физический сервер

Сравнение скоростейФизический сервер – источник файловSSD дискvm – SMB-шараАнализируемый кластерФизический сервер

Слайд 12GlusterFS
Последовательное копирование нескольких файлов по ~10 Гб:
копирование в GlusterFS

в 5-10 раз медленнее копирования в SMB-шару.

Копирование большого количества

мелких файлов не проверяли.

GlusterFSПоследовательное копирование нескольких файлов по ~10 Гб: копирование в GlusterFS в 5-10 раз медленнее копирования в SMB-шару.

Слайд 13rsync
Последовательное копирование нескольких небольших (мегабайты) и нескольких мелких (килобайты) файлов:
rsync успевал

реплицировать данные с задержкой менее минуты.


rsyncПоследовательное копирование нескольких небольших (мегабайты) и нескольких мелких (килобайты) файлов:rsync успевал реплицировать данные с задержкой менее минуты.

Слайд 14До окончания цикла из 10 повторений rsync ни разу не доживал
rsync
*
.
txt
1
Кб
5


Кб
10
Кб
20
КБ
30
Кб

100
Кб
200
Кб
300
КБ

1
Мб
5
Мб
10
Мб
20


Мб

30

Мб

40

Мб

50

Мб

...

*

.

txt

1

Кб

5

Кб

10

Кб

20

КБ

30

Кб


100

Кб

200

Кб

300

КБ


1

Мб

5

Мб

10

Мб

20

Мб

30

Мб

40

Мб

50

Мб

*

.

txt

1

Кб

5

Кб

10

Кб

20

КБ

30

Кб


100

Кб

200

Кб

300

КБ


1

Мб

5

Мб

10

Мб

20

Мб

30

Мб

40

Мб

50

Мб

10 последовательных
повторений

10 параллельных потоков

10 последовательных
повторений

10 последовательных
повторений

До окончания цикла из 10 повторений rsync ни разу не доживалrsync*.txt1 Кб5 Кб10 Кб20 КБ30 Кб…100 Кб200

Слайд 15Варианты доступа к данным в Ceph:
Ceph Object Gateway (S3/Swift-совместимое API);
CephFS

– POSIX-совместимая файловая система;
Ceph Block Device (RBD – RADOS Block

Device).

Ceph

Варианты доступа к данным в Ceph:Ceph Object Gateway (S3/Swift-совместимое API);CephFS – POSIX-совместимая файловая система;Ceph Block Device (RBD

Слайд 16Не было времени для реализации поддержки S3.
Ceph + Object Gateway

Не было времени для реализации поддержки S3.Ceph + Object Gateway

Слайд 17Последовательное копирование нескольких файлов по ~10 Гб:
копирование в CephFS

в 2-3 раза медленнее копирования в SMB-шару.
Копирование большого количества мелких

файлов не проверяли.

CephFS не была заявлена как решение для продуктивных сред из-за сырой реализации.

Ceph + CephFS

Последовательное копирование нескольких файлов по ~10 Гб: копирование в CephFS в 2-3 раза медленнее копирования в SMB-шару.

Слайд 18Скорость записи в кластер соизмерима со скоростью записи в SMB-шару.
Ceph

+ RBD

Скорость записи в кластер соизмерима со скоростью записи в SMB-шару.Ceph + RBD

Слайд 19Ceph + RBD

Ceph + RBD

Слайд 20Что такое Ceph
Ceph – сеть хранения данных. На каждом узле

сети используются свои вычислительные ресурсы для управлением данными.

RADOS (Reliable Autonomic

Distributed Object Store) – утилита для взаимодействия компонентов кластера Ceph, его неотъемлемая подкапотная часть.
Что такое CephCeph – сеть хранения данных. На каждом узле сети используются свои вычислительные ресурсы для управлением

Слайд 21MON – демон монитора, серверы с MON - мозги кластера.

MON должно быть минимум 3 штуки. Кластер работает, пока доступных MON

> 50%.

OSD – демон хранения данных, управляет пространством на диске.

Pool – виртуальная группа для «определения» данных «одного хранилища».

Object – набор данных фиксированного размера. Все попадающие в Ceph данные распределяются по Objects.

PG (Placement Group) – ячейка кластера Ceph, Objects хранятся в PG, а уже PG распределяются по OSD.

Основные сущности Ceph

MON – демон монитора, серверы с MON - мозги кластера. MON должно быть минимум 3 штуки. Кластер

Слайд 22Описание с картинками: https://habr.com/post/313644/
Все записываемые данные «складируются» в PG.
Пулы данных

состоят из PG.
PG распределяются по OSD.
Картинки из Интернета

Описание с картинками: https://habr.com/post/313644/Все записываемые данные «складируются» в PG.Пулы данных состоят из PG.PG распределяются по OSD.Картинки из

Слайд 23Варианты установки

Варианты установки

Слайд 24[global]
mon_initial_members = admin-node, node01, node02
mon_host = 192.168.1.10:6789, 192.168.1.11:6789, 192.168.1.12:6789
auth_cluster_required =

cephx
auth_service_required = cephx
auth_client_required = cephx
ceph.mon.keyring
ceph.conf:
На отдельном сервере admin-node папка /opt/my_cluster
ceph-deploy

new admin-node node01 node02

Создание кластера (объявление мониторов):

ceph-deploy

[global]mon_initial_members = admin-node, node01, node02mon_host = 192.168.1.10:6789, 192.168.1.11:6789, 192.168.1.12:6789auth_cluster_required = cephxauth_service_required = cephxauth_client_required = cephxceph.mon.keyringceph.conf:На отдельном сервере

Слайд 25ceph-deploy mon create-initial
Инициализация кластера:
ceph-deploy install admin-node node01 node02 node03 node04
Установка

ПО Ceph на все будущие ноды и мониторы кластера:
ceph-deploy

ceph-deploy mon create-initialИнициализация кластера:ceph-deploy install admin-node node01 node02 node03 node04Установка ПО Ceph на все будущие ноды и

Слайд 26ceph-deploy admin admin-node node01 node02 node03 node04
Добавление нод в кластер:
ceph-deploy

osd create --data /dev/vda node01
ceph-deploy osd create --data /dev/vdb node01

ceph-deploy

osd create --data /dev/vda node02

Добавить OSD:

ceph-deploy

ceph-deploy admin admin-node node01 node02 node03 node04Добавление нод в кластер:ceph-deploy osd create --data /dev/vda node01ceph-deploy osd create

Слайд 27Репликация:
другое здание/помещение;
другая стойка;
другая нода;
OSD с наибольшим весом*;
OSD с наибольшим свободным

местом;
случайный выбор.
* Данный параметр рассчитывается автоматически исходя из распределения размеров

OSD в рамках одной ноды. Его можно корректировать, но не стоит.

CRUSH (controlled replication under scalable hashing) – алгоритм распределения реплик PG по OSD.

Реплики PG

Репликация:другое здание/помещение;другая стойка;другая нода;OSD с наибольшим весом*;OSD с наибольшим свободным местом;случайный выбор.* Данный параметр рассчитывается автоматически исходя

Слайд 28Советы по работе с OSD
Иметь равное количество OSD на всех

нодах.
«Набор» размеров OSD на каждой ноде должен быть одинаковым.
Для увеличения

размера кластера лучше добавлять новые OSD, чем увеличивать размер текущих.
Советы по работе с OSDИметь равное количество OSD на всех нодах.«Набор» размеров OSD на каждой ноде должен

Слайд 29Для настройки RBD в пуле данных используется сущность Image.
Маппинг RBD

происходит именно в Image.
В примере: имя пула = documents, имя

образа = data

ceph osd pool create documents 128 128

RBD (RADOS Block Device) – абстракция блочного устройства, через которое реализован доступ к данным внутри кластера Ceph.

rbd create --size 1000G documents/data

Пул и образ данных

Для настройки RBD в пуле данных используется сущность Image.Маппинг RBD происходит именно в Image.В примере: имя пула

Слайд 30rbd map --pool documents --image data
ceph-deploy install client
ceph-deploy admin client

Для

подключения RBD лучше использовать отдельную машину (client). Установить на нее

Ceph и ввести в кластер:

Создать RBD:

/dev/rbd0

mount /dev/rbd0 /mnt/documents

mkfs.xfs /dev/rbd0

Подключение RBD

rbd map --pool documents --image dataceph-deploy install clientceph-deploy admin clientДля подключения RBD лучше использовать отдельную машину (client).

Слайд 31Схема кластера
admin-node
node01
node02
osd.0
osd.1
osd.2
osd.3
client
node03
node04
osd.4
osd.5
osd.6
osd.7
/dev/rbd0

Схема кластераadmin-nodenode01node02osd.0osd.1osd.2osd.3clientnode03node04osd.4osd.5osd.6osd.7/dev/rbd0

Слайд 32Размер RBD-образа не зависит от фактического суммарного объема OSD.
Фактический суммарный

объем всех OSD должен быть ВСЕГДА больше суммарного заданного объема

всех пулов (образов).

Заданный размер образа достигается постепенно по мере наполнения хранилища данными.

Если при итерации увеличения размера образа фактическое суммарное свободное место на всех OSD закончится -> данные утеряны навсегда.

Увеличение максимального размера RBD-образа необходимо делать заранее: при 80% заполнения или раньше.

Размеры пулов (образов)

Размер RBD-образа не зависит от фактического суммарного объема OSD.Фактический суммарный объем всех OSD должен быть ВСЕГДА больше

Слайд 33При выходе из строя или недоступности OSD кластер автоматически начинает

перебалансировку потерянных PG.
Перед работами на нодах необходимо включать режим обслуживания

кластера:

ceph osd set noout

Выход из режима обслуживания:

ceph osd unset noout

Режим обслуживания

При выходе из строя или недоступности OSD кластер автоматически начинает перебалансировку потерянных PG.Перед работами на нодах необходимо

Слайд 34Указать новый максимальный размер образа (только вверх и надо учесть

количество реплик):
rbd resize --size 1390G --pool documents --image data
Подключить новые

диски к нодам, добавить их в Ceph (например 4 диска по 300 Гб):

ceph-deploy osd create --data /dev/vdc node01
ceph-deploy osd create --data /dev/vdc node02


Проверка:

rbd info --pool documents --image data
fdisk –l #на client

Актуализировать размер на точке монтирования:

xfs_growfs /mnt/documents/

Увеличение RBD-образа

Указать новый максимальный размер образа (только вверх и надо учесть количество реплик):rbd resize --size 1390G --pool documents

Слайд 35Цель – всегда иметь запас места на перебалансировку в случае

смерти одной ноды.
Легенда: 4 ноды по N OSD на каждой.
Шаг

1. Определить ноду, на которой самый большой объем занятого места на всех ее OSD (V1).
Шаг 2. Среди оставшихся 3 нод определить ту, на которой меньше всего свободного места (V2).
Шаг 3. D = V2 – V1/3

Если D < 50 Гб, то пора добавлять OSD.

Мониторинг места на OSD

Цель – всегда иметь запас места на перебалансировку в случае смерти одной ноды.Легенда: 4 ноды по N

Слайд 36Плюсы:
легко устанавливается и настраивается;
быстрый;
легко масштабируется;
достаточное количество команд CLI для диагностики

состояния кластера и управления им.

Минусы:
огромное количество недокументированных параметров для тонкой

настройки (~1500 штук);
много противоречивой информации о настройках в разных источниках;
необходимо тщательно следить за статистикой наполнения пулов и свободным местом на OSD.

Резюме по Ceph

Плюсы:легко устанавливается и настраивается;быстрый;легко масштабируется;достаточное количество команд CLI для диагностики состояния кластера и управления им.Минусы:огромное количество недокументированных

Слайд 37Хранить бинарный контент в БД считается моветоном.
Подавляющую часть нашего бинарного

контента (тела документов) мы вынесли в ФХ.
Основная цель переноса тел

документов в ФХ – разгрузка БД:
увеличилась производительность СУБД на прежних мощностях;
уменьшилось время конвертации таблиц.
Тонкая настройка производительности.
Не надо платить за лицензии на ядрышки ЦП для СУБД.

Резюме по ФХ

Хранить бинарный контент в БД считается моветоном.Подавляющую часть нашего бинарного контента (тела документов) мы вынесли в ФХ.Основная

Слайд 38https://docs.ceph.com/docs/master/
https://t.me/ceph_ru
http://onreader.mdl.ru/MasteringCeph/content/Ch01.html
Google + Яндекс
Где искать помощь
http://onreader.mdl.ru/MasteringCeph.2ed/content/Ch01.html

https://docs.ceph.com/docs/master/https://t.me/ceph_ruhttp://onreader.mdl.ru/MasteringCeph/content/Ch01.htmlGoogle + ЯндексГде искать помощьhttp://onreader.mdl.ru/MasteringCeph.2ed/content/Ch01.html

Слайд 39www.synerdocs.ru
Ceph есть в Synerdocs и Yahoo!, а у Вас?
Евгений Корляков korlyakov_es@synerdocs.ru

www.synerdocs.ruCeph есть в Synerdocs и Yahoo!, а у Вас?Евгений Корляков korlyakov_es@synerdocs.ru

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика