Bii o ṣe le Gba data pada ki o tun kọ RAIDs sọfitiwia Ti kuna - Apá 8


Ninu awọn nkan ti tẹlẹ ti jara RAID yii o lọ lati odo si akọni RAID. A ṣe atunyẹwo ọpọlọpọ awọn atunto RAID sọfitiwia ati ṣalaye awọn nkan pataki ti ọkọọkan, pẹlu awọn idi ti iwọ yoo fi tẹẹrẹ si ọkan tabi ekeji da lori oju iṣẹlẹ pato rẹ.

Ninu itọsọna yii a yoo jiroro bawo ni a ṣe le tun kọ eto RAID sọfitiwia laisi pipadanu data nigbati o ba wa ninu ikuna disk kan. Fun kukuru, a yoo ṣe akiyesi iṣeto RAID 1 nikan - ṣugbọn awọn imọran ati awọn ofin lo si gbogbo awọn ọran bakanna.

Ṣaaju ki o to tẹsiwaju siwaju, jọwọ rii daju pe o ti ṣeto ipilẹ RAID 1 ni atẹle awọn itọnisọna ti a pese ni Apakan 3 ti jara yii: Bii o ṣe le ṣeto RAID 1 (Digi) ni Linux.

Awọn iyatọ nikan ninu ọran wa bayi yoo jẹ:

1) ẹya ti o yatọ si CentOS (v7) ju eyiti o lo ninu nkan yẹn (v6.5), ati
2) awọn titobi disiki oriṣiriṣi fun/dev/sdb ati/dev/sdc (8 GB ọkọọkan).

Ni afikun, ti o ba jẹ ki SELinux ṣiṣẹ ni ipo imuṣẹ, iwọ yoo nilo lati ṣafikun awọn aami ti o baamu si itọsọna nibiti iwọ yoo gbe ẹrọ RAID gbe. Bibẹẹkọ, iwọ yoo ṣiṣe sinu ifiranṣẹ ikilọ yii lakoko igbiyanju lati gbe e:

O le ṣatunṣe eyi nipa ṣiṣe:

# restorecon -R /mnt/raid1

Ṣiṣeto Abojuto RAID

Orisirisi awọn idi ti idi ti ẹrọ ipamọ le fi kuna (Awọn SSDs ti dinku awọn aye ti iṣẹlẹ yii pupọ, botilẹjẹpe), ṣugbọn laibikita idi ti o le rii daju pe awọn ọran le waye nigbakugba ati pe o nilo lati mura silẹ lati rọpo ikuna apakan ati lati rii daju wiwa ati iduroṣinṣin ti data rẹ.

Ọrọ imọran ni akọkọ. Paapaa nigbati o le ṣayẹwo/proc/mdstat lati le ṣayẹwo ipo awọn RAID rẹ, ọna ti o dara julọ ati igbala akoko wa ti o ni ṣiṣe mdadm ni ipo atẹle + ipo ọlọjẹ, eyiti yoo fi awọn itaniji ranṣẹ nipasẹ imeeli si olugba ti a ti pinnu tẹlẹ.

Lati ṣeto eyi, ṣafikun laini atẹle ni /etc/mdadm.conf:

