LFCS: Kukusanya Vizuizi kama Vifaa vya RAID - Kuunda na Kusimamia Hifadhi Nakala za Mfumo - Sehemu ya 6


Hivi majuzi, Wakfu wa Linux ulizindua cheti cha LFCS (Linux Foundation Certified Sysadmin), fursa nzuri kwa wasimamizi wa mfumo kila mahali kuonyesha, kupitia mtihani wa msingi wa utendaji, kwamba wanaweza kutekeleza usaidizi wa jumla wa uendeshaji kwenye mifumo ya Linux: usaidizi wa mfumo, kwanza. -uchunguzi na ufuatiliaji wa kiwango, pamoja na upanuzi wa suala, inapohitajika, kwa timu zingine za usaidizi.

Video ifuatayo inatoa utangulizi wa Mpango wa Uthibitishaji wa Msingi wa Linux.

Chapisho hili ni Sehemu ya 6 ya mfululizo wa mafunzo 10, hapa katika sehemu hii, tutaeleza Jinsi ya Kukusanya Sehemu kama Vifaa vya RAID - Kuunda na Kusimamia Hifadhi rudufu za Mfumo, ambazo zinahitajika kwa ajili ya mtihani wa vyeti vya LFCS.

Kuelewa RAID

Teknolojia inayojulikana kama Redundant Array of Independent Disks (RAID) ni suluhisho la kuhifadhi ambalo linachanganya diski kuu nyingi hadi kitengo kimoja cha kimantiki ili kutoa upungufu wa data na/au kuboresha utendakazi. katika kusoma/kuandika shughuli kwa diski.

Walakini, ustahimilivu halisi wa kosa na utendaji wa diski I/O hutegemea jinsi diski ngumu zinavyowekwa ili kuunda safu ya diski. Kulingana na vifaa vinavyopatikana na mahitaji ya kuvumilia hitilafu/utendaji, viwango tofauti vya RAID vinafafanuliwa. Unaweza kurejelea mfululizo wa RAID hapa katika linux-console.net kwa maelezo ya kina zaidi kwenye kila kiwango cha RAID.

Mwongozo wa UVAMIZI: RAID ni nini, Dhana za UVAMIZI na Viwango vya UVAMIZI Vilivyofafanuliwa

Chombo chetu cha chaguo cha kuunda, kukusanyika, kudhibiti na kufuatilia RAID za programu yetu inaitwa mdadm (kifupi cha msimamizi wa diski nyingi).

---------------- Debian and Derivatives ----------------
# aptitude update && aptitude install mdadm 
---------------- Red Hat and CentOS based Systems ----------------
# yum update && yum install mdadm
---------------- On openSUSE ----------------
# zypper refresh && zypper install mdadm # 

Mchakato wa kukusanya partitions zilizopo kama vifaa vya RAID lina hatua zifuatazo.

Ikiwa moja ya vizuizi vimeumbizwa hapo awali, au imekuwa sehemu ya safu nyingine ya RAID hapo awali, utaombwa kuthibitisha uundaji wa safu mpya. Kwa kuchukulia kuwa umechukua tahadhari zinazohitajika ili kuepuka kupoteza data muhimu ambayo huenda ilikaa humo, unaweza kuandika y kwa usalama na ubonyeze Enter.

# mdadm --create --verbose /dev/md0 --level=stripe --raid-devices=2 /dev/sdb1 /dev/sdc1

Ili kuangalia hali ya uumbaji wa safu, utatumia amri zifuatazo - bila kujali aina ya RAID. Hizi ni halali kama vile tunapounda RAID0 (kama inavyoonyeshwa hapo juu), au wakati uko katika mchakato wa kusanidi RAID5, kama inavyoonyeshwa kwenye picha hapa chini.

# cat /proc/mdstat
or 
# mdadm --detail /dev/md0	[More detailed summary]

Fomati kifaa kwa mfumo wa faili kulingana na mahitaji/mahitaji yako, kama ilivyoelezwa katika Sehemu ya 4 ya mfululizo huu.

