LINUX.ORG.RU
ФорумAdmin

HM-SMR устройства в самосборе, есть ли хорошие практики?

 , ,


0

3

Собственно сабж.

Даром досталось некоторое количество HM SMR дисков большой ёмкости и сейчас добываются ZONED SSD, просто для заполнения внутренней пустоты. Каких-то планов реального использования пока нет.

Диски HGST HSH721414ALN6M4, и началось всё с того что «оно новое и не работает, разберитесь». Разобрались…. диски осели у разбиральщиков.

Быстрый гуглинг показал что в общем кроме BTRFS на Linux особо ничего с HM SMR дисками не работает, и BTRFS в общем работает, но только с отдельными устройствами без возможности их объединения.

С удивлением обнаружил что OMV8 просто даёт отформатировать HM SMR устройство из веб интерфейса и всё вроде бы даже работает. Далее, я пересобрал ядро с CONFIG_BTRFS_EXPERIMENTAL=y и btrfs-progs с «configure –enable-experimental» и…. смог создать и миррор и страйп из пары дисков через веб интерфейс OMV8.

Пара слов об OMV - то что оно на мой взгляд странно отображает BTRFS-RAID1 устройство в интерфейсе - это Бог с ним, тут я понимаю что наболтосварил в ядре и тулзах и наивно хотеть нормального отображения всего этого, но в то же время OMV8, который в общем без предупреждений и оговорок в процессе (нет я не читал всю документацию, читал только то что вылезает когда нажимаешь мышкой, да я читал дебиановский отказ от гарантий…) работает с HM-SMR дисками, пытается флушить их просто dd-ша в них 10 метров мусора. Блин, нельзя в zoned-block-device так.

Опубликовал по SMB и SSH, всячески шатал… получил ro и система начала глючить. Перезагрузился, почекал как мог, вроде без проблем. Продолжаю шатать.

Собственно вопрос, может есть какие-то практики хоть какого-то практического использования дармовых HM-SMR HDD объёмом в 15-20TB и ZONED SSD?

В bcachefs всё замечательно на самом деле, но через 10 лет. В XFS всё средненько и скорее будет только хуже, f2fs в принципе имеет странную реализацию всего этого, и скорее ориентирована на ZONED SSD (или просто ориентирована вникуда), а BTRFS - она конечно наше всё, но не понятно (мне) когда зеркало переедет из experimental в прод.

В ZFS тем временем всё совсем печально, но это и не удивительно. Адепты уверенно говорят о ZFS over dm-zoned, но дальше разговоров дело не идёт.

Просто для информации немного данных о системе и ссылка на форум омв:

https://forum.openmediavault.org/index.php?thread/58304-some-problems-with-btrfs-raid1-on-zoned-devices/

root@zoned:~# btrfs filesystem usage /srv/dev-disk-by-uuid-685cae9a-20d8-4926-ba30-e2e42a0bc7cf
Overall:
Device size:                  25.47TiB
Device allocated:            366.50GiB
Device unallocated:           25.11TiB
Device missing:                  0.00B
Device slack:                    0.00B
Device zone unusable:        214.55MiB
Device zone size:            256.00MiB
Used:                        361.68GiB
Free (estimated):             12.56TiB      (min: 12.56TiB)
Free (statfs, df):            12.56TiB
Data ratio:                       2.00
Metadata ratio:                   2.00
Global reserve:              243.58MiB      (used: 0.00B)
Multiple profiles:                  no


Data,RAID1: Size:182.50GiB, Used:180.58GiB (98.95%)
/dev/sda      182.75GiB
/dev/sdc      182.75GiB


Metadata,RAID1: Size:512.00MiB, Used:263.94MiB (51.55%)
/dev/sda      512.00MiB
/dev/sdc      512.00MiB


System,RAID1: Size:256.00MiB, Used:128.00KiB (0.05%)
/dev/sda      256.00MiB
/dev/sdc      256.00MiB


Unallocated:
/dev/sda       12.55TiB
/dev/sdc       12.55TiB
root@zoned:~# btrfs filesystem show
Label: none  uuid: 685cae9a-20d8-4926-ba30-e2e42a0bc7cf
Total devices 2 FS bytes used 180.84GiB
devid    1 size 12.73TiB used 183.75GiB path /dev/sda
devid    2 size 12.73TiB used 183.75GiB path /dev/sdc
root@zoned:~# btrfs --version
btrfs-progs v6.17.1
+EXPERIMENTAL -INJECT -STATIC +LZO +ZSTD +UDEV +FSVERITY +ZONED CRYPTO=builtin
root@zoned:~# dmesg | grep Btrfs
[    6.947004] Btrfs loaded, experimental=on, zoned=yes, fsverity=yes
root@zoned:~# lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sda      8:0    0 12.7T  0 disk /srv/dev-disk-by-uuid-685cae9a-20d8-4926-ba30-e2e42a0bc7cf
sdb      8:16   0 55.9G  0 disk
├─sdb1   8:17   0   53G  0 part /
├─sdb2   8:18   0    1K  0 part
└─sdb5   8:21   0  2.9G  0 part [SWAP]
sdc      8:32   0 12.7T  0 disk
root@zoned:~#


