LINUX.ORG.RU

Тормоза системы во время проверки RAID

 , , ,


1

3

Приветики.

Имею убунточку и софтовый RAID5 из дисков.
Периодически у убунточки случается systemd:

 Feb  6 02:47:26 RERE-pc systemd[1]: Starting MD array scrubbing...
 Feb  6 02:47:26 RERE-pc root: mdcheck start checking /dev/md0
 md0 : active raid5 sdb[0] sdi[4] sdh[3]
      1953260544 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]
      [=========>...........]  check = 49.4% (482526908/976630272) finish=50.2min speed=163842K/sec
    TID  PRIO  USER     DISK READ  DISK WRITE  SWAPIN     IO>    COMMAND        
    274 be/4 root        0.00 B/s    0.00 B/s  0.00 % 72.14 % [md0_raid5]

Мя как бы и не против, проверка - дело нужное, но при этом время отклика ФС падает драматически, открытие папки может занимать 2-3 секунды, и продолжается такой цирк около двух часов.

У RAID планировщик выставлен как none (так понимаю, это теперь noop?), у дисков - mq-deadline.

Интернеты предлагают офигенные советы вроде «ограничить скорость raid'a на время синхронизации», «обновить прошивку дисков» или «сделать бочку». Можно ли предпринять что-то более нацеленное на результат - поиграться с планировщиками, выставить ionice процессу синхронизации, купить материнку с SATA 3?

Можно ли поиграться с планировщиками

Разрешаю.

anonymous
()

mdcheck - посылай этому процессу SIGSTOP и SIGCONT с периодом 0.2 сек - чтоб периодически освобождалась ширина канала IO. Напиши для этого скрипт.

anonymous
()

У ZFS такой беды нет.

На старте I/O проседает, а потом сразу отпускает.

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

mdcheck - посылай этому процессу SIGSTOP и SIGCONT с периодом 0.2 сек - чтоб периодически освобождалась ширина канала IO. Напиши для этого скрипт.

Заниматься онанизмом вприсядку в гамаке - это же так здорово, правда? )

zemidius
()

Странно все это. Что за check? Что именно его вызывает и как часто? В норме его происходить не должно. Точно с дисками все нормально?

И чем плохо ограничивать скорость синхронизации? Оно вообще-то для этого и делалось, чтобы не мешать.

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

Вызывает его таймер, в воскресенье в час ночи + рандомный интервал ожидания. Почему сработало - хз, смарт у дисков чистый, ошибок в логах не видно, а в критериях срабатывания не разобрался, оно просто чекает наличие файла-флага по определённому пути, кто его создаёт - хз. Может, раз в N запусков без проверок срабатывает, не знаю..

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

Срабатывает раз в неделю в час ночи? Чегото больно часто.

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

Или нет.

Латенси вроде получше, но софтом, запущенным оттудова™ пользоваться по-прежнему невозможно.

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

Как сделать/проверить? Сейчас показывает

bitmap: 4/8 pages [16KB], 65536KB chunk

Нашёл только изменение размера чанка, которое визуально не меняет ничего, для «добавь» нужно пересоздавать массив? Вытаскивать на отдельный диск не особо хочется.

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

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

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

Нраица.

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

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

откуда инфа, что пожирает? настраивать не пробовали? ARC кэш отключаем.

Тогда тормозить будет постоянно.

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

какой там… цеж TrueUnixWay
ФС должна знать о фс только о фс и еще раз только о фс, а на все остальное класть болт на 250 с левой резьбой !!
иначе не будет труеюниксвей и ваще зашквар :)

а все остальное должно работать чтобы фс не тормозила даже при проверке.

pfg ★★★★★
()

Уменьшить максимальную скорость через /sys/block/md0/md/sync_speed_max, например. Там скорость в килобайтах в секунду указывается. Или в юните «mdcheck_start.timer» поставить другое время запуска проверки.

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

Тьфу, только сейчас вчитался. Это обычная проверка в первое воскресенье месяца? Тогда да, bitmap тут не поможет, проверка в любом случае идет по всему объему массива. Лимитируй скорость, как выше подсказали.

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