raid 5 ужас на своем опыте
Всем привет, я знаю, что у многих уже проскакивала тема опыта работы с RAID 5, я лишь хочу рассказать про свой, а именно, как этот вид рейд массива работает с ссд дисками, и о подводных камнях. Знание данной информации, поможет вам избежать больших проблем и сэкономить много нервных клеток, так что потратьте некоторое время на знакомство с данным материалом, удачного прочтения. Все вопросы и пожелания, жду в комментариях, внизу статье.
И так ранее я рассказывал как тестировал RAID контроллер P410i на сервере HP ProLiant DL380 G7, данный контроллер в принципе их на троечку тащит, выжать из него можно на чтение 50 000 Iops, Ну суть не в этом, ранее я на нем создавал RAID 5 из 6 ssd дисков Samsung evo 850, к сожалению данный контроллер не умеет выдавать показатели smart дисков, поэтому, через год, было примерное понимание, что ssd должны уже изнашиваться, при том уровне записи, и мы их начали менять. Я как думал это же ссд 🙂 и перестройка будет быстрой, ага raid 5 из 6 твердотельных дисков перестраивался аж 32 часа, напомню каждый диск по 1 ТБ, это просто ужас конечно. Я всегда был противником данного рейда, но всегда были но в плане дешевизны и максимальном объеме полезного пространства, а вот его недостатки всегда отходили на второй план.
Проблемы raid 5
- Отказоустойчивость всего 1 диск > это очень плохо, особенно если у вас во время перестройки выйдет еще один диск из строя, так как на другие диски в данный момент будет повышенная нагрузка
- Время перестройки > при нынешних объемах это просто трешь, в моем случае raid 5, на ssd дисках перестраивался 32 часа, а что если бы у вас вас были обычные HDD объемом 4 и более ТБ, а как быть с ссд 10 тб, это просто жесть, в таком случае рейд уже начинает отмирать и перерастать в какие то более умные файловые структуры, по типу того же Nutanix
- Вечная нервотрепка для админа 🙂 , но у него то их до фига же.
В моем случае износ диска составил всего 30 процентов за 240 дней, что для продакшена просто офигено, спасибо виртуализации, так как на уровне гипервизора лежит просто один здоровый файл или несколько, у него конечно обновляются метаданные но не так, если бы данный ссд диск был воткнут внутри ос.
Для примера напомню вам как считать жилец диск по smart показателям или нет, тут все просто есть поле Threshold которое показывает минимальное значение ниже которого нельзя опускаться, а в Current Value текущее, которое со временем уменьшается. Поле Wear Leveling Count показывает в процентах, скока еще осталось здоровья.
Резюмируя подведем итог, если у вас есть возможность не использовать RAID 5, то делайте другие виды RAID, например 60 или 10, все будет надежнее и по скорости быстрее, главное ва необходимо донести до своих заказчиков, что возможные проблемы могут с лихвой перекрыть все плюсы, данной реализации, ведь самая большая задача любого it бизнеса это минимилизация простоя сервисов.А вы используете RAID 5? напишите в комментариях
Восстановление данных RAID массивов уровней 0, 1, 1E, 5, 5E, 5EE, 10, 50, 60, цены
Главная ![]()
Виды неисправностей RAID-массивов Поскольку RAID это сложное объединение отдельных дисков, то и неисправности массивов тоже могут быть вызваны как неисправностями дисков, так и RAID-контроллеров. Также им присущи все логические повреждения тома, т.к. с точки зрения операционной системы и прикладных программ RAID – это просто логический диск. Неисправность RAID-контроллераХоть явление и редкое, но возможное. В самом простом случае, контроллер не появляется на экране начальной загрузки и соответственно не выводит список подключённых к нему дисков. Также возможен вывод разнообразных кодов ошибок (зависит от производителя), касающихся самого контроллера. Это то, что сразу бросается в глаза и легко диагностируется. Контроллер может не определять подключенные диски при исправности кабелей и нормальном определении дисков на другом контроллере (например, простом HBA), возможна блокировка дальнейшей загрузки сервера до удаления платы RAID-контроллера из системы.Восстановление данных в таком случае возможно двумя путями. Самый очевидный – это замена контроллера. Но он не всегда самый простой. Т.к. заменять его нужно на полностью совместимый контроллер данной фирмы и желательно с такой же версией прошивки. Если контроллер отработал много лет, то за это время, как правило, может смениться несколько поколений контроллеров его уровня. Может смениться формат и размещение конфигурационной информации о массиве, хранимой на дисках. Всё это необходимо выяснять заранее. Второй способ – это ручная сборка массива. Часто, это оказывается сделать быстрее, чем найти подходящий вариант замены контроллера, особенно, когда он снят с производства и уже давно не продаётся – актуально при смене интерфейса, например, с SCSI на SAS. Логические повреждения файловой системыКак правило вызываются программными сбоями, вирусами, неправильным использованием программ для создания резервных копий и пр. Дисковый массив при этом находится в рабочем состоянии (online, functional и пр., зависит от контроллера). Методы восстановления данных при этом такие же, как и при подобном сбое на одиночном диске с поправкой на особенности работы с серверным окружением. Если контроллер массива не возможно по каким-либо причинам использовать, то массив приходится виртуально воссоздавать в ручною без него, что существенно осложняет работу.Повреждение поверхности дисков массиваНаиболее частая причина развала массивов это появление множественных bad-секторов на одном или нескольких дисках. При этом может возникнуть ситуация, когда контроллер по каким-либо причинам не отключит повреждённый диск от массива, который будет работать с ошибками чтения и записи. Либо контроллер может не заметить наличие в своём составе дисков с bad-блоками и тогда во время очередного ребилда массив не сможет завершить данную процедуру, что приведёт к остановке массива и переводу его контроллером в состояние «off-line». В этом случае необходимо создавать посекторные копии со всех дисков массива и воссоздавать его в ручную, используя соответствующие программно-аппаратные средства.Повреждение логической структуры массиваСостояние массива, при котором контроллер не может объединить диски в соответствии со своими настройками. Является следствием повреждений дисков: одномоментных (повреждение блока магнитных головок, клин двигателя, электрический пробой платы) или накапливающихся (бэд-блоки, нестабильные сектора). Стабильность работы дисков в массиве зависит во многом от их предназначения, для стабильной и предсказуемой работы контроллера массива важно применять специально оптимизированные для данного применения диски. Применение дисков не предназначенных для работы в массиве ведёт, в первую очередь, к непредсказуемости поведения RAID-контроллера в случае нестабильной работы диска. Это может привести к неоднозначности состояния массива (работает – не работает).Есть два основных состояния неисправного массива:
В состоянии «off-line» выбора, что делать с массивом нет. Т.к. если контроллер не собирает диски в единый том, то восстановить информацию можно только в ручную. Состояние «off-line» следует сразу после «degraded», на которое как часто бывает, иногда месяцами, а то и годами, не обращают должного внимания системные адсинистраторы. Поскольку массив при этом работает уже без защиты данных, то поломка ещё одного диска становится для него последней. Ребилд в такой ситуации запустить невозможно (для RAID6 состояние «off-line» — это более двух сломанных дисков), т.к. информация на предыдущем сломанном диске уже неактуальна. При этом, одна из задач, решаемых во время восстановления массива – поиск неактуального диска, что приводит к необходимости создавать посекторные копии со всех дисков, входивших когда-либо в этот массив. Это самая ответственная процедура – от полноты этих копий зависит качество восстановления, а иногда и сама его возможность. Поэтому доверять подобные процедуры случайным людям, не имеющим большого опыта в работе по восстановлению сложных массивов крайне не рекомендуется, если данные хранимые на массиве представляют ценность для владельца. Методы восстановления RAID-массивов Если проблема с массивом зашла настолько далеко, что требуется восстановление информации с него, то полезно будет рассмотреть основные методы восстановления массивов. Возможность применения каждого из них зависит прежде всего от степени разрушения массива, состояния дисков и возможностей RAID-контроллера. Методов восстановления массивов существует два: программный и аппаратный. Программное восстановление массиваЭто основной метод восстановления, т.к. его применение возможно всегда и не зависит от возможностей RAID-контроллера, контроллер при этом вообще не нужен. Как следует из названия, восстановление массива основано на анализе содержимого дисков и виртуального восстановления структуры массива при помощи специализированного программного обеспечения и программно аппаратного комплекса PC3000 Data Extractor Express RAID Edition. Для этого требуется определить порядок дисков в массиве, т.к. он не всегда соответствует порядку подключения их к контроллеру, определить размер блока чередования массива с секторах – это общее для всех блочных массивов (RAID0, RAID5, RAID6). Для массивов с повышенной отказоустойчивостью (RAID1, RAID10, RAID5, RAID6) также, в зависимости от обстоятельств выхода из строя, необходимо найти актуальный набор дисков, т.к. массив мог некоторое время работать в состоянии «degraded» до полного отказа, что приводит к наличию диска, который давно выведен из массива контроллером и данные на нём являются устаревшими. При значительном количестве дисков в массиве это может занять существенное время. Само собой, все эти операции проводятся на посекторных копиях дисков массива, т.к. исходные, как правило, имеют повреждения, собственно и приведшие к разрушению RAID массива. Поэтому, создание посекторных копий дисков – это первый этап восстановления информации с массива. Сложность копирования дисков зависит от их повреждений. Для дисков с бэд-блоками – это одна проблема, для дисков с неисправным блоком магнитных головок – другая, более сложная. Отличие от восстановления одиночного диска с данными в том, что нельзя скопировать только ту часть диска, на которой хранятся пользовательские данные, нужно обязательно копировать весь диск, что может привести к необходимости неоднократной замены головок и значительному времени копирования.Аппаратное восстановление массиваПодразумевает восстановление доступа к данным средствами самого RAID-контроллера. Возможность подобного восстановления напрямую зависит от встроенного программного обеспечения контроллера и наличия дополнительных опций по работе с массивами в состоянии «offline», т.е. для каждой марки и модели они отличаются от достаточно широких до полного их отсутствия. Вариантов восстановления, собственно, не так и много и все они довольно рискованны.Во-первых, можно поменять статус вылетевших дисков с «offline» на «online», возможно, при этом том станет доступен. Скрытая угроза состоит в том, что данная опция может быть доступна для неактуального диска, т.е. вылетевшего ранее, и массив долго работал без него. Тогда на томе будет повреждённая файловая система, большое количество не открывающихся файлов, возможно отсутствие наиболее свежей информации, всё зависит от конкретной ситуации. А актуальный диск, при этом вообще может не получится принудительно включить в состав массива из-за его неисправности. Тогда нужно сделать посекторную копию предположительно актуального вылетевшего диска и подключить её к контроллеру. Копию нужно делать на точно такой же диск, как и неисправный. Результат этой процедуры будет зависеть также от возможностей контроллера, но скорее всего, он воспримет его, как инородный, не принадлежащий данному массиву. Тут можно перейти ко второму пункту. Во-вторых, можно пересоздать массив с прежними параметрами, посекторной копией наиболее актуального диска и пустым вместо первого вылетевшего. Успех будет зависеть, в первую очередь, от самой возможности подобной операции. Необходимо, чтобы контроллер мог создавать массив без его инициализации, иначе он сотрёт всю информацию. Все подобные операции крайне рискованны, т.к. состояние остальных дисков массива, которые контроллер считает рабочими, неизвестно и в любой момент может выйти из строя ещё один или несколько дисков. Аппаратный способ восстановления RAID-массивов не менее, а то и более трудоёмок, чем программный. И на небольших массивах его применение нецелесообразно. Некоторый выигрыш может быть на массивах более шести дисков со сложной внутренней организацией, когда программная сборка становится крайне трудоёмкой и осложнённой необходимостью подключения большого количества дисков к одному компьютеру. Внимание! На RAID массивах обычно хранится важная информация, поэтому мы настоятельно не рекомендуем предпринимать самостоятельные попытки восстановления если RAID массив всё-таки вышел из строя. Ни в коем случае нельзя на повреждённом RAID массиве запускать Rebuild или включать обратно в массив отключённые RAID контроллером повреждённые диски без предварительного создания полных посекторных копий всех дисков входящих в состав RAID массива. |
Что диск грядущий нам готовит или жесткие диски большого объема в RAID уровней 5 и 6
Эволюция жестких дисков и грядущая революция
В 2005 году был выпущен жесткий диск с рекордным объемом 500 ГБ, использовавший технологию продольной магнитной записи. Максимально достижимая плотность данных при использовании этого метода записи составляет около 150 Гбит/дюйм². В 2007 году компания Hitachi GST представила первую в мире модель жесткого диска объемом 1 ТБ, используя технологию перпендикулярной записи, которая позволяет достичь плотности данных до 1 Тбит/дюйм². Осенью 2017 года был выпущен жесткий диск объемом 14ТБ на базе технологии черепичной магнитной записи , при которой уплотнение данных достигается за счет того, что запись дорожек производится с частичным наложением друг на друга, как черепица на крыше домов. Это можно делать, т.к. ширина области чтения меньше, чем ширина записывающей головки диска. Потенциально черепичная запись позволяет увеличить объем жесткого диска с перпендикулярной записью на 20-25%, т.к. увеличивается количество дорожек на дюйм, но эта технология имеет и существенный недостаток – пониженную и нестабильную скорость записи данных. Уже через 2 месяца в конце 2017 года был представлен 14 ТБ жесткий диск без наложения дорожек с обычной перпендикулярной записью. На момент написания статьи, этот диск является самым ёмким на рынке, хотя в 2018 году возможно появление 16 ТБ дисков на основе традиционной перпендикулярной записи.
В тоже время, 2018 год может стать революционным, как в технологиях жестких дисков, так и в росте их объемов. Оба основных игрока на рынке жестких дисков – компании Seagate и Hitachi GST (подразделение Western Digital) объявили о готовности представить до конца 2018 года первые жесткие диски на технологиях магнитной записи с энергетической поддержкой. Идея в том, чтобы использовать точечное энергетическое воздействие на магнитный слой пластины диска для снижения энергетического барьера для записи, что позволит записывающей головке намагничивать очень мелкие области. Тем самым, плотность записи может быть значительно повышена, что увеличит и емкость жесткого диска. Компания Seagate работает с технологией тепловой магнитной записи HAMR (Heat-Assisted Magnetic Recording), предварительно разогревая лазером место записи, а Hitachi GST использует технологию микроволнового воздействия на магнитный слой MAMR (Microwave-Assisted Magnetic Recording). По сведениям от производителей, использование HAMR позволит получить плотность записи до 5 Тбит/дюйм², а MAMR до 4 Тбит/дюйм². Это дает возможность создавать жесткие диски стандартного форм-фактора 3,5” объемом 20-40 ТБ и более. Маркетологами обеих компаний развернута «битва технологий», подчеркивающая свои преимущества и недостатки у конкурента, причем Hitachi GST сражается агрессивнее. Пока сложно предсказать, какая из технологий завоюет рынок, будут ли они существовать параллельно или одна из них окажется в результате победителем, но уже сейчас очевидно, что через год или менее станут доступны диски очень большого объема. Более того, в дальнейшем объемы жестких дисков будут только расти. Но почему же так важен объем единичного жесткого диска? Представим, что будет происходить, если жесткие диски объединить в RAID массив уровней 5 или 6.
Жесткие диски в RAID массивах уровней 5 и 6
RAID массивы из жестких дисков создаются для повышения производительности и отказоустойчивости дисковых подсистем серверов и систем хранения данных. Отказоустойчивость в RAID 5 и 6 достигается за счет избыточности, т.е. часть получаемого дискового хранилища используется для служебных данных четности (XOR parity), которые позволяют при выходе из строя одного или нескольких физических дисков не потерять данные всего массива. Так, в RAID массивах уровня 5, можно «потерять» один диск, а в RAID 6 — два диска при полной сохранности данных.
Если 8 шт. одинаковых физических дисков объединены в RAID 5, то «полезный» объем хранилища составит сумму емкостей 7 шт. дисков. Но зато в случае выхода из строя одного (причем любого) физического диска, данные хранилища не потеряются. При этом RAID массив перейдет в т.н. критический режим, т.е. не сможет обеспечивать отказоустойчивость, хотя данные и будут доступны. Для возвращения такого массива в отказоустойчивое состояние необходимо заменить вышедший из строя физический диск и запустить процесс восстановления массива, при котором на новый диск записываются данные, которые считываемые со всех других жестких дисков массива, а также служебные данные, вычисляемые из уже считанных.
Процесс восстановления ощутимо снижает производительность дискового хранилища, а также связан с повышенным риском, т.к. во время восстановления нет отказоустойчивости и любая ошибка диска приведет к потере всех данных хранилища. А насколько вероятно получить невосстановимую ошибку в процессе восстановления RAID массива, если у физических дисков большой объем? Давайте подробно рассмотрим ответ этот вопрос.
Невосстановимые ошибки чтения URE
В спецификациях жестких дисков производитель обычно указывает значение для количества невосстановимых ошибок чтения (уровень URE — Unrecoverable Read Error или BER — Bit Error Rate), например, URE = 1х на 1014 бит или BER = 1014 бит. Это означает, что в процессе чтения с диска указанного количества бит очень велика вероятность получить одну невосстановимую ошибку чтения, хотя до этого уже возможно были ошибки, восстановить данные при которых диску удавалось по кодам коррекции ошибок (ECC). Значение уровня URE или BER применимо и для других носителей данных:
- BD/DVD — 1x 1013 бит, т.е. 1 ошибка при чтении 1,25 ТБ данных
- Жесткие диски для ПК — 1x 1014 бит, т.е. 1 ошибка чтения 12,5 ТБ данных
- Серверные жесткие диски 7K RPM — 1x 1015 бит, т.е. 1 ошибка чтения 125 ТБ данных
- Серверные жесткие диски 10/15К RPM — 1x 1016 бит, т.е. 1 ошибка чтения 1,25 ПБ данных
- Твердотельные диски — 1x 1016-17 бит, т.е. 1 ошибка чтения 1,25-12,5 ПБ данных
- Серверные твердотельные диски — 1x 1017-18 бит, т.е. 1 ошибка чтения 12,5-125 ПБ данных
- Магнитные ленты LTO-7 — 1x 1018-19 бит, т.е. 1 ошибка чтения 125-1250 ПБ данных.
Обратите внимание, что некоторые диски для NAS и диски для видеонаблюдения имеют значении URE равное 1x 1014 бит как у дисков для персональных компьютеров (ПК). Значением URE равным 1x 1016 бит могут похвастаться лишь жесткие диски с числом оборотов шпинделя 10000-15000 в минуту, но такие диски не бывают емкими. Для дисков большого объема уровень URE равен 1x 1015 бит. Иногда производители, обычно Toshibа и WD, указывают для дисков большого объема уровень URE равный 10x 1016 бит, но это равносильно значению уровня URE 1x 1015 бит как в спецификациях у Hitachi GST или Seagate.
Если в RAID массиве уровня 5 состоящего из 8 шт. 2 TБ жестких дисков с уровнем URE равным 1x 1014, вышел из строя один диск, то для восстановления отказоустойчивости массива необходимо будет прочитать объем 7 шт. 2 TБ дисков, что составляет 14 ТБ и теоретически обеспечит сбой из-за невосстановимой ошибки чтения и полную потерю всех данных — ведь уровень URE 1x 1014 означает одну ошибку чтения на 12,5 ТБ. Очевидно, что если в массив RAID5 поставить диски бОльшего объема и увеличить их количество, то ситуация сильно ухудшится. Именно поэтому, еще в 2007 году была объявлена «кончина» RAID уровня 5, начиная с 2009 года, из-за роста единичного объема жестких дисков.
Появление емких дисков с уровнем URE равным 1x 1015 несколько улучшило ситуацию и частично «воскресило» RAID5. Так, для восстановления массива RAID5 из предыдущего примера, но построенного на дисках с уровнем URE 1x 1015 , можно без проблем прочитать 14 ТБ, т.к. уровень ошибок позволяет читать до 125 ТБ, и такой массив RAID5 из 8 шт. 2 TБ жестких дисков строить кажется оправданным. Но уже в RAID5 из 10 шт. дисков объемом 14 ТБ каждый, при восстановлении отказоустойчивости массива необходимо прочитать 126 ТБ, что выше уровня URE 1x 1015.
Из-за роста объема единичного жесткого диска, а также то, что аппаратные RAID контроллеры позволяют объединять в RAID5 и RAID6 до 32 физических дисков, даже RAID уровня 6 может оказаться подверженным сбоям во время восстановления из-за невосстановимых ошибок чтения. Аналитики уже назначили «кончину» RAID 6 на 2019 год, но попробуем разобраться подробнее.
Вероятность сбоя в процессе восстановления отказоустойчивости RAID 5 и 6
Важно понимать, что появление невосстановимой ошибки чтения – это событие вероятностное, и можно встретить отзывы, что массив RAID5 на дисках с URE 1x 1014 бит успешно прочитал более 12,5 ТБ в процессе восстановления отказоустойчивости. На самом деле, вероятность сбоя при восстановлении отказоустойчивости массива RAID5 из 8 шт. 2 TБ дисков с уровнем URE равным 1x 1014 составляет 67 %, а не 100%, как это казалось бы. См. Таблицу 1 с вероятностями сбоя при восстановлении для RAID массивов уровней 5 и 6, построенных из 8 шт. 2 ТБ жестких дисков с разным уровнем URE ниже:
Уровень URE | RAID 5 | RAID 6 |
1x 1014 | 67,34 % | 30,77 % |
1x 1015 | 10,59 % | 0,57 % |
Таблица 1
Обратите внимание, указанные выше значения не говорят о вероятности сбоя в RAID массивах 5 и 6 при их нормальной работе в отказоустойчивом режиме. Для потери данных в этом случае нужно получить одновременно 2 сбоя в массиве RAID5 и 3 сбоя в RAID6, что намного менее вероятные события. Так для RAID5 это около 0,52 %, а для RAID6 порядка 0,01%. В Таблице 1 указана вероятность сбоев именно в тот период, когда RAID массив находится в критическом режиме и идет процесс восстановления его отказоустойчивости, который при больших объемах дисков занимает очень значительное время.
Вероятность сбоя из-за невосстановимой ошибки чтения при восстановлении отказоустойчивости в RAID массивах уровней 5 и 6 вычисляется с использованием формулы Бернулли. Считаем, что в RAID массиве один диск уже вышел из строя, был заменен, и начался процесс восстановления отказоустойчивости. Вспомним, что для полной потери данных при восстановлении отказоустойчивости в RAID5 достаточно одной невосстановимой ошибки чтения, а для RAID6 двух независимых ошибок. Тогда вероятность сбоя из-за невосстановимых ошибок P будет равна:
P=n!/(k!*(n-k)!)*p^k*q^((n-k)), где
n – количество бит, которое требуется прочитать в процессе восстановления
k – количество невосстановимых ошибок чтения
p – вероятность ошибки чтения
q – равно 1-p
Ниже на графиках представлены вероятности сбоя в процессе восстановления отказоустойчивости массивов RAID уровня 5 и уровня 6 в зависимости от количества дисков (до 32 шт. в массиве), объемов дисков (1-50 ТБ) и для трех значений уровня URE (1x 1014, 1x 1015 и 1x 1016 бит). Картинки открываются крупнее по клику, линией красного цвета показаны значения для самого емкого на момент написания статьи жесткого диска объемом 14 ТБ:
Рекомендации по работе с массивами RAID уровней 5 и 6
Анализируя эти графики вероятности, с учетом перспективы революционного увеличения единичного объема жестких дисков, можно сформулировать следующие рекомендации по работе с RAID 5 и 6:
1. При проектировании RAID 5 и RAID6 необходимо всегда учитывать вероятность сбоя при восстановлении отказоустойчивости, т.к. это критически важный параметр дисковой подсистемы!
1.1. Категорически не рекомендуется использовать жесткие диски с уровнем URE 1x 1014 бит для работы в RAID 5 и в RAID6. ГК «ВИСТ» не использует в своих серверах и СХД такие диски.
1.2. Массивы RAID 5 и 6 можно строить на большом количестве дисков с уровнем URE 1x 1016 бит, т.к. такие жесткие диски имеют сегодня малый объем.
1.3. Использовать твердотельные диски с уровнем URE 1x 1016 бит в RAID массивах уровня 5 следует только с учетом их количества в массиве и их объема. Например, в RAID 5: 15 шт. SSD объемом 8 ТБ или 30 шт. SSD объемом 4 ТБ дают вероятность сбоя при восстановлении массива ~ 10%.
1.4. Использование массивов RAID уровня 6 с современными дисками большого объема может быть опасным для данных уже сейчас. Так, RAID6 из 16 шт. 14ТБ дисков с URE равный 1x 1015 имеет шанс успешно пройти процесс восстановления отказоустойчивости без потери всех данных лишь в 50% случаев.
2. При возможности, не следует ставить много дисков в массивы RAID 5 или 6. Кроме вероятности сбоя из-за невосстановимой ошибки, стоит учитывать, что время необходимое для восстановления отказоустойчивости на больших по объему дисках будет очень велико и может составить несколько суток. Действительно, чтение 10 ТБ данных при скорости 100 MБ/сек займет более суток, причем реальная скорость чтения, учитывая, что массив может продолжать работу с запросами, может оказаться намного меньше — 30-50 MБ/сек. Чем дольше идет процесс восстановления массива, тем более вероятным становится сбой из-за длительной повышенной механической нагрузки на диски.
3. Казалось бы, в складывающейся ситуации надо рассматривать возможность использования уровней RAID массивов со значением отказоустойчивости не менее N-3 (выход из строя трех дисков не приводит к потере данных). Но современные аппаратные RAID контроллеры не имеют поддержки уровней RAID с контролером четности (XOR parity) и со значением отказоустойчивости N-3, подобных, например, уровню RAID 7.3. Теоретически на аппаратном RAID контроллере можно получить отказоустойчивость N-3 и даже более, но лишь с использованием зеркалирования, например, построив RAID массив уровня 61 – RAID 6 из зеркал RAID 1. Так, в массиве RAID 61 из 8 шт. дисков по 2 ТБ, построенном как 4 зеркала из 2х дисков, данные сохранятся даже в случае выхода из строя 4х шт. любых дисков, т.е. отказоустойчивость составит N-4. Но значительным недостатком, кроме низкой скорости записи данных, у такого массива будет его полезная емкость. Она составит лишь 6 ТБ — это менее половины суммы объемов 8ми физических 2 ТБ дисков массива, что значительно удорожает дисковую подсистему, и что далеко не всегда приемлемо.
Хорошей альтернативой использованию RAID 5 и 6 могут стать RAID массивы уровней 50 и 60 – комбинация RAID 5 и 6 с RAID 0 (чередование stripe), т.е. это массивы RAID 0, построенные из нескольких RAID 5 или 6. При этом для каждого субмассива RAID 5 и 6 уровень отказоустойчивости сохраняется, соответственно, как N-1 и N-2, а отказоустойчивость RAID 50 и 60 составит, соответственно, от N-1 до N-2 и от N-2 до N-4, в зависимости от того выйдут ли из строя диски из разных субмассивах или нет. Но самое важное, что время восстановления отказоустойчивости в RAID 50 и 60 гораздо меньше, чем при больших единых массивах RAID 5 и 6, а значит и вероятность сбоя из-за ошибки при восстановлении отказоустойчивости резко уменьшается. Например, если в RAID 50 из 8 шт. дисков по 2 ТБ вышел из стоя один диск, то для восстановления отказоустойчивости массива RAID 50, достаточно будет прочитать данные только того субмассива RAID5, из которого был сбойный диск, т.е. это лишь объем 3 шт. дисков по 2 ТБ.
4. Необходимо регулярно проводить проверки жестких дисков входящих в RAID массивы 5 и 6 средствами предоставляемыми RAID контроллерами. Это проверка целостности массива — Consistency Check и проверка читаемости — Patrol Read. Процесс Consistency Check проверяет только те части дисков, где находятся данные и служебная информация четности, что позволяет судить об отказоустойчивости RAID массива, а процесс Patrol Read читает все, включая незанятые сектора диска. Если в процессах таких проверок выявляются нечитаемые сектора, то они помечаются как сбойные и более не используются в работе. Если сбойный сектор содержал данные, то они вычисляются и перезаписываются в новый сектор. Стоит отметить, что проверки необходимо проводить периодически, и можно эти задачи автоматизировать, запуская их по расписанию.
5. Регулярное резервное копирование данных с массивов RAID 5 и 6 становится еще более важным и нужным инструментом. Но, увы, как показывает практика, отсутствие восстановимых резервных копий не редкость у компаний и организаций. Если резервной копии данных нет или она устарела, то необходимо рекомендовать перед запуском процесса восстановления отказоустойчивости массивов RAID 5 и 6 сделать копию хотя бы с особо важных данных, пока они еще доступны. Чтобы процесс восстановлении отказоустойчивости RAID не начался автоматически, не рекомендуется использовать диски горячего резерва hot spare, т.к. копирование данных лучше выполнить без дополнительной нагрузки на RAID массив. Диски горячего резерва для RAID 5 и 6 на больших по объему дисках можно использовать только при наличии актуальной копии резервных данных.
6. Теоретически имеющаяся ситуация со сбоями при невосстановимых ошибках чтения в RAID5 и 6 может измениться, если:
6.1. Появятся жесткие диски большого объема с уровнем URE 1x 1016, но такие планы не обнародованы.
6.2. Появятся аппаратные RAID контроллеры с уровнем RAID 7.3 (N-3 c контролем четности), что вообще маловероятно, т.к. слишком велики накладные расходы на вычисление четности.
7. Становятся все более интересными программно-аппаратные решения для хранения данных, например, программно-определяемые СХД на основе ПО Open-E JovianDSS, где есть возможность и построить RAIDZ3 с уровнем отказоустойчивости N-3 и использовать все преимущества файловой системы ZFS.
Надеюсь эта статья поможет оценить риски, с которыми возможно придется столкнуться при работе с RAID массивами уровней 5 и 6 на дисках большого объема. Но какой же процент вероятности сбоя при восстановлении отказоустойчивости RAID массива с потерей всех данных можно считать приемлемым? Этот процент сбоя будет зависеть от ценности данных и от задач дисковой подсистемы, но, пожалуй, его значение не должно быть более 10-20% (не менее 4х успешных восстановлений массива из 5ти попыток), при обязательном условии, что имеется резервная копия данных.
Хотелось бы, чтобы представленные в статье рекомендации пригодились в практической деятельности по проектированию RAID массивов, и в работе с дисковыми подсистемами, построенными на основе RAID уровней 5 и 6.
Для получения дополнительной информации, пожалуйста, обращайтесь в наш отдел продаж.
© Александр Матвеев, 2018 Этот адрес электронной почты защищен от спам-ботов. У вас должен быть включен JavaScript для просмотра.
директор по развитию бизнеса ООО «Вист СПб»
При перепечатке и использовании этого материала
указание авторства (Александр Матвеев, 2018)
и ссылка на источник (www.vist-spb.ru) обязательны.
Raid 5 или 6 на ssd для esxi? — Хабр Q&A
SSD берут ради скорости, тем более внятные на запись серверные SSD.RAID5 или 6 ставят ради стоимости хранения гигабайта ценой заметного ущерба производительности записи.
То есть не очень понятно, с какой целью вы рассматриваете 5 или 6 рейд на хороших SSD. Если важен объём — то берите более дешёвые S45xx
и вообще у кого есть опыт использования ssd в рейдах на длительный срок(3-5 лет) как себя ведут ssd
Intel — отлично себя ведут. Даже при проблемах с питанием, у них штатный конденсатор, держащий достаточно энергии для корректной записи всего что диск пообещал системе. В спеках описано как Enhanced Power Loss Data Protection
У нас в эксплуатации много intel’ов разных лет (давно за сотню штук) Меняли в основном потому что в объём упирались. С отказом диска встречались только один раз. И это всё в условиях под постоянной нагрузкой СУБД postgresql.
В общем, мы безоговорочно рекомендуем брать в сервера интеловские SSD (если получается) за надёжность и предсказуемый latency под нагрузкой. Другие диски — очень сильно по разному себя ведут.
2) исходя из вопроса, есть смысл делать рейды 5 или 6 если все равно на все ссд пишется сразу данные ? получается к концу обьема записи ssd придется менять все диски сразу если какой раньше не вышел из строя
Я не вижу смысла в 5/6 рейдах на хороших SSD не касаясь Lifetime Writes
1) в этом контроллере есть hp smartpath, при его включении линейные скорость значительно ниже, примерно в 2 раза нежели при включении встроенного кеша, имеет смысл его вкл(smartpath или выключать) ?
Лучше softraid. Серьёзно. Без шуток. Глупый HBA и softraid.
hardraid под хорошие SSD надо или очень пристально настраивать хорошо зная свой контроллер или вы будете упираться в производительность контроллера, а не в диски.
PS: зачем вам линейные скорости под базы и виртуалки? Тестируйте random io.
Добавление диска в MDADM RAID 5/6 «на лету» / Habr
Сегодня хочу поделиться с вами краткой инструкцией, как добавить диск в существующий RAID 5/6 не пересобирая массив (зачастую это просто нереально — забэкапить 4-10Тб данных) и не останавливая работу сервера на сутки-другие. Данная инструкция написана для линуксовых софтрейдов через mdadm, с аппаратными контроллерами/виндой разговор особый и зачастую очень короткий (никак и все).Итак, приступим (система — Ubuntu 10.04, но работать должно практически везде).
Первым делом, подключаем диск и день-другой (ну или хотя-бы один раз полная перезапись) гоняем его под нагрузкой, записываем/считываем файлы. Это необходимо чтобы сразу обнаружить проблемы с диском, контроллером, кабелем. Если этого не сделать, и добавить «сбойный» диск в массив, может быть довольно весело (собственно, это случилось со мной, SATA6 диск оказался не очень совместим с SATA1 контроллером. Но благодаря безопасности mdadm потери данных удалось избежать).
0. Проверяем версию mdadm – желательно иметь последнюю стабильную версию. (в часности, в процессе написания этого гайда был найден баг при продолжении работы после сбоя — не устанавливался stripe_cache_size — но это уже должно быть исправлено)
1. Отключаем write intent bitmap, если он у вас конечно был (используется для ускорения пересборки массива в случае сбоя):
mdadm --grow --bitmap=none /dev/md0
2. Добавляем диски в массив как горячая замена (hot spare) – на этом этапе пока на них ничего не начинает писаться, диски будут использоваться в случае сбоя или последующего изменения размера массива.
mdadm /dev/md0 -a /dev/sda1
mdadm /dev/md0 -a /dev/sdb1
Делаем cat /proc/mdstat, и видим что диски добавились как hot spare (S)
Personalities : [raid6] [raid5] [raid4]
md0 : active raid6 sdb1[7](S) sda1[6](S) sdd1[2] sdc1[4] sdh2[0] sdg1[5] sdf1[1]
2929683456 blocks super 1.2 level 6, 1024k chunk, algorithm 2 [5/5] [UUUUU]
3. Проверяем UPS, выдергивая розетку из стены вилку из розетки (хотя розетку тоже можно). Аккумуляторы любят со временем сульфатироваться незаметно для упса, и могут неожиданно сдохнуть за пару секунд.
Несмотря на то, что наличие UPS-а необязательно для безопасного ресайза, с ним спокойнее. Драйвер рейд-массивов в ядре постоянно сохраняет прогресс ресайза, и при сбое в любом месте – может продолжить без проблем.
4. Самая главная команда:
mdadm --grow /dev/md0 --raid-disk=8 --backup-file=/var/backup
backup-file – необходим для сохранения резервной копии данных о массиве в случае сбоя на самом первом этапе изменения размера массива. Само собой файл не нужно ложить на сам рейд . Аналогично можно из RAID-5 сделать RAID-6 указав —level=6 (напомню, что RAID-6 выдерживает смерть 2-х любых дисков, что очень важно, т.к. восстановление большого RAID-5 занимает до 10-20 часов и что-то может произойти в это время…)
Операция изменения размера в среднем происходит со скоростью самого медленного диска. Т.е. если самый медленный диск жмет 60Мб/сек, то mdadm нужен будет один проход по массиву с такой скоростью. В случае терабайтных дисков это около 5 часов, если процессор будет успевать, и медленнее если не будет. Если скорость слишком маленькая – делаем
echo "200000" > /sys/block/md0/md/sync_speed_max
В процессе расширения массива данные остаются доступными, смотреть прогресс можно через /proc/mdstat.
5. После завершения ресайза – расширяем файловую систему. Сначала проверка
e2fsck -f /dev/md0
Затем собственно расширение:
resize2fs /dev/md0
6. Добавляем обратно write intent bitmap:
mdadm -G /dev/md0 —force -b /var/md0_intent —bitmap-chunk=65536
7. Перегенерируем конфиг mdadm.conf. Выполняем
mdadm --detail --scan –verbose
И результат вставляем в /etc/mdadm/mdadm.conf
8. Перегенерируем ramfs, чтобы после перезагрузки использовался правильный конфиг mdadm:
update-initramfs -k all –u
Готово
Теперь у вас RAID-массив стал больше, и вам не пришлось платить безумные деньги для того чтобы получить эту возможность. Не забываем про мониторинг – чем больше дисков, тем выше риск один из них перегреть.
PP. С mdadm можно делать и другие веселые вещи – например если у вас маccив из 1Тб дисков, а вдруг нашлись 2 по 500 – их можно объеденить в RAID-0, и добавить в основной массив. А если на этих двух дисках останется по 100Мб свободного места – можно это сделать отдельным разделом, объеденить в RAID-1, и замонтировать туда /boot/ — и тогда можно будет систему полностью перенести на RAID, и грузится без вспомогательных средств (вроде флешек, старых веников и проч.).
PPS. Глядя на количество дисков справа со своего домашнего файлсервера, я начинаю думать, что у меня в детстве наверное был слишком маленький винчестер… Впрочем, могло быть хуже
Комментарии/вопросы – в студию.