Последнее исправление: IdeaFix (всего исправлений: 2)
Ответ на: комментарий от vitruss

Проблема в другом. Эти диски нельзя отформатировать в NTFS, в ZFS, в EXT4…. только ZONED BTRFS зонами по 256 мегабайт, и там нет проблем со скоростью. Более того, там нет проблем с SMR как мне кажется. Диск просто плюётся блоками по 256MB.

Мне для расширения кругозора и самоуспокоения хочется просто не отдельный диск, а зеркало. И не рсинком, а файловой системой. Но пока создаётся впечатление, что одиночное устройство с тчоки зрения ФС надёжнее чем зеркало :)

https://zonedstorage.io/docs/filesystems немножко теории.

Т.е. (умные, не кидайтесь тапками) это такой MFM, но современный. Диск «размечен» на куски по 256MB и ими оперирует. Внутри да, дорожки, кластеры по 4кб, головки на дисках… на наружу как в эпоху MFM - куда хост положил, там и возьмёт. В этом отличие от DM-SMR.

IdeaFix
() автор топика
Последнее исправление: IdeaFix (всего исправлений: 1)
Ответ на: комментарий от IdeaFix

Чего-то я вообще отстал от жизни, думал smr диски на юзерском уровне - диски практически с одноразовой записью из-за крайне низкой скорости перезаписи. Но форматировать их все же во что угодно можно.

Или это что-то у тебя такое покалеченное?

А какая тогда на них штатная фс и сценарии использования?

anonymous
()
Ответ на: комментарий от anonymous

Вы говорите о DM-SMR, а у меня HM-SMR - это разные сорта… в первом случае диск сам решает как писать черепицу - ему хост сваливает данные как в нормальный диск, а DM-SMR устройство уже там микропрограммой, буфером и такой то матерью как-то это укладывает черепицей. Да медленно, да с проблемами но прозрачно для хоста.

В HM-SMR файловой системы в привычном понимании обычно нет. Это устройства для больших стораджей на большие сотни шпинделей. И контроллеру (серьезному программно-аппаратному комплексу) оно видится обычно как массив зон по сколько-то мегабайт. Например те диски что сейчас у меня, кажется были опцией для облачного видеохостинга HKVISION. И тут уже хост плюётся в диски кусками данных размером с зону, а SMR диск оперирует не ATA/AHCI командами на входе в устройство, а болками по 256. Удобненько… ну вернее, единственный вариант.

Зачем всё это делается? А за тем чтобы в 10 кубометров объёма влезло не 1.0x TB места, а 1.2x TB. В таком паттерне использования скорость одиночного диска или сложность контроллера уже роли не играет.

А форматировать их в файловую систему на своём локалхосте - это больше для души чем для дела. Но мало ли, может есть хорошие практики.

Всё сказанное выше - imho.

IdeaFix
() автор топика
Последнее исправление: IdeaFix (всего исправлений: 1)
Ответ на: комментарий от IdeaFix

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

Я бы поискал, вдруг кто-то все же написал драйвер, чтобы он системе представлялся как обычный диск.

anonymous
()
Ответ на: комментарий от anonymous

Ну, я поискал - драйвера написаны. Для серьёзных дядей, тётей и небинарных субъектов в ядре есть dm-zoned, для остальных - btrfs.

А полезность пачки 20TB дисков доставшихся даром - это вещь субъективная :) Не особо хочется, не особо колется, но раз в полгода-год я к ним возвращаюсь, посмотреть что поменялось. Диски производства 2020 года, у меня живут наверное года два уже. На полке.

https://zonedstorage.io/docs/device-mapper/dm-zoned - тут просто русским по белому написано «не лезь она тебя сожрёт», https://zonedstorage.io/docs/filesystems/btrfs - тут еще туда-сюда. Посмотрим, если в OMV8 сломают поддержку HM-SMR (если вдруг она появилась по недосмотру), то уже хорошо. Если починят - аще отлично.

IdeaFix
() автор топика
Последнее исправление: IdeaFix (всего исправлений: 1)
Ответ на: комментарий от IdeaFix

Хочется зеркало… или даже аналог 1E/5 на трех устройствах. Коробка удобная под это есть просто.

Но более или менее стабильно работает только профиль DUP, который делает дубль данных на ОДНОМ устройстве.

