Использование дисков 4k с md/LVM/dm-crypt

Я знаю, что мне нужно выровнять свои диски 4k по 8 секторам, но как насчет md-RAID / LVM / dm-crypt? Как мне сказать этим слоям, что мой диск 4k? Если они не уважают размер сектора 4k, выравнивание раздела бесполезно. Как мне выровнять LVM/md/crypto-слои? Благодарю.

4 ответа

Быть осторожен! Метки gpt, необходимые для дисков> 2 ТиБ, имеют длину 39 (512 байт) секторов. Поэтому, если вы создадите свой первый раздел сразу после метки, он не будет на границе 4 КБ.

GNU parted не делает этого по умолчанию, вероятно потому, что многие накопители "Advanced Format" ложно утверждают, что их физические сектора, а не только их логические сектора, по-прежнему имеют размер всего 512В.

Поэтому, если вы используете GNU parted, убедитесь, что каждый раздел начинается на LBA, кратном 8 (LBA остаются 512B, поэтому 8*512B = 4KiB). LBA начинаются с 0, поэтому начните первый раздел с "40s".

Также, если вы используете GRUB, оставьте место для его начальной загрузки. Метки MS-DOS состоят из 63 секторов, и в GRUB достаточно места, чтобы спрятать загрузчик второй стадии, но в ярлыке gpt нет свободного места. Поэтому создайте небольшой раздел 1, установите его флаг "bios_grub", а затем создайте "настоящие" разделы - убедитесь, что каждый из них начинается на LBA, кратном 8.

См. https://ata.wiki.kernel.org/index.php/ATA_4_KiB_sector_issues

Короткая версия: если у вас есть недавний дистрибутив, он должен автоматически делать правильные вещи. Для старых дистрибутивов это немного сложнее.

Для LVM вы должны исследовать --dataalignment возможность pvcreateили даже для более старых дистрибутивов -–metadatasize,

MD, AFAIK, помещает свои собственные метаданные в конец разделов, поэтому они всегда должны быть выровнены с нижележащим разделом.

Для mkfs, опять же, файловая система должна быть выровнена с базовым разделом. Для некоторых файловых систем вы можете добавить параметры ширины полосы и размера полосы в случае, если вы работаете на устройстве RAID, чтобы файловая система могла попытаться выровнять данные по границам полосы RAID.

Проблема в основном с выравниванием раздела, начиная со структуры основного диска. чтобы диски обратной совместимости "лежали" в BIOS / OS, они имеют секторы 512B, в то время как на самом деле они имеют секторы 4096B в случае современных жестких дисков, секторы 32-64kB в случае наиболее распространенных операций рэпинга /ssds.

смещение разделов повредит вашей производительности. Я сделал некоторые тесты только для обычных разделов в верхней части диска - без lvm, и мои результаты, измеренные с помощью bonnie++, были без правильного выравнивания:

Sequential Output Block: 29MB/s
Sequential Output Rewrite: 20MB/s

с выравниванием:

Sequential Output Block: 70MB/s
Sequential Output Rewrite: 37MB/s

проверьте это для выравнивания lvm.

Большинство новых дистрибутивов уже обновлены, чтобы знать о 4K. Я только что собрал установку md-RAID/LVM/XFS на кучу 2 ТБ дисков без проблем. Ничего особенного не делал.

Другие вопросы по тегам