Я арендую два идентичных физических сервера (в Serverloft). Эти серверы поставляются с двумя SSD-дисками по 512 ГБ, и я установил их с mdadm в RAID1. Диски устанавливаются локально на сервере.
Производительность записи в этих двух системах сильно различается.
В соответствии с lshw -short
, контроллер:
C610/X99 series chipset 6-Port SATA Controller [AHCI mode]
1-й сервер (2 x SAMSUNG MZ7TE512)
host02:/tmp# dd bs=1M count=8192 if=/dev/zero of=testfile conv=fdatasync
8192+0 records in
8192+0 records out
8589934592 bytes (8.6 GB) copied, 38.4952 s, 223 MB/s
2-й сервер (2 x SAMSUNG MZ7LN512)
host03:/tmp# dd bs=1M count=8192 if=/dev/zero of=testfile conv=fdatasync
8192+0 records in
8192+0 records out
8589934592 bytes (8.6 GB) copied, 108.284 s, 79.3 MB/s
Помимо того факта, что производительность записи в целом действительно плохая, что может вызвать этот огромный разрыв в производительности. Разрыв сохраняется на протяжении нескольких прогонов.
Для сравнения, у меня есть еще и третий сервер с дисками SATA 2x2TB.
host01:/tmp# dd bs=1M count=8192 if=/dev/zero of=testfile conv=fdatasync
8192+0 records in
8192+0 records out
8589934592 bytes (8.6 GB) copied, 49.0217 s, 175 MB/s
Что я сделал?
parted
> align-check opt n
)fstrim -v /
(сбой на 2-м сервере, успешный на 1-м сервере)blockdev --getbsz [partition]
дает размер блока 4096 (по умолчанию, я считаю)defaults,errors=remount-ro
в / etc / fstabЧто (еще) я могу сделать для повышения производительности записи в этих системах?
Разница заключается в используемом SSD-диске. Существуют корпоративная градиентная модель и «клиентская» модель.
Для корпоративной модели выпускника вы можете рассчитывать на более длительный срок службы и лучший алгоритм, чтобы гарантировать, что она будет работать в течение 5 лет.
Я привожу пример на предприятии, которое я видел на прошлой неделе SSD для SAN, они продавались по цене около 3 тысяч долларов за штуку всего за 500 ГБ.
1-й сервер (2 x SAMSUNG MZ7TE512)
2-й сервер (2 x SAMSUNG MZ7LN512)
Это новые твердотельные накопители? Если нет, выполните чистку на низком уровне. Не уверен в официальном термине для этого ... некоторые сайты говорят о безопасном стирании. Вы хотите удалить с устройства все данные по выравниванию износа и другие данные. Производитель вашего конкретного твердотельного накопителя - это то, где вы должны получить инструмент для этого. Но, возможно, простой fstrim сделает что-то подобное, если прошивка SSD достаточно умен.
Это связано с TRIM ... trim записывает одни и те же данные, но медленная запись могла быть из-за слишком малого количества TRIM в прошлом. Но если вы не установите -o discard в параметрах монтирования, вы фактически не будете выполнять никаких операций, связанных с TRIM, во время теста. (и лучший способ - использовать команду fstrim, например, один раз в неделю, а не отбрасывать, что делает это гораздо чаще).
И я думаю, что иногда TRIM может что-то сломать, когда прошивка плохая. Видеть https://blog.algolia.com/when-solid-state-drives-are-not-that-solid/
Кроме того, 223 МБ / с может быть нормальным для некоторых конфигураций ... особенно медленные твердотельные накопители или медленные контроллеры, такие как SATA 3 Гбит / с, или что-то, что вы сделали не так с рейдом, например, выравнивание блоков fs, размер блока raid, начальный сектор раздела . 80 МБ / с - это удивительно, но я слышал о некоторых таких SSD, пока их не почистили.