Пошатаю зеркало на BTRFS на CMR сейчас и опять уберу на полку… до следующего релиза какого-нибудь дистрибутива с наисвежайшим ядром и хоть какой-то поддержкой и роадмапом. Красноглазить на LFS уже здоровья нет.

IdeaFix
() автор топика
Ответ на: комментарий от IdeaFix

Заменил хост (переставил диски в другой комп). Пролетарский AMD-E350 (ну уж чего валялось на столе) уступил место царскому AMD A8-5500 (ну уж чего волялось под столом).

Гигабитная сеть и по SMB и по SSH стала работать со скоростью интерфейса… т.е. данные бегают в оба конца на 100+ мегабайт в секунду.

Прошлого проца реально не хватало, если SMB еще туда-сюда, то SSH уже не давал и 50 мегабайт, видимо считать сильно больше.

Даже появилась мысль воткнуть туда 2.5ГБ медный реалтек или оптический 10ГБ меланокс.

Попытаюсь снова загнать систему в readonly. Раньше получалось довольно быстро, правда проверки не показывали проблем. Сжатия, офлайн дедупа и пр. нет, от того проблем меньше чем могло бы быть.

IdeaFix
() автор топика
Ответ на: комментарий от IdeaFix

Блин, ну зачем я сделал ​mkfs.f2fs -m /dev/sdb​

Оно на первый взгляд работает просто замечательно на том же самом железе. Пошел читать как разваливается и чинится f2fs… про 16TiB ограничение в курсе.

IdeaFix
() автор топика
Ответ на: комментарий от IdeaFix

зонами по 256 мегабайт

Вспомнилось, что в TR-DOS были сектора по 256 байт, нехреновые сейчас сектора )
Я бы пробовал сначала XFS, неужели шапка не довела её до хоть какого-то состояния?

GAMer ★★★★★
()
Ответ на: комментарий от GAMer

После чтения мануалов и личных попыток мне показалось что этот вариант наверное самый «тестовый» и работает примерно как нтфс на запись во времена моего… 25 лет назад. Т.е. это можно включить, но оно развалит фс :)

Пока, если оставить dm-zoned за скобками, то получается что хуже всего дела обстоят у ZFS (разрабочики в курсе про это, но и только), потом XFS (вери экспериментал), а потом соответственно лучше всех F2FS и BTRFS.

Ну и да, F2FS имеет некоторые ограничения, делалась вообще не для того и не умеет в массивы (нет, md нельзя совместить с f2fs в данном контексте), а BTRFS то ли сломали в 6.17 то ли там что-то другое. Сейчас разделил диски на 2 группы, одна лаба на работе, вторая дома. Пространство для опытов расширилось. Пока вектора два - развалить F2FS и стабилизировать BTRFS. Если с BTRFS я хотя бы формально работал ранее и мне нравилось, то с F2FS сталкиваюсь в первый раз.

IdeaFix
() автор топика
Ответ на: комментарий от IdeaFix

А ты БТРФС на каком ядре тестировал? Я не следил так как не интересна тема таких устройств так что могу ошибаться. Кажется они в последних версиях ядра впиливают фолианты страниц, и вроде как оно много поправит в реализации рейда. И кажется что что то про зонед устройства было. Но это инфа от человека который что то там слышал.

Behem0th ★★★★★
()
Ответ на: комментарий от Behem0th

На 6.17. Откачусь на пораньше… а то в 6.17 наделали всякого. Но для начала надо убедиться что оно в ro падает на обычном гражданском диске, чтобы уж совсем не было вопросов к HM-SMR.

Тоже была надежда что новее - значит лучше, но коллеги по OMV форуму жалуются что у них всё в ro падает и на сетапах без вывертов. А разрабы OMV пеняют на Debian и предлагают (на свой страх и риск) поюзасть ядро проксмокса. Может там кактус не такой на вкус.

Меня вообще OMV как-то не приятно удивил. Мертвый форум и позиция смотрящих, что мол вот всё что не входит в наш деб-пакет это мы просто игнорируем. А то что исошку поставляем с названием своим - всё равно идите в дебиановский форум и спрашивайте там.

Пока же с F2FS я ловлю только это - https://security-tracker.debian.org/tracker/CVE-2025-68769 а в остальном всё ок.

IdeaFix
() автор топика
Последнее исправление: IdeaFix (всего исправлений: 2)
Ответ на: комментарий от anonymous

Вы пробовали? Именно с HM-SMR? Какой именно был сетап? Или какую реализацию Вы предполагаете?

[68370.115090] sd 3:0:0:0: [sdb] Write cache: disabled, read cache: enabled, doesn’t support DPO or FUA [68370.546707] sd 2:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn’t support DPO or FUA