MAILADDR [email <domain or localhost>

Ninu ọran mi:

MAILADDR [email 

Lati ṣiṣe mdadm ni atẹle + ipo ọlọjẹ, ṣafikun titẹsi crontab atẹle bi gbongbo:

@reboot /sbin/mdadm --monitor --scan --oneshot

Nipa aiyipada, mdadm yoo ṣayẹwo awọn ipilẹ RAID ni gbogbo awọn aaya 60 ati firanṣẹ itaniji ti o ba rii ọrọ kan. O le yipada ihuwasi yii nipa fifi aṣayan --delay si titẹ sii crontab loke pẹlu iye awọn aaya (fun apẹẹrẹ, --delay 1800 tumọ si iṣẹju 30).

Lakotan, rii daju pe o ni Aṣoju Olumulo Meeli (MUA) ti a fi sii, bii mutt tabi mailx. Tabi ki, iwọ kii yoo gba awọn itaniji eyikeyi.

Ni iṣẹju kan a yoo rii ohun ti itaniji ti a firanṣẹ nipasẹ mdadm dabi.

Simulating ati Rirọpo Ẹrọ Ipamọ RAID ti o kuna

Lati ṣedasilẹ ọrọ kan pẹlu ọkan ninu awọn ẹrọ ifipamọ ni ọna RAID, a yoo lo awọn aṣayan - ṣakoso ati --set-ẹbi awọn aṣayan bi atẹle:

# mdadm --manage --set-faulty /dev/md0 /dev/sdc1  

Eyi yoo mu ki/dev/sdc1 samisi bi aṣiṣe, bi a ṣe le rii ni/proc/mdstat:

Ti o ṣe pataki julọ, jẹ ki a rii ti a ba gba itaniji imeeli kan pẹlu ikilọ kanna:

Ni ọran yii, iwọ yoo nilo lati yọ ẹrọ kuro lati sọfitiwia RAID sọfitiwia:

# mdadm /dev/md0 --remove /dev/sdc1

Lẹhinna o le yọ ara rẹ kuro ninu ẹrọ ki o rọpo pẹlu apakan apoju (/ dev/sdd, nibiti a ti ṣẹda ipin iru iru fd tẹlẹ):

# mdadm --manage /dev/md0 --add /dev/sdd1

Oriire fun wa, eto naa yoo bẹrẹ atunkọ eto pẹlu laifọwọyi pẹlu apakan ti a ṣafikun. A le ṣe idanwo eyi nipa ṣiṣamisi/dev/sdb1 bi aṣiṣe, yiyọ kuro lati ori ila, ati rii daju pe faili tecmint.txt tun wa ni/mnt/raid1:

# mdadm --detail /dev/md0
# mount | grep raid1
# ls -l /mnt/raid1 | grep tecmint
# cat /mnt/raid1/tecmint.txt

Aworan ti o wa loke fihan kedere pe lẹhin fifi/dev/sdd1 sori ẹrọ naa bi rirọpo fun/dev/sdc1, atunkọ data ti ṣe laifọwọyi nipasẹ eto laisi ipasẹ ni apakan wa.

Botilẹjẹpe ko nilo ni muna, o jẹ imọran nla lati ni ẹrọ ifipamọ ni ọwọ ki ilana ti rirọpo ẹrọ ti ko tọ pẹlu awakọ to dara le ṣee ṣe ni imolara kan. Lati ṣe eyi, jẹ ki a tun-fi kun/dev/sdb1 ati/dev/sdc1:

# mdadm --manage /dev/md0 --add /dev/sdb1
# mdadm --manage /dev/md0 --add /dev/sdc1

N bọlọwọ lati Isonu Apọju

Gẹgẹbi a ti ṣalaye ni iṣaaju, mdadm yoo tun kọ data laifọwọyi nigbati disk kan ba kuna. Ṣugbọn kini yoo ṣẹlẹ ti awọn disiki 2 ninu titobi ba kuna? Jẹ ki a ṣedasilẹ iru iwoye bẹ nipasẹ samisi/dev/sdb1 ati/dev/sdd1 bi aṣiṣe:

# umount /mnt/raid1
# mdadm --manage --set-faulty /dev/md0 /dev/sdb1
# mdadm --stop /dev/md0
# mdadm --manage --set-faulty /dev/md0 /dev/sdd1

Awọn igbiyanju lati tun ṣe ipilẹ-ọna ni ọna kanna ti a ṣẹda ni akoko yii (tabi lilo aṣayan --assume-clean ) le ja si isonu data, nitorinaa o yẹ ki o fi silẹ bi ibi-isinmi to kẹhin.

Jẹ ki a gbiyanju lati bọsipọ data lati/dev/sdb1, fun apẹẹrẹ, sinu iru ipin disk kanna (/ dev/sde1 - ṣe akiyesi pe eyi nilo ki o ṣẹda ipin ti iru fd ni/dev/sde ṣaaju ṣiṣe) lilo ddrescue:

# ddrescue -r 2 /dev/sdb1 /dev/sde1

Jọwọ ṣe akiyesi pe titi di aaye yii, a ko ti fi ọwọ kan/dev/sdb tabi/dev/sdd, awọn ipin ti o jẹ apakan ti igbogun RAID.

Bayi jẹ ki a tun tun ṣeto orun nipa lilo/dev/sde1 ati/dev/sdf1:

# mdadm --create /dev/md0 --level=mirror --raid-devices=2 /dev/sd[e-f]1

Jọwọ ṣe akiyesi pe ni ipo gidi, iwọ yoo lo awọn orukọ ẹrọ kanna bii pẹlu ipilẹṣẹ atilẹba, iyẹn ni,/dev/sdb1 ati/dev/sdc1 lẹhin ti a ti rọpo awọn disiki ti o kuna pẹlu awọn tuntun.

Ninu nkan yii Mo ti yan lati lo awọn ẹrọ miiran lati tun ṣẹda ipilẹ pẹlu awọn disiki tuntun tuntun ati lati yago fun iporuru pẹlu awọn awakọ atilẹba ti o kuna.

Nigba ti o beere boya lati tẹsiwaju kikọ kikọ, tẹ Y ki o tẹ Tẹ. O yẹ ki eto naa bẹrẹ ati pe o yẹ ki o ni anfani lati wo ilọsiwaju rẹ pẹlu:

# watch -n 1 cat /proc/mdstat

Nigbati ilana naa ba pari, o yẹ ki o ni anfani lati wọle si akoonu ti RAID rẹ:

Akopọ

Ninu nkan yii a ti ṣe atunyẹwo bii o ṣe le bọsipọ lati awọn ikuna RAID ati awọn adanu apọju. Sibẹsibẹ, o nilo lati ranti pe imọ-ẹrọ yii jẹ ojutu ipamọ ati KO ṢE rọpo awọn afẹyinti.

Awọn agbekalẹ ti a ṣalaye ninu itọsọna yii lo si gbogbo awọn ipilẹ RAID bakanna, pẹlu awọn imọran ti a yoo bo ni itọsọna atẹle ati ipari ti jara yii (iṣakoso RAID).

Ti o ba ni ibeere eyikeyi nipa nkan yii, ni ọfẹ lati sọ akọsilẹ wa silẹ ni lilo fọọmu asọye ni isalẹ. A n reti lati gbọ lati ọdọ rẹ!