Горячая замена диска raid
Обновлено: 07.07.2024
Горячая замена диска Adaptec 6405 официально поддерживается RAID-контроллером и осуществляется достаточно просто. При этом вам все же лучше будет полностью протестировать этот процесс пока сервер ещё не введен в работу, а также задокументировать эти шаги . Если какой-либо диск (или несколько дисков) все же выйдут из строя на массиве с полезной нагрузкой, вам будет не до выяснения нюансов работы контроллера, нужно будет выполнять замену диска и лучше, чтобы вы были полностью уверены в этом процессе. Для тех, кто поленился сделать для себя подробный гайд step by step главным образом и предназначается эта статья (ну а также разумеется для меня самого и моих коллег).
Если вам интересны raid-технологии и задачи администрирования raid-контроллеров, рекомендую обратиться к рубрике RAID на моем блоге.
Горячая замена диска Adaptec 6405
Для начала нужно определить в какой корзине находится диск, который нам нужно заменить. Есть несколько способов это сделать:
1) При должной настройке диск скорее всего сидит в корзине с тем порядковым номером, в какой и должен (судя по информации из ASM. Учтите, что номера корзин начинаются с 0);
На этом моменте корзина диска должна ритмично замигать красным светодиодом.
3) Ничего не делать и просто через ASM перевести диск в состояние Failed. В этом случае контроллер начнет издавать мерзкий писк и будет непрерывно светиться красный светодиод на корзине с проблемным диском.
Отлично, допустим диск определен (или вы пропустили этот шаг), двигаемся дальше. Теперь нужно подготовить диск к изъятию. Можно конечно его просто выдернуть, но не думаю, что это хорошее решение, тем более когда все можно сделать правильно. К тому же так рекомендуют сделать и в официальной документации 1 .
Сразу выскочит предупреждение, что массив будет переведен в деградированное состояние:
Подтверждаем. В реальной среде вышедший из строя диск скорее всего и так будет в состоянии Failed, а массив в деградированном виде. У меня же эксперимент на тестовой среде и я перевожу диск в нужное состояние вручную. Вот как изменятся показания ПО:
Напоминаю, что массив при этом у меня формально остался в рабочем состоянии, ведь я использую RAID1 и он обеспечивает работоспособность при выходе из строя до половины дисков.
На этом этапе можно смело идти и заменять диск на новый (объем диска вплоть до байта должен быть больше или равен объему других дисков в действующем массиве). Контроллер при этом будет издавать писк (как я и говорил выше), а корзина с проблемным диском сигнализировать о проблеме непрерывно горящим красным светодиодом .
После замены показания ASM будут выглядеть следующим образом:
Получаем предупреждение и соглашаемся с ним:
Никаких дополнительных диалоговых окон выскочить не должно, а диск сразу станет частью массива:
и автоматически запустится процесс ребилда:
Основными факторами определяющими будущий уровень массива являются:
- скорость
- цена
- отказоустойчивость
В итоге отношение этих трёх факторов даёт нам три возможных варианта нужного уровня рейд
Может показаться, что для RAID5, RAID6 нужно вложить больше денег, однако итоговая ёмкость массива при том же количестве дисков, что и в RAID1+0 будет больше. А это может стать определяющим фактором
Действительно ли вам нужен RAID0?
Перед тем как строить RAID0 на шпиндельных дисках обратите внимание на диски SSD. В зависимости от ваших потребностей вам может быть выгоднее купить один диск SSD, чем пару шпиндельных дисков с 7200rpm. С другой стороны если вы планируете высокоёмкостный массив и важно, чтобы был быстрый доступ к данным, то лучше смотреть в сторону шпиндельных дисков с 10000rpm в качестве кандидатов. Разница в цене между одним SSD и парой шпиндельных дисков может быть достадочно большой
Таким образом стоимость высокоёмкостного массива RAID0 или даже RAID10 на базе шпиндельных дисков будет значительно меньше. И большинстве случаев такой RAID вполне способен удовлетворить ваши потребности. Если же вам не нужен такой большой массив, то лучше взять один SSD вместо RAID0 или два SSD в RAID1 вместо RAID10. Кроме того минимальное время доступа таких RAID не уменьшается. Именно поэтому на сегодняшний день SSD будет лучшим выбором
RAID5 или RAID6?
Если вы планируете строить RAID5 общей ёмкостью более 15Тб, то лучшим решением будет всё же RAID6
RAID6 в этом смысле более надёжен
Горячая замена (hot spares)
Резервный диск hot spare является хорошим дополнением к отказоустойчивости массива повышая его надёжность. Если вылетел один из дисков в отказоустойчивом массиве (RAID1, RAID10, RAID5 или RAID6) массив стал уязвим. В таком случае вам нужно физически вытащить сбойный диск и на его место установить новый. Только после этого начнётся перестройка массива. Наличие диска hot spare позволяет контроллеру немедленно приступить к восстановлению, без вторжения со стороны администратора. Чем больше дисков в вашем массиве, тем больше вероятность того, что вам потребуется hot spare диск
Технология hot spare особенно эффективна, когда единственный диск hot spare доступен для нескольких массивов. Например в восьмидисковом NAS лучше построить RAID6, чем RAID5. Потому что в случае с RAID5 диск hot spare работает вхолостую ожидая своей участи, в то время как его лучше использовать в RAID6, что сделает операции чтения эффективнее и массив более отказоустойчивым. С другой стороны при наличии двух массивов RAID5 диск hot spare одинаково быстро доступен для любого из них, тем самым сокращая и без того немалые расходы
Программный RAID все-таки жив
Не недооценивайте реализацию RAID средствами ОС
- такой RAID обеспечивает аналогичную, а может даже лучшую надёжность, по ставнению с интегрированими контроллерами начального уровня. Он также более надёжен, чем тот же RAID построеный на базе pci-raid-контроллера за 20$
- RAID средствами ОС легче перенести с сервера на сервер. Нет риска в длительном простое, пока вы купите новый аналогичный контроллер на замену вышедшему из строя. Ему не нужны драйвера pci-raid-контроллера. Вы просто переносите диски на новое железо и всё
- в случае с RAID0, RAID1, RAID10 у pci-raid-контроллера нет особых преймуществ, потому что он не занимается вычислительними операциями. Я не умаляю возможности pci-raid-контроллера работать с кешем записи, но для этого он должен комплектоваться BBU
- потому многие современные NAS для домашнего пользования и малого бизнеса используют програмный RAID
Побочный эффект такого RAID:
- нет гарантий в надёжной загрузке системы
- значительное падение производительности сервера во время перестройки массива
Тестирование RAID
Свежепостроеный отказоустойчивый массив (RAID1, RAID10, RAID5, RAID6) нуждается в тестировании для того, чтобы знать как поведёт себя RAID в случае отказа одного из дисков
- если ваше устройство поддерживает hot swap, вытягивайте любой диск на живой системе
- если устройство не поддерживает hot swap, вытягивайте диск только после выключения устройства
После этого вы должны убедиться, что работающая система ведёт себя ожидаемым образом, массив доступен, есть возможность записывать и считывать данные. Желательно, чтобы вы получали уведомления о нештатной ситуации на мейл или по SMS. Средствами ПО контроллера проверьте определяется ли порт контроллера со сбойным диском. После этого отключите UPS от сети, через определённый период времени система должна корректно завершить работу
Тестирование лучше проводить до ввода в устройства эксплуатацию, чтобы вы знали как реагировать если что. Да и лишняя головная боль вам ни к чему если вдруг что-то пойдет не так
- выход из строя RAID-контроллера, сопровождается как правило простоем пока купят аналогичный, а если такого нет впереди как правило бессоная ночь с восстановлением данных
- выход из строя большего числа дисков, чем это допустимо
- намеренное или случайное удаление или искажение пользователем рабочих файлов
- пожары, наводнения и прочий форс-мажор
- да мало ли что еще может быть
Всегда на замену должны быть диски нужного размера, всегда! Должен быть квалифицированный человек которорый сможет выполнить замену дисков для восстановления массива. Время реакции на возникшую проблему должно быть минимальным, иначе вы рискуете не пережить следующий подобный отказ. Но всё дело в том, что вы не будете знать когда нужно предпринимать экстренные меры если у вас не будет системы мониторинга
- регулярная проверка SMART параметров дисков
- очень желательно, чтоб ваш RAID-контроллер умел scrubbing. Scrubbing работает в моменты простоя считывая и контролируя характеристики чтения, что даёт вам возможность узнать о потенциальных сбойных секторах раньше, чем они появятся реально
- любое необъяснимое падение производительности может означать проблемы с диском
Восстановление RAID
Существует один известный и широко обсуждаемый вопрос относительно RAID5.
Для того, чтобы восстановить массив из N дисков по C терабайт каждый, нужно считать C*(N-1) данных. Число бит которые необходимо считать определяется формулой
b = C * (N-1) * 8 * 10 12
Вероятность перестройки массива с удачным исходом определяется формулой
P = q b
Величину p указывает производитель в спецификации диска, и обычно она равна 10 -15 ошибок чтения на один бит
Значение URE производителя
Вероятность краха при
Эти расчёты выставляют проблему в худшем свете, чем это есть на самом деле и основаны они на несколько наивных утверждениях:
- сбойные биты встречаются через одинаковые промежутки времени и расположены равномерно по всем дискам массива
- единственная ошибка считывания во время перестройки массива убивает весь массив
Но оба эти утверждения не соответствуют дейтвительности, что делает рузультаты вычислений абсолютно бесполезными. Кроме того сама идея учёта ошибоксчитывания на по-битном уровне кажется сомнительной, учитывая то, что блочные устройства не могут считывать меньше, чем 512 байт данных за одну транзакцию
Таким образом утверждение в начале этого раздела может быть переопределено в нечто более практичное
Существует 50% вероятность того, что невозможно будет перестроить массив RAID5 ёмкостью 12Тб
Тоже самое можно сказать иначе
Если у вас есть 10Тб массив уровня RAID0, то существует вероятность 50%, что вы не сможете прочитать данные даже если вы их записали мгновение тому назад 1
Тем не менее никто не говорит о том, что RAID0 мёртв. Выше сказанное можно переформулировать по-другому
Подобные утверждения не могут быть правдой
перевод Александр Черных
системный администратор
Системный администратор. В сисадминстве с 2000 года. Участник cyberforum
Сегодня провел испытания, у меня прошло все нормально, зависаний не было. Очевидно зависит от блока питания (мой на 500W удержал без проблем). Хотя нужно отметить что искрение есть. На боевом сервере я бы подобные эксперименты с 4-пиновым питанием не проводил.
На SATA разьемах искрения, нет вообще! Лично многократно проверял.
В этой статье, я не пытаюсь создать велосипед. Я описываю способ позволяющий выполнить гарячую замену винта при слабом финансировании. Согласитесь далеко не каждая контора купит девайс с правильной горячей заменой. Это мягко говоря не совсем дешево.
2.В файл /boot/loader.conf добавляем строку
speaker_load=YES
Запускаем скрипт через крон, например раз в час
0 * * * * root /. /raid_alarm
При проблемах с массивом раз в час сервер будет заливаться трелью сирены.
Для проверки скрипта можно закоментировать третью строку скрипта и раскоментировать вторую(только для проверки, если есть RAID gmirror. ) Потом все вернуть на место.
Читал, но кроме мана, еще и голова нужна. Только желательно наоборот При отключеном AHCI, например имею: ATA channel 3: Заметьте, на одном канале. Не очень то понял о чем речь? Но все же, рассмотрим мой случай. Есть четыре порта , и четыре винта. Собрано два массива.
|