Agiza huduma ya ufuatiliaji \kuangalia safu. Ongeza pato la mdadm -detail -scan kwa /etc/mdadm/mdadm.conf (Debian na derivatives) au /etc/mdadm.conf (CentOS/openSUSE), kama hivyo.

# mdadm --detail --scan
# mdadm --assemble --scan 	[Assemble the array]

Ili kuhakikisha huduma inaanza kwenye mfumo wa kuwasha, endesha amri zifuatazo kama mzizi.

Debian na derivatives, ingawa inapaswa kuanza kufanya kazi kwenye buti kwa chaguo-msingi.

# update-rc.d mdadm defaults

Hariri faili ya /etc/default/mdadm na uongeze laini ifuatayo.

AUTOSTART=true
# systemctl start mdmonitor
# systemctl enable mdmonitor
# service mdmonitor start
# chkconfig mdmonitor on

Katika viwango vya RAID ambavyo vinaauni upungufu, badilisha viendeshi vilivyoshindwa inapohitajika. Wakati kifaa katika safu ya diski kinakuwa na hitilafu, uundaji upya huanza kiatomati ikiwa tu kulikuwa na kifaa cha ziada kilichoongezwa tulipounda safu mara ya kwanza.

Vinginevyo, tunahitaji kuambatisha mwenyewe kiendeshi cha ziada cha kimwili kwenye mfumo wetu na kuendesha.

# mdadm /dev/md0 --add /dev/sdX1

Ambapo /dev/md0 ni safu ambayo ilikumbwa na tatizo na /dev/sdX1 ndicho kifaa kipya.

Huenda ukalazimika kufanya hivi ikiwa unahitaji kuunda safu mpya kwa kutumia vifaa - (Hatua ya Hiari).

# mdadm --stop /dev/md0 				#  Stop the array
# mdadm --remove /dev/md0 			# Remove the RAID device
# mdadm --zero-superblock /dev/sdX1 	# Overwrite the existing md superblock with zeroes

Unaweza kusanidi barua pepe halali au akaunti ya mfumo ili kutuma arifa kwa (hakikisha una laini hii katika mdadm.conf). - (Hatua ya Hiari)

MAILADDR root

Katika hali hii, arifa zote ambazo daemoni ya ufuatiliaji wa RAID inakusanya zitatumwa kwa kisanduku cha barua cha akaunti ya mizizi ya karibu. Moja ya arifa kama hizi inaonekana kama ifuatayo.

Kumbuka: Tukio hili linahusiana na mfano katika HATUA YA 5, ambapo kifaa kiliwekwa alama kuwa na hitilafu na kifaa cha ziada kilijengwa kiotomatiki kwenye safu na mdadm. Kwa hivyo, \tuliishiwa vifaa vya ziada vyenye afya na tukapata tahadhari.

Jumla ya ukubwa wa safu ni n mara ya ukubwa wa kizigeu kidogo zaidi, ambapo n ni idadi ya diski zinazojitegemea katika safu (utahitaji angalau viendeshi viwili). Tekeleza amri ifuatayo ili kukusanya safu ya RAID 0 kwa kutumia partitions /dev/sdb1 na /dev/sdc1.

# mdadm --create --verbose /dev/md0 --level=stripe --raid-devices=2 /dev/sdb1 /dev/sdc1

Matumizi ya kawaida: Mipangilio inayotumia programu katika wakati halisi ambapo utendakazi ni muhimu zaidi kuliko uvumilivu wa makosa.

Saizi ya jumla ya safu ni sawa na saizi ya kizigeu kidogo (utahitaji angalau anatoa mbili). Tekeleza amri ifuatayo ili kukusanya safu ya RAID 1 kwa kutumia partitions /dev/sdb1 na /dev/sdc1.

# mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sdb1 /dev/sdc1

Matumizi ya kawaida: Usakinishaji wa mfumo wa uendeshaji au saraka ndogo muhimu, kama vile /home.

Jumla ya ukubwa wa safu itakuwa (n – 1) mara ya ukubwa wa kizigeu kidogo zaidi. Nafasi ya “iliyopotea” katika (n-1) inatumika kwa hesabu ya usawa (upungufu) (utahitaji angalau viendeshi vitatu).

Kumbuka kuwa unaweza kubainisha kifaa cha akiba (/dev/sde1 katika kesi hii) ili kubadilisha sehemu yenye hitilafu tatizo linapotokea. Tekeleza amri ifuatayo ili kukusanya safu ya RAID 5 kwa kutumia partitions /dev/sdb1, /dev/sdc1, /dev/sdd1 , na /dev/sde1 kama vipuri.

# mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1 --spare-devices=1 /dev/sde1

Matumizi ya kawaida: Seva za Wavuti na faili.

Jumla ya ukubwa wa safu itakuwa (n*s)-2*s, ambapo n ni idadi ya diski huru katika safu na s ni saizi ya diski ndogo zaidi. Kumbuka kuwa unaweza kubainisha kifaa cha ziada (/dev/sdf1 katika kesi hii) ili kubadilisha sehemu yenye hitilafu wakati tatizo linapotokea.

Tekeleza amri ifuatayo ili kukusanya safu ya RAID 6 kwa kutumia partitions /dev/sdb1, /dev/sdc1, /dev/sdd1 , /dev/sde1, na /dev/sdf1 kama vipuri.

# mdadm --create --verbose /dev/md0 --level=6 --raid-devices=4 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde --spare-devices=1 /dev/sdf1

Matumizi ya kawaida: Seva za faili na chelezo zenye uwezo mkubwa na mahitaji ya juu ya upatikanaji.

Jumla ya ukubwa wa safu hukokotwa kulingana na fomula za RAID 0 na RAID 1, kwa kuwa RAID 1+0 ni mchanganyiko wa zote mbili. Kwanza, hesabu ukubwa wa kila kioo na kisha ukubwa wa mstari.

Kumbuka kuwa unaweza kubainisha kifaa cha ziada (/dev/sdf1 katika kesi hii) ili kubadilisha sehemu yenye hitilafu wakati tatizo linapotokea. Tekeleza amri ifuatayo ili kukusanya safu ya RAID 1+0 kwa kutumia partitions /dev/sdb1, /dev/sdc1, /dev /sdd1, /dev/sde1, na /dev/sdf1 kama vipuri.

# mdadm --create --verbose /dev/md0 --level=10 --raid-devices=4 /dev/sd[b-e]1 --spare-devices=1 /dev/sdf1

Matumizi ya kawaida: Hifadhidata na seva za programu zinazohitaji uendeshaji wa haraka wa I/O.

Haiumi kamwe kukumbuka kuwa UVAMIZI pamoja na fadhila zake zote SIO KUBADILISHA HIFADHI! Iandike mara 1000 ubaoni ukihitaji, lakini hakikisha unaliweka wazo hilo akilini kila wakati. Kabla hatujaanza, ni lazima tutambue kwamba hakuna suluhisho la ukubwa mmoja kwa hifadhi rudufu za mfumo, lakini hapa kuna baadhi ya mambo ambayo unahitaji kuzingatia unapopanga mkakati wa kuhifadhi.

  1. Unatumia mfumo wako kufanya nini? (Desktop au seva? Ikiwa kesi ya mwisho itatumika, ni huduma zipi muhimu zaidi - ambazo usanidi wake ungekuwa uchungu sana kupoteza?)
  2. Je, unahitaji kuchukua nakala rudufu za mfumo wako mara ngapi?
  3. Ni data gani (k.m. faili/saraka/utupaji wa hifadhidata) ambayo ungependa kuhifadhi nakala? Unaweza pia kutaka kuzingatia ikiwa unahitaji kweli kuhifadhi faili kubwa (kama vile faili za sauti au video).
  4. (ikimaanisha mahali halisi na midia) hizo chelezo zitahifadhiwa wapi?

Njia ya 1: Hifadhi nakala rudufu zote za hifadhi kwa dd amri. Unaweza kucheleza diski nzima au kizigeu kwa kuunda picha halisi wakati wowote kwa wakati. Kumbuka kuwa hii hufanya kazi vyema zaidi wakati kifaa kiko nje ya mtandao, kumaanisha kuwa hakijapachikwa na hakuna michakato ya kukifikia kwa uendeshaji wa I/O.

Upande wa chini wa mbinu hii ya chelezo ni kwamba picha itakuwa na saizi sawa na diski au kizigeu, hata wakati data halisi inachukua asilimia ndogo yake. Kwa mfano, ikiwa unataka kuweka picha ya kizigeu cha GB 20 ambacho kimejaa 10% pekee, faili ya picha bado itakuwa GB 20 ndani. ukubwa. Kwa maneno mengine, sio tu data halisi ambayo inaungwa mkono, lakini sehemu nzima yenyewe. Unaweza kufikiria kutumia njia hii ikiwa unahitaji nakala rudufu kamili za vifaa vyako.

# dd if=/dev/sda of=/system_images/sda.img
OR
--------------------- Alternatively, you can compress the image file --------------------- 
# dd if=/dev/sda | gzip -c > /system_images/sda.img.gz 
# dd if=/system_images/sda.img of=/dev/sda
OR 

--------------------- Depending on your choice while creating the image  --------------------- 
gzip -dc /system_images/sda.img.gz | dd of=/dev/sda 

Njia ya 2: Hifadhi nakala za saraka za faili fulani / kwa amri ya tar - ambayo tayari imejumuishwa katika Sehemu ya 3 ya mfululizo huu. Unaweza kufikiria kutumia njia hii ikiwa unahitaji kuweka nakala za faili na saraka maalum (faili za usanidi, saraka za nyumbani za watumiaji, na kadhalika).

Njia ya 3: Sawazisha faili kwa rsync amri. Rsync ni zana ya kunakili faili ya mbali (na ya ndani). Ikiwa unahitaji kuhifadhi nakala na kusawazisha faili zako kwa/kutoka kwa hifadhi za mtandao, rsync ni kwenda.

Iwe unasawazisha saraka mbili za ndani au za ndani < — > saraka za mbali zilizowekwa kwenye mfumo wa faili wa ndani, sintaksia ya msingi ni sawa.

# rsync -av source_directory destination directory

Ambapo, -a hujirudia katika saraka ndogo (ikiwa zipo), hifadhi viungo vya ishara, mihuri ya muda, ruhusa, na mmiliki/kikundi asili na -v kitenzi.

Kwa kuongeza, ikiwa ungependa kuongeza usalama wa uhamishaji data kupitia waya, unaweza kutumia ssh juu ya rsync.

# rsync -avzhe ssh backups [email _host:/remote_directory/

Mfano huu utasawazisha saraka ya chelezo kwenye seva pangishi ya ndani na maudhui ya /root/remote_directory kwenye seva pangishi ya mbali.

Ambapo chaguo la -h linaonyesha ukubwa wa faili katika umbizo linaloweza kusomeka na binadamu, na alama ya -e inatumiwa kuonyesha muunganisho wa ssh.

Inasawazisha saraka za mbali → za ndani juu ya ssh.

Katika kesi hii, badilisha saraka za chanzo na lengwa kutoka kwa mfano uliopita.

# rsync -avzhe ssh [email _host:/remote_directory/ backups 

Tafadhali kumbuka kuwa hii ni mifano 3 pekee (kesi nyingi za mara kwa mara unazoweza kupata) ya matumizi ya rsync. Kwa mifano zaidi na matumizi ya amri za rsync zinaweza kupatikana kwenye kifungu kifuatacho.

Soma Pia: Amri 10 za rsync ili Kusawazisha Faili katika Linux

Muhtasari

Kama sysadmin, unahitaji kuhakikisha kuwa mifumo yako inafanya kazi vizuri iwezekanavyo. Ikiwa umejitayarisha vyema, na ikiwa uadilifu wa data yako unatumika vyema na teknolojia ya uhifadhi kama vile RAID na hifadhi rudufu za mfumo wa kawaida, utakuwa salama.

Ikiwa una maswali, maoni, au mawazo zaidi kuhusu jinsi makala hii inaweza kuboreshwa, jisikie huru kuzungumza hapa chini. Kwa kuongeza, tafadhali zingatia kushiriki mfululizo huu kupitia wasifu wako wa mtandao wa kijamii.