LINUX.ORG.RU
решено ФорумAdmin

mdadm [я просто оставлю это здесь]

 , ,


3

5
# hdparm -tT /dev/sda

/dev/sda:
 Timing cached reads:   26304 MB in  1.99 seconds = 13220.03 MB/sec
 Timing buffered disk reads: 360 MB in  3.01 seconds = 119.54 MB/sec
# hdparm -tT /dev/sdb

/dev/sdb:
 Timing cached reads:   26240 MB in  1.99 seconds = 13186.53 MB/sec
 Timing buffered disk reads:  16 MB in  3.32 seconds =   4.82 MB/sec
# cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 sdb2[1] sda2[0]
      243567424 blocks super 1.2 [2/1] [UU]
      bitmap: 2/2 pages [8KB], 65536KB chunk

unused devices: <none>
★★★★★

Последнее исправление: cetjs2 (всего исправлений: 1)

Ответ на: комментарий от Radjah

Было и такое! Ну там ещё много всего крутится (в т.ч. 50 процессов kerberos auth), и всё это беспорядочно мельтешит.

Спасибо!

DALDON ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Контроллер просто вернёт ошибку сразу.

Контроллер диска? У меня ведь на этой машине нету HW RAID.

DALDON ★★★★★
() автор топика
Ответ на: комментарий от DALDON

Тебе уже описали механизм работы, гляди на пастбине выхлоп смарта, мд сможет обработать если смарт поставит фэйл

anonymous
()
Ответ на: комментарий от King_Carlo

Если эта хрень поддерживается, то hdd будет браковаться смартом при неудачных попытках чтения/записи в течении n секунд (задаётся в параметрах). Если смарт переведёт hdd в состояние failure, то mdadm тут же его выкинет из массива. Это вообще не его дело понимать живой хард или нет. Так что не надо использовать десктопные харды в массивах.

Низкий поклон, и глубокое уважение. Снимаю шляпу. Мои диски это умеют. Надо было заранее это в smart просто включить.

DALDON ★★★★★
() автор топика
Ответ на: комментарий от DALDON

он уже скорее всего включено

smartctl -l scterc /dev/sda

ну и Б соответственно, значение в мс отличное от нуля означает, что работает

anonymous
()
Ответ на: комментарий от King_Carlo

и та, мой плюсик в копилку, дописал шпору, а то уж и сам забыл за годами

anonymous
()
Ответ на: комментарий от anonymous

упс, десятые секунды, ну не важно, 1 секунда будет 10.

0 - дрючить до конца, никак не подойдет для работы райда

anonymous
()
Ответ на: комментарий от anonymous

Ребят, оно выключено, но поддерживается судя по выводу смарта! А как включить - не знаю. Делаю: smartctl -l scterc,70,70 /dev/sda --- живёт до ребута. Вот смотрю маны...

King_Carlo

DALDON ★★★★★
() автор топика

mdadm выкинет диск только когда он начнёт возвращать ошибки. Пока диск работает (даже если медленно) mdadm его трогать не будет. Я, честно говоря, не понимаю почему ты прицепился к mdadm. Думаю, большинство так работают. Я даже специально писал в саппорт 3ware по этому поводу, у них точно так же: если операция не возвращается успешно после двух попыток за N секунд то хард вываливается из массива. Иначе он считается рабочим.

true_admin ★★★★★
()
Ответ на: комментарий от DALDON

живёт до ребута

Прописать в smartd.conf, насколько я знаю непосредственно в контроллер диска прописать не получится.

King_Carlo ★★★★★
()
Ответ на: комментарий от King_Carlo

А походу это демону, параметры цепляет с конфига при старте, но конфиг должен переписывать, в зависимости от того, что просили

anonymous
()
Ответ на: комментарий от anonymous

3.5 краснуха умеет, 2.5 чернуха не умеет.

Radjah ★★★★★
()
Ответ на: комментарий от King_Carlo

Ух ты, какая штука у меня есть... Спасибо!

t184256 ★★★★★
()
Ответ на: комментарий от true_admin

