On 03/22/2012 09:19 AM, Зеленяк Алексей wrote:
22.03.2012 06:59, Eugene Grosbein пишет:
восстановления в ата5 стандарте нет. Софтрейд скорее всего просто
> пометит диск как сбойный после нескольких попыток, думаю хард-рейд
ничем
> не отличается.
В данном случае с "софтрейдом" все будет работать правильно. Из
софтового рейда веники не "вылетают". И десктопные веники как раз и
рекомендованы к использованию в десктопных софтовых рейдах. Так же они
находят применения в SAN/NAS системах, которые так же являются софтовыми.
Так, мне кажется у вас каша. Давайте разберемся.
1) Параметр ERC влияет только на скорость негативного ответа от жесткого
диска в случае проблем. Ерк - 0, то работают внутренние таймауты диска,
обычно достаточно длинные. Ерк выставлен - диск просто даст негативных
ответ сразу после таймаутов.
2) Если рейд не смог записать что-то на диск - его правильная реакция -
попытаться повторить запись несколько раз и выкинуть сбойный винт из
массива. Никаким "ремонтом" он заниматься не может и не должен. С
чтением - возможны варианты, но я не уверен что кто-то пытается
перезаписывать сбойный сектор по чтению, скорее всего реакция будет
такая же. Единственное что может помочь - при выставленном ерк рейд
сделает не 1 попытку, а больше, так как таймеры не сработают, и винт
таки сделает ремап. Но это только на записи поможет
3) В итоге - если винт глючный - рейд выкинет его как с ерк=0, так и с
ерк=100 (10 секунд), но во втором случае это произойдет намного раньше.
Кроме того - наша система не будет ужасно тупить пытаясь получить ответ
от умирающего лиска.
4) Если у вас начинаются задержки по чтению-записи такие, что рейд
выкидывает диск - ему прямая дорого в рма, и в смарте это должно быть
очень хорошо видно.
5) С хардварными рейдами можно наступить еще и на глюки прошивки,
которые вообще не имеют никакого отношение к обсуждаемой теме.
Итог - наличие выставленного параметра ерк (или тлер у вд) не помешает
выкинуть плохой диск рейду, но наоборот - поможет. Если у винта при этом
появилось много релокейтов - выкинуть его нафиг надо. Если немного и
инфа не суперважная - dd if=/dev/zero of=/dev/ada1 bs=1M, смотрим смарт
и пихаем обратно в рейд. Следим, чтобы сильно не росло. Такие дела.
Проблемы начинаются только при использовании десктопных веников с
аппаратным рейдом, который из-за "задержек" чтения записи (возможно
повторяющихся) выбрасывает неугодные веники из масива. На поверку эти
веники оказываются полностью рабочими. Проходят все тесты и по
гарантии их сдать невозможно, но в массиве работать отказываются...