CentOS 7, RAID-1 и снижение производительности с SSD

Я готовлю ПК с 64 ГБ оперативной памяти на материнской плате Gigabyte AORUS X299-GAMING-3, заказанной для использования с Cent OS 7, с RAID-1 на паре твердотельных накопителей Intel 545 Series SSDSC2KW512G8X1. Конфигурация без аппаратного controllerа PCIe RAID, поэтому я буду использовать Intel RST.

Поскольку CentOS прекратил документирование v7, я пошел в Red Hat docs и смог найти https://access.redhat.com/solutions/2801341 предупреждение, которое касается меня:

Программные уровни RAID 1, 4, 5 и 6 не рекомендуются для использования на твердотельных накопителях. На этапе инициализации этих уровней RAID некоторые утилиты управления RAID (например, mdadm) выполняют запись во все блоки на устройстве хранения, чтобы обеспечить правильную работу контрольных сумм. Это приведет к быстрому снижению производительности SSD.

Буду ли я сталкиваться с этой проблемой с RAID-1 с Intel RST RAID?

RST / TRIM Research

У меня нет непосредственного опыта в этом, но я смог найти эту статью, в которой TRIM рассматривается как часть проблемы при настройке SSD в конфигурации RAID-1.

  • Твердотельные накопители в IRST RAID 1 могут иметь пониженную производительность

Вы можете заметить, что скорости чтения / записи ваших твердотельных накопителей (SSD) в конфигурации RAID 1 со временем снижаются. Если операционная система переустановлена ​​или система перезаписана, проблема временно решена.

Процесс сбора мусора включает чтение и перезапись данных во флэш-память. Это означает, что для новой записи с хоста сначала потребуется чтение всего блока, запись частей блока, которые все еще содержат действительные данные, а затем запись новых данных. Это может значительно снизить производительность системы с течением времени. Если вам необходимо подтвердить, что TRIM является причиной снижения скорости записи на SSD в RAID 1, вы можете заново создать образ диска (вне тома RAID) и повторно протестировать скорость записи. Ожидаемая скорость записи для всех твердотельных накопителей зависит от модели.

  • Твердотельные накопители в Linux: включение TRIM для твердотельных накопителей

… В Linux fstrim предоставляет эту функциональность, подготавливая диск для записи новых данных, и продлевает срок службы диска в долгосрочной перспективе. Поскольку обрезка SSD не выполняется автоматически в дистрибутивах Linux, которые я использовал, крайне важно, чтобы это было запланировано, иначе производительность SSD со временем снизится.

Далее в статье показано, как это сделать:

$ mount -t ext4 -o discard /dev/sda2 /mnt $ sudo fstrim / -v 

Эта обрезка может быть затем включена в работу CRON с использованием этого подхода. Поиск больше привел меня к Wiki Arch Linux на SSD. Там упоминается fstrim.service .

  • Твердотельный накопитель – Arch Linux Wiki

Пакет util-linux содержит системные файлы fstrim.service и fstrim.timer. Включение таймера активирует сервис еженедельно. Служба выполняет fstrim (8) на всех смонтированных файловых системах на устройствах, поддерживающих операцию сброса.

Предполагая, что эти службы работают, я бы предположил, что обрезка выполняется правильно для любых SSD в системе, которые поддерживают TRIM.

Поддержка MD RAID TRIM

Чтобы попытаться поставить более точные гвозди в гроб, я искал «поддержку триумфального сопровождения raid linux», которая привела меня к этой теме вопросов и ответов под названием AU: Как настроить поддержку SSD raid и TRIM ?

Ответы там немного устарели, но все же содержат несколько полезных подсказок о том, как действовать. Проверка того, поддерживает ли MD RAID поддержку DISCARD & TRIM, подтолкнула меня к следующему совету.

MD RAID поддерживает DISCARD / TRIM

SU Q & A под названием: Реализация Linux fstrim на SSD с программным обеспечением md-raid, где ответ Майкла Хэмптона гласит:

Патчи для поддержки mdraid RAID 1 и 10 для TRIM появились примерно год назад.

Затем он показывает, как вы можете подтвердить поддержку этого:

Вы можете проверить поддержку вашего ядра, смонтировав файловую систему с опцией discard (которая включает автоматический TRIM). Если это поддерживается, вы увидите сообщение в syslog или dmesg, подобное следующему:

 EXT4-fs (md1): re-mounted. Opts: discard,data=ordered 

В противном случае вы получите это:

 EXT4-fs warning (device md1): ext4_issue_discard:2619: discard not supported, disabling 

Вам не нужно перезагружаться, чтобы увидеть, работает ли он:

 mount /dir -o remount 

Выводы

Таким образом, может показаться, что предупреждение датировано этими исправлениями и больше не применимо, если ваш SSD поддерживает TRIM / DISCARD.