Использование сырого хранилища Ceph по сравнению с использованием пула - PullRequest
0 голосов
/ 25 июня 2018

Я новый пользователь Ceph.

Мой сервер Ceph работает под управлением версии 12.2.5.У этого есть 3 узла, и у каждого узла есть 1 OSD с HDD на 4 ТБ.

ceph.conf

osd pool default size     = 3
osd pool default min size = 2

Я загрузил 252 ГБ данных в Ceph.

Насколько я понимаю, использование сырой памяти должно быть примерно в 3 раза из-за установки osd pool default size = 3.

Но теперь мои глобальные необработанные хранилища почти в 6 раз превышают мои данные (1605 ГБ / 252 ГБ = 6,3)

GLOBAL:
    SIZE       AVAIL     RAW USED     %RAW USED
    11165G     9560G        1605G         14.38
POOLS:
    NAME                          ID     USED      %USED     MAX AVAIL     OBJECTS
    .rgw.root                     8       1113         0         3000G           4
    default.rgw.control           9          0         0         3000G           8
    default.rgw.meta              10     21502         0         3000G          72
    default.rgw.log               11         0         0         3000G         269
    default.rgw.buckets.index     15         0         0         3000G         427
    default.rgw.buckets.data      16      256G      7.88         3000G     6522963

У кого-нибудь есть такая же проблема на Ceph?

Обновление

Думаю, я выяснил причину.Большая часть моего файла - небольшой файл, но в Ceph версии 12.2.5 (bluestore) bluestore имеет минимальный размер выделения bluestore_min_alloc_size_hdd = 65536, поэтому, если файл меньше 64 КБ, он все равно использует 64 КБ для его хранения.

Я протестировал загрузку 2000 файлов (каждая по 64 КБ) и 3200 файлов (каждая по 40 КБ), общий объем около 128 МБ

Исходное использование файла 64 КБ составляет 410 МБ, что близко к 384 МБ (2000 * 64 К * 3) * 1028.*

Исходное использование файла 40 КБ составляет 602 МБ, близко к 614 МБ (3200 * 64 К * 3)

1 Ответ

0 голосов
/ 21 января 2019

У меня та же проблема.Я понял это только после создания бассейна.Вы можете изменить min_alloc на 4096, но я не знаю, как это будет работать для вас.Я бы посоветовал хотя бы пойти на полпути к 32к или 16к, но не ниже.

...