Я, честно говоря, не понимаю почему ты прицепился к mdadm.

Честно говоря, я начитался тут (да и не только), о том, что mdadm мол может развалить raid без видимых причин. Всегда думал, что он в случае малейшей неисправности будет всё отстреливать. Но теперь я более склонен к той версии, что mdadm как раз ничего просто так не будет разваливать. И пока читал коменты, снова вспомнил, что я могу сделать mdadm, хоть на loop ус-вах. А следовательно, стал задумываться, о том, что: smart, это уровень ниже. И видимо, он и только он должен помечать диск как fail. Вопрос: а в какое поле он должен это записывать? В общем, не знаю чего сказать, я как-то верил скорее в магию, и думал что раз имеется software raid, и он настолько крут, что его используют даже в Yandex, то наверно mdadm, штука которая сама будет обо всём заботиться. Теперь я понял, что заботиться то она будет, но ей всё же надо помогать (ну или как минимум ставить диски из серии RAID EDITION).

DALDON ★★★★★
() автор топика
Последнее исправление: DALDON (всего исправлений: 1)
Ответ на: комментарий от anonymous

В каком поле поставит fail?

Reallocated_Sector_Ct   0x0033   001   001   036    Pre-fail  Always   FAILING_NOW 32456 

Этого не достаточно похоже...

DALDON ★★★★★
() автор топика
Последнее исправление: DALDON (всего исправлений: 1)
Ответ на: комментарий от DALDON

а вот тут тебе право выбора, скурить спеки и посчитать есть ли у тебя резерв по релокам или пора на свалку ибо дальше будут сыпаться данные. В любом случае, абсолютной панацеи нет. Софтовый предпчитают юзать из-за большой гибкости с восстановлением и за поддержку во времени, у аппаратного есть нюанс, зипа может не быть, а модель снята с производства.

anonymous
()
Ответ на: комментарий от DALDON

Ок, скриптом в загрузку, такой костыль встречал

anonymous
()
Ответ на: комментарий от DALDON

mdadm мол может развалить raid без видимых причин

Об этом писали олухи которые команды dmesg не знают. mdadm (точнее, ядро) пишет во всех подробностях что и почему происходит.

true_admin ★★★★★
()
Ответ на: комментарий от Radjah

А вот это как раз очень частые случаи, харды из одной партии летящие одновременно. Причем частые настолько, что уж чуть ли не закономерностью можно считать.

anc ★★★★★
()
Ответ на: комментарий от anonymous

Кстати, да. У корефана в хецнере в прошлом году проблемы были с просадкой IO на сервере, попросил посмотреть. Я посмотрел и схватился за голову, оба диска в зеркале FAILING_NOW были (по более чем 1500 reallicated секторов на каждом диске), Поддержка экстренно вставила 3-й диск, я добавил его в зеркало, запустился ресинк и практически 100% данных было спасено, debsums показал 3 или 4 повреждённых файла и у него в данных косяк в 2-3 файлах был.

Deleted
()
Ответ на: комментарий от true_admin

Об этом писали олухи которые команды dmesg не знают. mdadm (точнее, ядро) пишет во всех подробностях что и почему происходит.

Прихожу к аналогичному выводу! У меня сейчас в каждом диске:

# smartctl -a /dev/sda|grep FAILING_NOW
  5 Reallocated_Sector_Ct   0x0033   001   001   036    Pre-fail  Always   FAILING_NOW 32456
# smartctl -a /dev/sdb|grep FAILING_NOW
  5 Reallocated_Sector_Ct   0x0033   002   002   036    Pre-fail  Always   FAILING_NOW 32360

И хоть бы чухнулся ссука, этот mdadm :) Ну на mdadm я не грешу, ибо сам виноват по всем фронтам. Это я так... Кстати, надо загуглить, а можно ли делать scrub для md девайса?

DALDON ★★★★★
() автор топика
Ответ на: комментарий от Deleted

Эка невидаль, 1500 секторов, вот у меня гораздо интереснее:

