Контроль восстановления ошибок
Эта статья нуждается в дополнительных цитатах для проверки . ( апрель 2010 г. ) |
В вычислительной технике контроль восстановления после ошибок ( ERC ) ( Western Digital : восстановление после ошибок с ограничением по времени ( TLER ), Samsung / Hitachi : ограничение времени завершения команды ( CCTL )) — это функция жестких дисков , которая позволяет системному администратору настраивать объем накопителя время, которое микропрограмма может потратить на восстановление после ошибки чтения или записи. Ограничение времени восстановления позволяет улучшить обработку ошибок в аппаратных или программных RAID средах . В некоторых случаях возникает конфликт относительно того, должна ли обработка ошибок выполняться жестким диском или реализацией RAID, что приводит к тому, что диски помечаются как непригодные для использования, и к значительному снижению производительности, хотя в противном случае этого можно было бы избежать.
Обзор
[ редактировать ]Современные жесткие диски имеют возможность восстанавливаться после некоторых ошибок чтения/записи путем внутреннего перераспределения секторов и выполнения других форм самотестирования и восстановления. Иногда этот процесс может занять несколько секунд или (при интенсивном использовании) минут, в течение которых диск не отвечает. Аппаратные RAID-контроллеры и программные реализации RAID предназначены для распознавания диска, который не отвечает в течение нескольких секунд, и помечают его как ненадежный, указывая на то, что его следует вывести из использования и восстановить массив на основе данных четности . Это длительный процесс, который снижает производительность, и если из-за дополнительной рабочей нагрузки выйдет из строя больше дисков, это может иметь катастрофические последствия.
Если сам диск по своей сути надежен, но имеет несколько поврежденных секторов, то TLER и подобные функции предотвращают ненужную пометку диска как «неисправного», ограничивая время, затрачиваемое на исправление обнаруженных ошибок, прежде чем сообщать контроллеру массива о неудачной операции. Затем контроллер массива может выполнить восстановление ограниченного объема данных, а не помечать весь диск как неисправный.
Типичные значения по умолчанию
[ редактировать ]По сути, TLER и подобные функции ограничивают производительность обработки ошибок на диске, позволяя аппаратным RAID-контроллерам и программным реализациям RAID обрабатывать ошибки в случае возникновения проблем.
Western Digital, Как правило, корпоративные диски такие как Raptor , Caviar RE2 и RE2-GP (RAID Edition), поставляются с параметрами TLER Read «Enabled» (7 секунд) и TLER Write «Enabled» (7 секунд), тогда как настольные диски, такие как Caviar SE, SE16 и GP поставляются с отключенными чтением и записью TLER (для отключения установлено значение 0 секунд).
Особенности автономного режима и RAID
[ редактировать ]Лучше всего, чтобы TLER был «включен» в RAID-массиве, чтобы предотвратить превышение времени восстановления после ошибки чтения или записи диска порогового значения тайм-аута реализации RAID. Если время ожидания диска истекло, жесткий диск необходимо будет повторно добавить в массив вручную, что потребует повторной сборки и повторной синхронизации жесткого диска. Включение TLER позволяет предотвратить это, прерывая исправление ошибок до истечения времени ожидания, чтобы сообщать об ошибках только для сегментов данных. Результатом является повышение надежности RAID-массива.
В автономной конфигурации TLER должен быть отключен. Поскольку диск не является резервным, сообщение о сбое сегментов приведет лишь к увеличению необходимости вмешательства вручную. Без аппаратного RAID-контроллера или программной реализации RAID для удаления диска нормальная возможность восстановления (без TLER) является наиболее стабильной.
В конфигурации программного RAID полезность TLER зависит от операционной системы. Например, во FreeBSD стек ATA/CAM управляет таймаутами и настроен на постепенное увеличение таймаутов по мере их возникновения. Таким образом, если настольный диск без TLER начинает задерживать ответ на чтение сектора, FreeBSD будет повторять чтение с последовательно увеличивающимися таймаутами, чтобы предотвратить преждевременное удаление диска из массива.
Модель | TLER по умолчанию (чтение/запись) | Отдельная рекомендация | Рекомендации по RAID |
---|---|---|---|
Икра, SE, SE16, GP, Раптор | Отключено (0 с / 0 с) | По умолчанию | Включено (если возможно) |
Икра RE2, RE2-GP, Красная | Включено (7 с / 7 с) | Неполноценный | По умолчанию |
ZFS
[ редактировать ]Файловая система ZFS была написана для немедленной записи данных в сектор, который сообщается как плохой или чтение которого занимает слишком много времени (например, диски без TLER); обычно это приводит к немедленному переназначению слабого сектора на большинстве дисков. [ нужна ссылка ]
RAID-контроллеры
[ редактировать ]Значения времени ожидания отключения для разных аппаратных RAID-контроллеров могут различаться у разных поставщиков; таким образом, TLER должен сработать до того, как контроллер отключит привод. Например, 3ware 9650SE использует в качестве таймаута 20 секунд. [1] в то время как для логики LSI, используемой в IBM x-серии, это время составляет 10 секунд. [2]
Широко доступная технология Intel Matrix RAID/Intel Rapid Storage , встроенная в серверные материнские платы Intel и современные материнские платы для настольных ПК, представляет собой псевдоаппаратный контроллер, а не настоящий аппаратный RAID-контроллер.
Программный RAID
[ редактировать ]Linux mdadm просто удерживает диск и позволяет ему завершить восстановление, однако время ожидания команды по умолчанию для уровня диска SCSI (/sys/block/sd?/device/timeout) составляет 30 секунд. [3] после чего он попытается перезагрузить диск, и если это не удастся, отключите диск. [4]
Изменение ERC
[ редактировать ]Стандарт АТА-8
[ редактировать ]Стандарт ATA-8 2006 года определяет SCT. Команда управления восстановлением ошибок . [5] Для жестких дисков, реализующих этот интерфейс, Утилита smartctl (часть пакета smartmontools ) может использоваться для изменения времени ожидания восстановления после ошибок с помощью -l scterc
. [6] В 2018 году в ACS-4 добавлена функция сохранения этого параметра после перезагрузки; теперь он поддерживается smartctl. [7]
Управление поведением тайм-аута с помощью Утилита smartctl может работать не на всех жестких дисках, поскольку некоторые производители изменили свои настольные накопители, чтобы не включать поддержку параметра ERC, [8] [9] якобы для того, чтобы заставить продавать свои более дорогие модели RAID/корпоративные. [ нужна ссылка ] Ричард Грегори, написавший оригинальный патч ERC для smartctl, сообщает, что Western Digital отказалась от поддержки ERC, выпустив новую модель без предварительного уведомления. [6]
В Windows помимо smartctl (которая является кроссплатформенной) доступна программа HDAT2. [6]
стандарт SCSI
[ редактировать ]SBC-4 описывает поле RECOVERY TIME LIMIT на странице режима восстановления ошибок чтения-записи, используемое для определения того, как диск выполняет восстановление после ошибок. [10] Программа sdparm может изменить этот параметр с помощью --set=RTL
. [11]
Поставщик коммунальных услуг
[ редактировать ]Вестерн Диджитал
[ редактировать ]А Утилита WDTLER.EXE позволяет включать или отключать параметр TLER на жестких дисках Western Digital. Эта утилита написана для DOS . Утилита работает и вносит изменения на все совместимые жесткие диски Western Digital, подключенные к компьютеру. Изменение сохраняется при циклическом включении питания. Western Digital упоминала этот инструмент в FAQ. [12]
Утилита поставляется с тремя пакетными файлами: TLERSCAN.BAT, чтобы получить текущее состояние настройки TLER на всех жестких дисках, TLER-ON.BAT для включения TLER и TLER-OFF.BAT для отключения TLER. Включено TLER-ON.BAT установит время чтения и записи TLER на семь секунд. Можно использовать Утилита WDTLER.EXE непосредственно с -r# -w#
параметры для пользовательского тайм-аута.
Western Digital утверждает, что использование Утилита WDTLER.EXE на новых дисках может повредить прошивку и сделать диск непригодным для использования. Утилита больше не доступна в Western Digital, и на новых накопителях невозможно изменить настройку TLER. Диски RE подходят только для RAID-массивов, а Caviar подходят только для использования без RAID. Утилита по-прежнему работает для старых дисков. [ который? ] .
Хитачи
[ редактировать ]В 2009 году служба поддержки клиентов Hitachi заявила, что существует инструмент для изменения ERC (называемый CCTL). [12]
Сигейт
[ редактировать ]Компания Seagate предоставляет Утилита openSeaChest , позволяющая запрашивать и изменять многие настройки прошивки, включая TLER. Если вы не можете использовать smartctl -l scterr,x,y
чтобы установить TLER, соответствующие команды командной строки: openSeaChest_Configure -d /dev/sg0 --sctReadTimer
и openSeaChest_Configure -d /dev/sg0 --sctWriteTimer
.
Ссылки
[ редактировать ]- ^ «Руководство пользователя для 9650SE 9690SA начиная с версии 9.5.2 Полный набор кодов» . lsi.com . Архивировано из оригинала 3 февраля 2012 года . Проверено 10 июня 2015 г.
- ^ Доступно в утилите BIOS Raid Config > Расширенные свойства устройства.
- ^ «linux/sd.h в мастере · torvalds/linux · GitHub» . Гитхаб .
- ^ «Подсистема Linux SCSI: SCSI EH» . ядро.орг .
- ^ Набор команд ATA/ATAPI (ATA8-ACS)
- ^ Перейти обратно: а б с Ричард Грегори. «Авторское описание оригинального патча для smartctl, реализующего эту функцию» . Архивировано из оригинала 10 сентября 2013 г. Проверено 15 февраля 2013 г.
- ^ «#1427 (Добавить поддержку функций таймера восстановления ошибок SCT, добавленных в ACS-4) – smartmontools» . www.smartmontools.org .
- ^ «Re: md RAID с дисками SATA или SAS корпоративного класса» . сайт spinics.net .
- ^ «Часто задаваемые вопросы по Seagate: что такое контроль восстановления после ошибок?» . seagate.com .
- ^ «INCITS 506-202x - Информационные технологии - Блочные команды SCSI - 4 (SBC-4), черновая версия 22» . 15 сентября 2020 г. Проверено 22 мая 2023 г.
- ^ Linux программиста Руководство – Администрирование и привилегированные команды –
- ^ Перейти обратно: а б «Поток TLER/CCTL/ERC» . [H]ard|Форум . 16 ноября 2010 г.
Внешние ссылки
[ редактировать ]- Linux Raid вики: несоответствие времени ожидания
- Ответ на часто задаваемые вопросы Western Digital с кодом 1397: Разница между версией Desktop и RAID (Enterprise) [ постоянная мертвая ссылка ]
- Информационный бюллетень по ограниченному по времени восстановлению после ошибок (TLER) , Western Digital, январь 2013 г.
- Самсунг CCTL