Monitoring Linux Raid
- Úvod
- Zjištení stavu a report
- Naplánování pravidelné kontroly
- Jak zkontrolovat nastavení monitoringu, simulace chyby pole
- Obsah výpisu pomocí cat /proc/mdstat
- Jiné možnosti hlídání
- Zdroje informací
Úvodem
Linxový Raid Vás neochrání pře zásahem blesku, přepjetí, požáru ale dovede ochránit data při selhání jednoho disku (Raid 1).Je ovšem třeba včas vědět, že některý disk nefunguje a byl odpojen. Existuje více způsobů jak se to dozvědět včas.
Vše popisované se vztahuje k Raid-u 1 tj. zrcadlení.
Zjištění stavu a report
Jedna z možností je přes /proc/mdstat si zjišťovat stav pomocí skriptu a odeslat hlášení mailem:#!/bin/bash ADMIN="jmeno@domena.primarni jmeno@domena.zalozni" HOSTNAME=`/bin/hostname` FROM="raidmonitor@$HOSTNAME" if egrep "\[.*_.*\]" /proc/mdstat > /dev/null then logger -p daemon.error "mdcheck: Failure of one or more software RAID devices" echo "RAID ERROR !!! - Failure of one or more software RAID devices on ${HOSTNAME}" | /usr/bin/mailx \ -s "RAID MONITOR: Software RAID device failure on ${HOSTNAME}" -r ${FROM} ${ADMIN} fi
ADMIN udává kam se má poslat chybové hlášení
FROM je pole from v odeslaném emailu
Script zapíše do logu a odešle email pomocí
/usr/bin/mailxpřípadně opravit na
/usr/bin/mailči jinou cestu.
Naplánování pravidelné kontroly
Pomocí příkazu (na roota)crontab -evložíme řádek pro kontrolu 1x denně v 6:10
10 6 * * * /moje/cesta/raidmonitor > /dev/nullnebo po kontrolu každou druhou hodinu a 10 minut začínaje v 0:10 (pozor v případě selhání pošle každou sudou hodinu nový email)
10 */2 * * * /moje/cesta/raidmonitor > /dev/nullpřípadně jiným zápisem nebo zápisy.
Kdo nezná příkazi 'vi' editoru, tak ať se základní naučí :)
- i - aktivuje vkládací mód, lze psát či vkládat (nebo klávesa insert, POZOR stisknout jen 1×)
- Klávesa Esc - ukončí editační mód a přepne do příkazového
- :w - zapíše soubor (v příkazovém módu, předem stiskni klávesu Esc)
- :q - exit - ale jen pokud je soubor zapsaný či nezměněný (v příkazovém módu)
- :q! - exit BEZ uložení změn (v příkazovém módu)
- :wq - uloží soubor a exit (v příkazovém módu)
- Pokud nefungují šipky, tak v příkazovém módu
- k - 1× nahoru
- j - 1× dolů
- h - 1× vlevo
- l - 1× vpravo ( malé eℓ )
- :set nowrap - příjemný příkaz při zobrazení například logů
- :set background=dark - příjemný příkaz při práci na tmavém pozadí (např. přes putty)
- základní příkazy
Indikuje to obvykle výpisem 'crontab: installing new crontab'
Jak zkontrolovat nastavení monitoringu, simulace chyby pole
Lze na linux raidu tímto postupem:- Příkaz:
/sbin/mdadm /dev/md0 --fail /dev/sdb1 --remove /dev/sdb1
nastaví u zařízení /dev/md0 partition /dev/sdb1 na chybnou - Příkazem:
cat /proc/mdstat
se lehce přesvědčíme že namísto[UU]
uvidíme[U_]
- Nyní si lze ověřit spuštením výše uvedeného skriptu jestli e-mail dojde, nebo jen počka na provedení naplánovaného spuštění
- Pravděpodobně by bylo vhodné zas raid uvést do činosti, protože nyní je jeden z disků odpojen.
Do původního stavu to uevedne pomocí příkazu:mdadm /dev/md0 --add /dev/sdb1
- A pomocí:
cat /proc/mdstat
se přesvědčíme, že stav je opět [UU].
POZOR může to trvat, docházi k rebuildu raidu. - Detailní výpis o raidu (k 1. raid poli)
mdadm --detail /dev/md0
Obsah výpisu pomocí cat /proc/mdstat
Vše OK
md0 : active raid1 sda1[0] sdb1[1] 97152960 blocks [2/2] [UU]
CHYBA - sdb1 je odpojen
md0 : active raid1 sda1[0] sdb1[1] 97152960 blocks [2/1] [U_]
Probíhá rebuild
md0 : active raid1 sda1[0] sdb1[1] 97152960 blocks [2/1] [U_] [========>............] recovery = 43.9% (42713908/97152960) \ finish=82.4min speed=11002K/sec
Jiné možnosti hlídání
Vhodnou kombinací je kontrola S.M.A.R.T informací - ale nečekal bych žádné zázrakay :)Je možné využít i jiné možnosti jako třeba:
mdadm --monitor -f --mail=jmeno@domena.primarni --delay=1800 /dev/md0viz mdadm monitoring Volil jsem výše uvedenou variantu, mám pocit, že to mám pod kontrolou :).
Zdroje informací:
- man mdadm
- mdadm --detail /dev/mdx (x = pořadové číslo pole)
- Wikipedia vi editor - česky
- man crontab
- man logger
- Linux raid manuál
- Wikipedia Cron
- Bash manual