# smartctl -a /dev/sda|grep FAILING_NOW
  5 Reallocated_Sector_Ct   0x0033   001   001   036    Pre-fail  Always   FAILING_NOW 32456
# smartctl -a /dev/sdb|grep FAILING_NOW
  5 Reallocated_Sector_Ct   0x0033   002   002   036    Pre-fail  Always   FAILING_NOW 32360

DALDON ★★★★★
() автор топика
Ответ на: комментарий от DALDON

Собственно не понятно, почему mdadm не выкинул не исправный диск...

Собственно не понятно, почему слово «неисправный» ты пишешь именно так?

Собственно не понятно, чему тебя, далдона, в школе учили?

anonymous
()
Ответ на: комментарий от DALDON

Ну у тебя, в случае похожей операции, есть очень неиллюзорный шанс потерять данные с массива при ребилде, ибо у диска просто кончатся запасные сектора и любая дисковая операция будет возвращать ошибку. А что за диски, что так дофига запасных секторов? Я такое вообще первый раз вижу, обычно у меня уходят в нирвану при 2500-4000 reallocated sector count.

Deleted
()
Ответ на: комментарий от true_admin

Спасибо! Я уже ознакомился с возможностями речека, но делать его вестимо не буду, ибо очевидно, у меня всё встанет тогда. Данные я уже утащил на другую машинку. Сейчас мне надо будет спасти сервер :) У меня же похоже ещё более весёлая ситуация вышла... У меня некоторые eth в «Promiscuous mode». И они прослушиваются через fprobe+nfseen, а похоже из-за диких проблем с i/o, у меня некоторые интерфейсы стали настолько жутко тупить, что я искал сперва проблему на аппаратном уровне материнской платы (ибо замена карточек мне не помогла), и iperf упорно мне показывал 700кб/сек в одном из направлений...

Короче весело! :)

Поэтому и придумали «серверные» диски.

Посмотрел на своих RAID Edition, действительно, стоят нужные параметры. Я в своё время, схватил диски, какие были под рукой новые. Посмотрел TLER есть вроде в SMART, посмотрел что mdadm в него не умеет, и забил, понадеялся на mdadm (балбес). Но вообще говоря, даже мои текущие диски то можно накрутить, как мне в этом треде посоветовали. Я как спасу сервер, обязательно накручу что надо, и посмотрим всем лором на результаты. :) Выкинет mdadm их или нет.

DALDON ★★★★★
() автор топика
Ответ на: комментарий от Deleted

Ну у тебя, в случае похожей операции, есть очень неиллюзорный шанс потерять данные с массива при ребилде, ибо у диска просто кончатся запасные сектора и любая дисковая операция будет возвращать ошибку.

Да, я понимаю это. По сему, не трогаю ничего :) Уже забрал через rsync все данные, как заменю железку - буду разбираться. :) И мучать их до смерти) Будем ушатывать их всем ЛОРОМ.

А что за диски, что так дофига запасных секторов?

Да фиг знает, какой-то сегейт со склада взял, новые были. Эта машинка у меня маршрутизатор с проксёй, по сему особо не морочился. Но не ожидал таких проблем...

DALDON ★★★★★
() автор топика
Последнее исправление: DALDON (всего исправлений: 1)
Ответ на: комментарий от true_admin

Вот оно чё, Михалыч, в wiki, то всё написано https://en.wikipedia.org/wiki/Error_recovery_control#Software_RAID :

Software RAID

Linux mdadm simply holds and lets the drive complete its recovery - however, the default command timeout for the SCSI Disk layer (/sys/block/sd?/device/timeout) is 30 seconds,[6] after which it will attempt to reset the drive, and if that fails, put the drive offline.

И про аппаратные там малость есть. И похоже, что это всё тюнить можно, без особых проблем, и без всякого smart! https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/5/html/Online_Storage_Reconfiguration_Guide/task_controlling-scsi-command-timer-onlining-devices.html

King_Carlo

Ох... Знамо то дело, можно было бы потюнить эти параметры, да делать scrub периодически... :)

DALDON ★★★★★
() автор топика
Ответ на: комментарий от DALDON

