Pull to refresh

Comments 10

Для того, чтобы понять что может произойти с SSD нужно просто вспомнить что флеш, сволочь, работает только с огромными блоками, а потому в большинстве SSD есть обычная память, где хранятся (во время работы) разные хитрые структуры данных. Соответственно есть шанс, что при отключении активно работающего SSD (такого, на который прямо в момент отключения кто-то что-то пишет) данные на самом флеше окажутся в «испорченном» состоянии и SSD «превратится в тыкву». Впрочем вероятность этого события всё-таки не так велика (прошивку SSD всё-таки не идиоты пишут), вы можете подключать/отключать SSD сотни, а то и тысячи раз, и не разу такого эффекта не получить.

Впрочем добиться того, чтобы на устройство, которое вы отключаете никто в момент отключения не писал полезно и по куче разных других причин: если кто-то туда пишет, значит гарантированно часть данных потеряет. Оно вам надо?
данные на самом флеше окажутся в «испорченном» состояни

Даже конденсаторы не спасут? Ими же усыпаны SSD с расчётом на запись подтвёрждыннх операций при пропадении питания.
Теоретически да, это не должно приводить к катастрофе, но вы же понимаете: это обратка ошибок. Кто и как их тестирует? Ошибок в коде обработки ошибок на порядок больше, чем где бы то ни было ещё.

А если у вас какую-то важную структуру прошивка просто «забудет» записать, то никакие конденсаторы не спасут.
Вот на этот счет интересное исследование, если не боитесь читать сугубо научный текст по этой теме.
https://www.usenix.org/system/files/conference/fast13/fast13-final80.pdf
Это доклад на позапрошлогодней конференции USENIX FAST.
В сухом остатке: было испытано 15 железяк из которых большая часть выжила, одно издохло совсем, «с концами», одно потеряло доступ к трети записанных данных.

Практические данные совпадают с теоретическими: вероятность того, что всё накроется медным тазом не так велика, но она таки есть, а про «просто» порчу данных я вообще молчу: только два из 15 устройств «проскочили» без потерь.
Сомнительное исследование в контексте серверов, большинство SSD бытовые, только в 4 из из 15 устройств были конденсаторы, да и сами модели 11-12 годов. А вывод вообще феерический:
Because we do not know how to build durable systems that can withstand all of these kinds of failures, we recommend system builders either not use SSDs for important information that needs to be durable or that they test their actual SSD models carefully under actual power failures beforehand.

Может быть есть что-то подобное от разработчиков SSD?
Большая проблема таки не в том, что устройство теоретически может похериться, а в том, что ОС не очень любит ВНЕЗАПНОЕ пропадание смонтированного устройства, и в определённых случаях может отправить работавшие с ФС процессы в Uninterruptible Sleep или вовсе упасть в Kernel Panic.

Поэтому ВСЕГДА отмонтируйте все ФС на устройстве перед его извлечением, а также исключайте его из конфигурации mdadm/lvm/железного рейда/что там у вас ещё используется.
В статье рассматривались вопросы аппаратной части серверов, естественно что отключать диски SSD и HDD (как и флешки) с условием сохранения информации на них возможно только при предварительном размонтировании. Если извлечь диск, который используется (примонтирован, и какое-либо ПО обращается к нему) во всех операционных системах, с которыми я сталкивался, наблюдаются лаги. Спасибо за замечание — добавлю в текст статьи.
> Например на серверах SuperMicro номер корзинки указан на самой корзинке, и может не совпадать с номером слота на бэкплейне.

А на других марках серверов кабеля к бэкплейну подключают сверхчеловеки и они же втыкают корзины с дисками?
Возможно всё, поэтому я рекомендовал подсвечивать диски (по логическому устройству, в некоторых, особо запущенных случаях, возможно, что система индикации подключена не правильно, и будет подсвечиваться другой диск — тогда это повод для исследования перед отключением диска) а кроме того, желательно сверять серийный номер диска после извлечения для проверки того, что извлечён правильный диск.

Я написал про SuperMicro для примера, такая-же проблема может быть в корпусах Chenbro, AIC и так далее… В целом, SuperMicro делает хорошие корпуса среднего ценового диапазона, зачастую — лучший выбор по цене/качеству. И из серьёзных проблем вспоминается только плавающий баг с дисками SATA3 на бекплейне BPN-SAS-846EL (на BPN-SAS2-846EL устранена).

При использовании экспандеров, нумерация дисковых слотов на них зависит от прошивки, и полностью не зависит от кабелей. Конечно, если в системе более одного экспандера, то порядок экспандеров зависит от коммутации кабелей.
Например на Dell 720 (8 x 3,5") номера корзинок указываются на корпусе, номера слотов определяются бекплейном (бекплейн имеет только оди вариант установки), который подключен одним кабелем, я не видел ни одной возможности, что-то перепутать так, что-бы логическая и физическая нумерация перестали соответсвовать друг-другу.
Конечно, существуют сервера (корпуса) на которых возможно перепутать кабеля, и физическая нумерация не будет соответсвовать логической, но эта проблема относиться к вопросам контроля качества сборки, а не обслуживания работающего сервера.
Sign up to leave a comment.

Articles