Att använda RAID är ett bra steg till att öka driftsäkerheten på en server. Med minst RAID 1 så kan en disk gå sönder utan att du förlorar data eller att systemet kraschar. Men har man ingen övervakning så man inte vet om en disk är sönder eller inte, så spelar RAID inte lika stor roll längre. I denna artikel så visar vi hur du på ett smidigt sätt kan övervaka din RAID i Linux så du vet när en trasig disk bör bytas ut.
Med TWCli kan du hantera din 3Ware-kontroller med textbaserade kommandon. Programmet finns tillgängligt på de flesta plattformar och i denna artikel ska vi fokusera på TWCli och Linux.
Är du osäker på att vilken RAID-kontroller du har och inte vill göra en omstart av servern för att se under bootning, så kan du skriva följande kommando i en terminal:
dmesg |grep 3ware
Har du en 3Ware-kontroller så får du en liknande output nedan:
[ 1.590710] 3ware 9000 Storage Controller device driver for Linux v2.26.02.014.
[ 1.818376] scsi0 : 3ware 9000 Storage Controller
[ 1.818516] 3w-9xxx: scsi0: Found a 3ware 9000 Storage Controller at 0xdfa20000, IRQ: 17. 0:1:0:0: Direct-Access LSI Logical Volume 3000 PQ: 0 ANSI: 6
De två mest vanliga sett att övervaka en RAID är antingen att vara fysiskt vid servern och se ifall någon lampa på servern indikerar att en disk är trasig, dock så är detta inte så praktiskt när servern står i en serverhall och det visar även bara om en disk är trasig inte om det är något fel på RAID'n
Det andra sättet är att via en terminal använda programmet TWCli och få mer djupgående information om din RAID. För att se över din RAID använd följande kommando:
tw_cli /c0 show all
(c0 indikerar vilken kontroller du kollar på, oftast är det 0 om du bara har en)
Det är inte optimalt för dig att manuellt behöva kolla av din RAID hela tiden, så istället så ska vi automatisera processen.
För den här guiden behöver du följande:
Börja med att ladda hem och packa up TWCli. Nedladdningen kräver att du accepterar deras avtal innan du kan ladda ner filen.
Du bör hitta filen tw_cli.x86_64
i tdmCliLnx.tgz
. Här kan du använda dig av en dator med GUI och sedan använda SCP/WinSCP för att flytta över filen till servern.
Börja med att flytta TWCli till /usr/local/bin/
:
mv tw_cli.x86_64 /usr/local/bin/tw_cli
Navigera till /usr/local/bin/
, skapa en fil som heter raidcheck.sh
, editera och klistra in följande kod:
#3ware
#!/bin/bash
STATUS=`/usr/local/bin/tw_cli /c0 show |grep DEGRADED |awk '{print $3}' |head -1`;
STATUS_CHECK=${STATUS,,};
if [ $STATUS_CHECK == degraded ]
then
echo -e "Subject: RAID WARNING @ `hostname` - A drive has status: $STATUS"|/usr/sbin/sendmail your@email.com
echo -e "Warning, your raid is $STATUS_CHECK!";
fi
Du behöver byta ut your@email.com i skriptet ovan, till den e-postadress som ska ta emot varningar för RAID:en.
För att göra raidcheck.sh
körbar:
chmod +x raidcheck.sh
Öppna crontab och klistra in följande:
10 * * * * /usr/local/bin/raidcheck.sh
Skriptet är gjort för att fungera på de flesta distributionerna, men det är inte någon garanti att det passar just din server.
Vi rekommenderar dig att testa att det verkligen fungerar innan du sätter det i skarp drift.
Kontakta oss gärna för mer information. Vi hjälper dig att komma fram till den bästa lösningen för dina behov.