Linux mdadm simply holds and lets the drive complete its recovery - however, the default command timeout for the SCSI Disk layer (/sys/block/sd?/device/timeout) is 30 seconds,[6] after which it will attempt to reset the drive, and if that fails, put the drive offline.

И будет ситуация примерно такая же как ты описал в стартовом посте топика. mdadm будет «жевать» диск, сделает reset, он, в большинстве случаев, успешно поднимется, mdadm опять начнёт его «жевать» и этот онанизм может продолжаться очень долго, скорость io падает, либо вообще вечный iowait, со всеми вытекающими. Лично моё мнение - лучше когда решение о пригодности диска принимает его контроллер. На логику mdadm следует полагаться если доступны только десктопные hdd, не от хорошей жизни, так сказать.

King_Carlo ★★★★★
()
Ответ на: комментарий от King_Carlo

mdadm будет «жевать» диск, сделает reset

А что есть в понимании mdadm, процедура, reset? Это он просто ему выдаст ещё один timeout? Или что? Я могу же сделать таймаут не 30, а 7 секунд через файловую систему /sys. Например.

Вот смотри, ты как считаешь, такие SSD диски, (к примеру): http://www.nix.ru/autocatalog/ssd_intel/SSD-100-Gb-SATA-6Gb-s-Intel-DC-S3610-... , могут считаться серверными? У меня есть диски даже получше этих, однако на них, никакого таймаута в SMART нету! Зачем тогда их продают, и позиционируют как серверные?

DALDON ★★★★★
() автор топика
Ответ на: комментарий от King_Carlo

решение о пригодности диска принимает его контроллер

Как я уже говорил, не стоит ожидать многого от контроллера если алгоритм работы неизвестен :). Я бы тупо в мониторинг ввёл iowait по разным накопителям и орал бы при перекосах (помимо мониторинга smart). Собстно, я так попробую сделать.

true_admin ★★★★★
()
Ответ на: комментарий от true_admin

Я бы тупо в мониторинг ввёл iowait по разным накопителям и орал бы при перекосах

Как этого можно добиться, для отдельного взятого накопителя в linux (без mdadm)? Звучит безумно круто!

DALDON ★★★★★
() автор топика
Ответ на: комментарий от DALDON

А что есть в понимании mdadm, процедура, reset?

Пожевал диск заданный период, проверил наличие диска, если он ещё есть, начал жевать снова.

такие SSD диски

Ничего не знаю про ssd, использую их только для l2arc кэша, как конкретно они там помирают понятия не имею.

King_Carlo ★★★★★
()
Ответ на: комментарий от DALDON

Как этого можно добиться, для отдельного взятого накопителя в linux

Например, atop | grep DSK . Или, в сыром виде: /sys/block/sda/stat . Но там придётся повычислять :)

true_admin ★★★★★
()
Ответ на: комментарий от true_admin

Как я уже говорил, не стоит ожидать многого от контроллера если алгоритм работы неизвестен :)

Ну как жеж неизвестен? SCT всегда работает понятно и правильно.

King_Carlo ★★★★★
()
Ответ на: комментарий от King_Carlo

Ничего не знаю про ssd, использую их только для l2arc кэша, как конкретно они там помирают понятия не имею.

А они собственно у тебя помирают там? Кстати, а что тебе известно о карте памяти в ОЗУ для l2arc? Пока я не очень вникал, но слышал вот чего: 1) всё что в L2ARC - сжимается. 2) в озу есть карта сопоставления для L2ARC, и на пять гигабайт L2ARC, надо не менее 1гб. ОЗУ. В противном случае: L2ARC - не эффективен, и даже вреден!

Какие модели SSD у тебя? Ты вроде говорил что-то про SAMSUNG. zlog тоже на них гоняешь?

DALDON ★★★★★
() автор топика
Ответ на: комментарий от DALDON

А они собственно у тебя помирают там?

Померло несколько штук.

Кстати, а что тебе известно о карте памяти в ОЗУ для l2arc?

Ничего не известно.

на пять гигабайт L2ARC, надо не менее 1гб. ОЗУ