У меня пока обратная ситуация… :) От греха подальше вовсе так.

IdeaFix
() автор топика
Последнее исправление: IdeaFix (всего исправлений: 1)
Ответ на: комментарий от IdeaFix

fsck.f2fs -p /dev/sdb на файловой системе размером 10TB+ это так волнительно. Один тред процессора из четырех утилизирован процессом проверки процентов на 75. Субъективно, система почекается где-то за час. Возможно современные процессоры считают эффективнее, но думается мне что упор в скорость диска. Нужно просто вычитать примерно 11TB.

root@zoned:~# free -m
               total        used        free      shared  buff/cache   available
Mem:            7114        1707         621           1        5035        5406
Swap:            723         720           3
root@zoned:~#

Ранее я не обращал внимания на такое, или не сталкивался реально, но вся свободная оператива «синяя» в htop. Т.е. buff/cache.

IdeaFix
() автор топика
Ответ на: комментарий от IdeaFix

Продолжаю удивляться….

  1. Искаропки OMV8 зачем-то чекает фс на старте. Пришлось договариваться с grub в /etc/defaults/grub чтобы оно не трогало файловые системы на старте, ибо четыре раза по 12.7TB (4 диска по 14TB) чекаются при полном заполнении около 10 часов…. каждый по 2.5 часа, последовательно.

  2. Пришлось ломать квоту для F2FS. настроек в инструменте монтирования нет (web gui), а монтирование фс объёмом 12.7TB и полным заполнением зачем-то начинает считать квоту… часами.

И это ведь не болтосвар, а целый с коммерческой поддержкой дистрибутив для NAS.

Из неприятного - отформатировать 20TB диск в F2FS не выходит. Диск нельзя разметить в GPT и нарезать раздел на 16TB. Нельзя и отформатировать его командой типа «mkfs.f2fs -m -w 4096 -f -l 16TB /dev/sda 429496729». Там 4Kn, поэтому 429496729. Вернее, отформатировать можно, но примонтировать этот кусок нельзя.

Надежда была на 20-ки как раз, на 100TB в uATX… но, подождём следующей версии ядра и BTRFS :)

IdeaFix
() автор топика
Ответ на: комментарий от IdeaFix

На ядре 6.12 BTRFS не разваливается уже сутки. Скорость внутри машины между дисками - 90-150MB, висят на SATA3 хосте, но в режиме LEGACY/IDE/PATA, иначе не инициализируются. А на хосте с AMD E350 работало и в AHCI режиме.

Из забавного - в процессе всех этих мытарств пропатчил биос HP Pabilion 500-009 для загрузки с NVME, теперь вот OMV8 грузится с Intel Optane 16GB. Из не забавного - OMV8 активирует весь свой арсенал по сохранению ресурса флешки, видя Optane :)

IdeaFix
() автор топика
Ответ на: комментарий от IdeaFix

На выходных наверное пересоберу 6.12 с экспериментальными фичами да погоняю зеркала. Но… с подобным уровнем тестирования ядра в дебиане и фичей в omv как-то пропадает желание даже теоретически строить на этом стеке технологий даже очень-очень не важный NAS. Хотя, если соберется таки 100TB, то это повод перестать включать ленточную библиотеку, на которую что-то бекапится регулярно но не ресторилось вообще ни разу.

Радует только что на новом мощном крутом A8-5500 ядро пересоберётся и опакетится чуть быстрее, чем на старом E350 :)

IdeaFix
() автор топика
Ответ на: комментарий от IdeaFix

Попробовал пособирать ядро 6.12 из ванильной Trixie и 6.14 из proxmox - успеха с MIRROR на ZONED дивайсах нет, но хотя бы не разваливается на одиночных. Proxmox после ESXi как и прежде кажется чем-то… пролетарским. С xcp-ng к слову такого ощущения не возникает.

В итоге в данный момент для дисков более 14TB получается безальтернативный BTRFS, а для маленьких дисков от 14TB (а может и от 16TB) и меньше - можно и F2FS. Как создать на ZONED дивайсе ФС размером 16TB я понял, и даже создал, а вот как примонтировать - это уже не получилось.

По перспективам в общем понятно - RAID1 на BTRFS наверное уж допилят когда-нибудь и без моих багрепортов, а вот на F2FS его скорее всего не будет.

Сейчас же паттерны использования таких дисков… ну я не знаю… однодисковый NAS-плеер под телевизором (фигурально) с 20TB сериалов? Локальный «ледник», включаемый только для бекапа по сети с пачкой таких дисков и без резервирования или с резервированием внешними средствами (сeph, rsync и много других страшных слов).

Я наигрался… приду через полгода.

IdeaFix
() автор топика
Последнее исправление: IdeaFix (всего исправлений: 2)