The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Мониторинг и восстановление программного RAID в Linux
Управление программными RAID1-массивами в RHEL

Мониторинг состояния 

Информация о всех RAID-массивах:
   # more /proc/mdstat
или
   # cat /proc/mdstat
или
   # watch -n .1 cat /proc/mdstat

Информация о конкретном дисковом разделе:
   # mdadm -E /dev/sd<a-b><1-10>
например:
   # mdadm -E /dev/sdb2


Восстановление функционирования

Восстановление функционирования (rebuild) разделов диска по одному после
однократного "несмертельного" сбоя:
   # mdadm -a /dev/md<0-6> /dev/sd<a-b><1-10>
например:
   # mdadm -a /dev/md0 /dev/sdb1
Нужно быть аккуратным с номерами разделов
В случае ошибки, удалить компонент из RAID командой:
   # mdadm -r /dev/md0 /dev/sdb1
получается не всегда - устройство может быть занято.


Замена диска

1. Выключить компьютер и заменить диск

2. Включить компьютер  и определить имеющиеся на обоих дисках разделы:
   # fdisk /dev/sd<a-b> -l

3. С помощью fdisk создать на новом диске разделы, идентичные оригиналу
Необходимо пометить нужный раздел нового диска (sda1 или sdb1) как загрузочный
до включения в зеркало.
Swap-разделы не подлежат зеркалированию в программном RAID

4. Выполнить Мониторинг состояния и Восстановление функционирования 


Настройка оповещения

Мониторинг выполняется с помощью crond ежечасно.
В папку /etc/cron.haurly помещен файл mdRAIDmon, содержащий команду:
   # mdadm --monitor --scan -1 [email protected]

Для проверки рассылки сообщения добавляется ключ --test:
   # mdadm --monitor --scan -1 [email protected] --test

Помещая файл задания в папку, необходимо установить права доступа на выполнение
Если нужно чаще, самое простое, добавьте в /etc/crontab строку, используя нотацию с "/", например:
   */5 * * * * root run-parts /etc/cron.my5min

Конечно, можно попробовать и другие варианты планирования заданий с atd или batch. 

Создайте папку /etc/cron.my5min и поместите туда файл mdRAIDmon
C имитацией отказа диска мне было проще - сервер SR1425BK1 - с корзиной HotSwap
 
28.07.2005 , Автор: radigor
Ключи: raid, linux, disk, sata, crash / Лицензия: CC-BY
Раздел:    Корень / Администратору / Система / Диски и файлы / Диагностика и Восстановление после сбоя