Первый раз слышу такое. По этой информации получается, что на 128Гб ssd надо 25Гб ОЗУ для поддержки l2arc. Не правдоподобно звучит.

Какие модели SSD у тебя? Ты вроде говорил что-то про SAMSUNG. zlog тоже на них гоняешь?

Десктопные plextor m5s, купленные оптом ещё до кризиса. Zlog, там где он нужен отдельно, тоже на них.

King_Carlo ★★★★★
()
Ответ на: комментарий от King_Carlo

Ну расскажи, как у тебя выглядит типичная смерть SSD. У меня прям слюни текут! Чем мониторишь? Как происходит замена? Но самое главное, расскажи, как у тебя выходят из строя обычные диски в массивах? У тебя какой уровень «raid» в zfs, и как меняешь? Я так понял, что в ZoL, hot spare дисков нету автоматических. Был какой-то демон, на костылях написанный, но на него забили.

На сколько я понял, у тебя выбрасыванием мёртвых дисков занимается HW RAID работающий в JBOD?

Первый раз слышу такое. По этой информации получается, что на 128Гб ssd надо 25Гб ОЗУ для поддержки l2arc. Не правдоподобно звучит.

А ты посмотри эффективность забития твоего l2arc (есть скрипты поставляемые с zol)! Мне самому интересно, в самом то деле... Но в этих вот Интернетах поговаривают, что не всё так просто, и от zfs ждать магии не стоит!

DALDON ★★★★★
() автор топика
Ответ на: комментарий от true_admin

У меня уже вопрос дальше идёт: какого собственно лешего, IntelSSD, позиционируемые для серверов, не имеют никаких настроек на сей счёт?

DALDON ★★★★★
() автор топика
Ответ на: комментарий от King_Carlo

Конечно будет.

Вопрос собственно, в том, а как mdadm узнает о том что SCT отработало? Диск вообще убьётся в смерть и пропадёт из системы? Или как? Как мне тут логично сказали, что mdadm, ничего не знает, и не должен знать о SMART

DALDON ★★★★★
() автор топика
Ответ на: комментарий от DALDON

а как mdadm узнает о том что SCT отработало?

Диск вернёт ошибку которую mdadm увидит. В любом случае, у тебя же есть полумёртвый сервер, почему бы не проверить?

true_admin ★★★★★
()
Ответ на: комментарий от DALDON

Ну расскажи, как у тебя выглядит типичная смерть SSD.

Кэш-устройство в пуле падает в состояние faulted.

Чем мониторишь?

zabbix

Как происходит замена?

zpool remove mypool old_ssd
zpool add mypool cache new_ssd

как у тебя выходят из строя обычные диски в массивах?

Диск вылетает из массива, массив падает в состояние degraded.

У тебя какой уровень «raid» в zfs, и как меняешь?

Уровни разные, в зависимости от назначения сервера или от того что хочет заказчик. Висят диски hot spare.

так понял, что в ZoL, hot spare дисков нету автоматических

есть

На сколько я понял, у тебя выбрасыванием мёртвых дисков занимается HW RAID работающий в JBOD?

Всякие конфиги бывали, в том числе hwraid в jbod и hba были и просто набортные чипсетные контроллеры.

P.S. Ты, случайно, l2arc с дедупликацией не перепутал? l2arc это обычный кэш, без всяких хитрых таблиц в памяти.

King_Carlo ★★★★★
()
Ответ на: комментарий от King_Carlo

P.S. Ты, случайно, l2arc с дедупликацией не перепутал? l2arc это обычный кэш, без всяких хитрых таблиц в памяти.

Нет. Читал про конкретно L2ARC. Суть в том, что: zfs, должна понимать откуда ей цеплять данные. Из ARC/L2ARC/НЖМД. И чтобы она делала это максимально эффективно, она видимо должна знать куда ей идти. Для этого ей и нужна память. В общем, поговаривают, что на это имеется некий best practical. Так что, можно погуглить... Ты посмотри - у тебя то твои l2arc, забиты полностью?

DALDON ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.