Авторские статьи

Фрагментация файловых систем Linux.


Есть стойкий миф про файловые системы Linux: "это вам не винда и тут дефрагментатор не нужен!" Если быть перед собой честным, то стоит признать факт - файловые системы в linux менее подвержены фрагментации файлов на них, по сравнению с NTFS, но всё-таки она есть.

Когда осваивали с коллегами Ceph, то его мануал HARD DISK AND FILE SYSTEM RECOMMENDATIONS был определяющим при выборе файловой системы. Давайте будем честными. Если вам разработчик рекомендует что-то, то это почти приказ-указание. Ну кто хочет огрести не нужные проблемы в будущем, отклонившись от генеральной линии партии? Везде XFS в рекомендациях. Ну XFS так XFS. Что знал про неё? Мало. Сделана в Silicon Graphics и хороша при работе с огромными файлами.

После того как файловая система XFS была создана на всех дисках, хранящие данные Ceph, прошёл уже почти год. Признаюсь честно, но в суете админских дней, я забыл промониторить сей момент, вынесенный в название темы. Пялясь в систему мониторинга, которая рисовала графики команды ceph osd perf, в голову и пришла мысль, а что там с фрагментацией файлов? В Ceph всё представлено в виде объектов и на дисках они лежат, естественно, в виде файлов, но со своими именами-идентификаторами. В основном размер у большинства файлов составляет 4194304 байта. Небольшой размер намекает, что это не конёк файловой системы XFS, но, возможно, экстенты (extents), хранящие так же блоками свободные участки, и отложенное выделение места (delayed allocation) удержат процент фрагментации в разумном пределе.

      

xfs_db -r -c frag /dev/имя-раздела-xfs выдало fragmentation factor 35-38% у всех разделов XFS. Вот тебе, бабушка, и Юрьев день! Это при том, что вставлены 3 Тб диски и они полупустые, так как Ceph, избегая точки отказа в виде диска и сервера, равномерно "размазывает" информацию по всему кластеру.

Filesystem      Size  Used Avail Use% Mounted on
/dev/sdc1       2,8T  716G  2,1T  26% /mnt/d2
/dev/sdd1       2,8T  797G  2,0T  29% /mnt/d3

Для онлайн дефрагментации XFS разделов есть утилита xfs_fsr. После её работы резко упал fragmentation factor, что почти моментально благоприятно отразилось на моём графике Ceph HDD Latency в Zabbix. Осталось запихать вызов xfs_fsr в crontab и забыть о фрагментации файлов на разделах XFS. Кто бы ещё купил SSD для радикального уменьшения latency?

А ваша ext4 фрагментирована? sudo e4defrag -c /dev/sda1

Дата последней правки: 2016-06-08 10:37:32

RSS vasilisc.com   


Разделы

Главная
Новости
Ворох бумаг
Видео Linux
Игры в Linux
Безопасность
Статьи об Astra Linux
Статьи о FreeBSD
Статьи об Ubuntu
Статьи о Snappy
Статьи об Ubuntu Phone
Статьи о Kubuntu
Статьи о Xubuntu
Статьи о Lubuntu
Статьи об Open Source
Карта сайта