Обсуждение [ Линейный режим | Показать все | RSS ]
  • 1.1, xz (??), 10:23, 28/07/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    пипец скока гимороя, непроще купить апаратный ?
    они уже достаточно доступны
     
     
  • 2.2, Andrey Mitrofanov (?), 11:32, 28/07/2005 [^] [^^] [^^^] [ответить]  
  • +/
    > скока гимороя, непроще купить апаратный ?
    Действительно!? Проще.
    Ведь "аппаратный", за который "уплОчено" не надо ни мониторить, ни восстанавливать, правда?
     

  • 1.3, Аноним (3), 13:17, 29/07/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    нет мониторить надо, а "востанавливать" он умеет сам забрав из хот спаре винт, да если нету такова то всеравно всунул/высунул, все никаких проблем, про производительност ьвобще молчу.
    и для того же мониторинга есть куча вменяемого софта, который может нормально оповестить о сбое, или вы с ноутом и инетом спите/гуялете/отдыхаете ?
     
     
  • 2.5, LostSoul (?), 20:33, 15/09/2005 [^] [^^] [^^^] [ответить]  
  • +/
    А софтовый sparse вам религия поставить запрещает?

    Любой аппаратный рейд до 500$ стоимостью явно проигрывает програмному в Linux.
    И производительность нормальная.

     

  • 1.4, Аноним (3), 13:18, 01/08/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    как поднять софтовый raid1 на загружаемый раздел?
    sda1 к примеру, есть такой же sdb1.
    я к тому что возможно ли это провести на "горячую" ?
     
  • 1.6, kapa (??), 00:46, 11/03/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    извините, а если mdadm был настроен на raid-5 с 4 дисками, при выключении одного он читать-то как-нибудь с 3ёх даст? у меня не даёт, но восстанавливает без проблем
     
     
  • 2.9, Michael Shigorin (ok), 22:04, 23/03/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >извините, а если mdadm был настроен на raid-5 с 4 дисками, при
    >выключении одного он читать-то как-нибудь с 3ёх даст? у меня не
    >даёт, но восстанавливает без проблем

    У меня даёт.

    PS
    > Swap-разделы не подлежат зеркалированию в программном RAID

    Это не так.  Если требуется снизить возможность сбоя -- ещё как подлежат (равно как и в аппаратном).  Другое дело, что если машинка под рукой и некритична -- проще разбросать свопы с одинаковым приоритетом по дискам, разделы с данными на которым собраны в зеркало (см. swapon(8), swapon(2) /pri).

     

  • 1.7, inkv (??), 15:32, 31/08/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Протестил я это дело на Ubuntu Server 6.0.xx
    пашет. При инсталляции, поднял 1 и 5 раид.
    вынул 1 хард - сам хот спару поднял и заребилдил
    а вот обратно - все ручками надо делать.
    Читать с 3-х - тоже дал!
    Спасибо автору - статья помогла.
    Итоги - скорость копирования из каталога в каталог 4Гб файла - 40 МБ/сек
    винты - ИБМ, 10 000 шпиндель, 160 - шина. 36,7 гиг. Контроллер Tekram DC390 U3D.
     
     
  • 2.8, Rygoravich (?), 15:41, 08/02/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Читать с 3-х - тоже дал!

    А что в этом противоестественного? Винда с ее динамическими дисками справляется.

     

  • 1.10, Юрий (??), 17:12, 19/11/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Юзали на веб-хостинге 3ware raid довольно недешевый - начал парить мозг (без матов как именно говорить не могу, поэтому подробности опускаю). и вот где гемор :-) везти его из Москвы можно месяц и то если повезет, а linux незахотел подниматься без рейда!!! если у вас веб-сервер который должен всегда пахать - юзайте софтварный рейд. Это стопудовая незавсисимость от железа. Не разу кстати не видел, чтобы рейд жрал хотя-бы один процент процессорного времени.
     
     
  • 2.11, Michael Shigorin (ok), 19:31, 19/11/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Это стопудовая незавсисимость от железа.

    Угу.

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

    Ну мне вот доводилось :)

    От видения неприятного процента CPU за md*_raid*, страшных iowait и LA помогают:
    - тесты _заранее_ под нагрузкой (bonnie/bonnie++ в помощь): может, лишнее место не стоит тормозов БД (или ещё чего активно пишущего) и лучше сделать 1/10, а не 5?
    - для 5/6: stripe alignment (http://www.pythian.com/blogs/411/aligning-asm-disks-on-linux)
    - понимание, что такое seek, и разнос нагрузки по физическим шпинделям (и их пачкам)
    - монтировать с noatime, если оно некритично
    - xfs (ОБЯЗАТЕЛЬНО с UPS!)
    - разумное поднятие readahead и stripe cache, подбор io scheduler -- например, для двух SATA RAID5 по четыре диска каждый:

    for i in a b c d e f g h; do
            echo deadline > /sys/block/sd$i/queue/scheduler
            echo 1024 > /sys/block/sd$i/queue/read_ahead_kb
    done

    echo 2048 > /sys/block/md0/md/stripe_cache_size
    echo 2048 > /sys/block/md4/md/stripe_cache_size

    hdparm -a 1024 /dev/sd[a-h]
    hdparm -a 4096 /dev/md[04]

     
     
  • 3.12, Юрий (??), 08:43, 20/11/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Я далеко не гуру линукса.

    Можно все тоже самое, только "на пальцах"? (Для простых смертных)

     
     
  • 4.13, Michael Shigorin (ok), 19:39, 20/11/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Я далеко не гуру линукса.

    Аналогично :-)

    >Можно все тоже самое, только "на пальцах"? (Для простых смертных)

    bonnie/bonnie++ -- это бенчмарки, обычно живут в одноименных пакетах в дистрибутиве.

    noatime -- параметр монтирования ФС, при котором чтение данных не приводит к записи в метаданные (см. man mount, man fstab).

    xfs -- файловая система, которая хорошо держит большую нагрузку.

    последним пунктом можно не заморачиваться, но если есть где -- то лучше поискать по упоминаемым словам вроде md stripe cache и поэкспериментировать.

     
     
  • 5.14, Michael Shigorin (ok), 01:14, 11/05/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >поискать по упоминаемым словам вроде md stripe cache и поэкспериментировать.

    Поскольку спросили -- вот скрипт со ссылками:

    #!/bin/sh
    # http://www.mail-archive.com/linux-raid@vger.kernel.org/msg07509.html
    # (thanks vsu@)
    # https://mail.clusterfs.com/wikis/attachments/LustreManual.html#1.4.3_Proper_Ke
    # '-> The "cfq" and "as" schedulers should never be used for server platform
    for i in a b c d e f g h; do
            echo deadline > /sys/block/sd$i/queue/scheduler
            echo 1024 > /sys/block/sd$i/queue/read_ahead_kb
    done

    # http://scotgate.org/?p=107
    echo 2048 > /sys/block/md0/md/stripe_cache_size
    echo 2048 > /sys/block/md4/md/stripe_cache_size

    #echo 3000 > /sys/block/md4/md/sync_speed_min
    #echo 5000 > /sys/block/md4/md/sync_speed_max

    hdparm -a 1024 /dev/sd[a-h]
    hdparm -a 4096 /dev/md[04]

     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру