|
ot Ivo Gelov(26-01-2008)
reiting (9)
[ dobre ]
[ zle ]
Variant za otpechatvane Nastoiashtata statiia ne e izcherpatelno rukovodstvo po temata, a
prosto spodelen opit.
Ne pretendiram, che sum poznavach i spetsialist v
oblastta.
ISTORIQ
Survurut, za koito se grizha ima 2 tvurdi diska, koito sa
konfigurirani kato softueren RAID-1 masiv.
Potrebitelite mi imat dosta goliam potok ot vhodiashti i
izhodiashti pisma, i estestvoto na rabota e takova,
che te triabva da sa postoianno nalichni. Poradi tezi faktori,
failovata sistema zapochna vse po-burzo da se zapulva.
Pretsenih, che shte bude po-dobre da napravia Upgrade sega i da
ne chakam do posledniia moment.
Tui kato survurut mi e s kutiia 1U (za montazh v shkaf) - v
neia ima miasto samo za 2 diska, i variantut za dobaviane
na oshte diskove otpadna. Roveiki se v GOOGLE, popadnah na
statii za 2 drugi varianta:
1. Uvelichavane na razmera na nuzhnite razdeli (partitions)
vurhu novi diskove
2. Dobaviane na novi razdeli - ili kato novo RAID
ustroistvo, ili kato chast ot LVM
Ideiata za LVM mi se stori izklyuchitelno perspektivna i
skaliruema.
Do sravnitelno neotdavna beshe nevuzmozhno softuernite RAID
masivi da se razdeliat na dialove, kakto fizicheskite
ustroistva - toest, vednuzh suzdaden ot izhodnite fizicheski
dialove, RAID masivut vinagi si ostava s razmera na
nai-malkiia ot sustaviashtite go razdeli (v novite iadra tova
veche e vuzmozhno, no ne znaia do kakva stepen e testvano).
LVM (Logical Volume Management) reshava tozi problem, kato
se iaviava mezhdinno zveno mezhdu fizicheskite dialove i RAID
masiva.
Toest - s LVM mozhem dinamichno da obediniavame dialove v edna
logicheska grupa (Volume), koiato sled tova se izpolzva kato
baza za suzdavane na RAID masiv. Poveche informatsiia mozhe da
se otkrie tuk
http://www.gagme.com/greg/linux/raid-lv...
http://www.open-organizations.org/view/...
http://www.linux.com/base/ldp/howto/Sof...
http://www.debian-administration.org/ar...
Na men obache tozi variant mi se stori po-slozhen (makar i
po-hubav), a puk prosto triabvashe da si resha problema
(ne zadulzhitelno po nai-elegantniia nachin). Tepurva da
zapochvam da si pravia eksperimenti sus survura beshe
nedopustimo.
Izbrah sredniia variant - uvelichavane na razmera na
zapulvashtiiat se razdel vurhu novi diskove.
IZHODNI DANNI
Dva SATA diska po 120 GB sus slednite dialove:
+-----------+-----------+----------+----------+----------+----------+
| SATA - 0 | SATA - 1 | RAID - 1 | Tip dial
| Bootable | Montiran |
+-----------+-----------+----------+----------+----------+----------+
| /dev/sda1 | /dev/sdb1 | /dev/md0 | Primary |
Da | /boot |
+-----------+-----------+----------+----------+----------+----------+
| /dev/sda2 | /dev/sdb2 | /dev/md1 | Primary |
| /
|
+-----------+-----------+----------+----------+----------+----------+
| /dev/sda3 | |
| Primary |
| Swap |
+-----------+-----------+----------+----------+----------+----------+
| | /dev/sdb3 |
| Primary |
| Swap |
+-----------+-----------+----------+----------+----------+----------+
| /dev/sda4 | |
| Extended |
| - |
+-----------+-----------+----------+----------+----------+----------+
| | /dev/sdb4 |
| Logical |
| - |
+-----------+-----------+----------+----------+----------+----------+
| /dev/sda5 | /dev/sdb5 | /dev/md3 | Logical |
| /var |
+-----------+-----------+----------+----------+----------+----------+
| /dev/sda6 | /dev/sdb6 | /dev/md2 | Logical |
| /usr |
+-----------+-----------+----------+----------+----------+----------+
| /dev/sda7 | |
| Logical |
| /tmp |
+-----------+-----------+----------+----------+----------+----------+
| | /dev/sdb7 |
| Logical |
| /var/tmp |
+-----------+-----------+----------+----------+----------+----------+
PLAN za RESHENIE na ZADACHATA
Sustavih si plan ot slednite tochki:
1. Suzdavane na razdeli vurhu novite diskove, koito da sa
golemi ili tochno kolkoto sushtestvuvashtite razdeli,
ili suvsem malko po-golemi (izklyuchenie pravi razdela za
/var - zashtoto tukmo nego triabvashe da razshiriavam;
nego go napravih tolkova goliam, kolkoto pozvoliavashe
svobodnoto prostranstvo na diska) i v ABSOLYUTNO sushtata
posledovatelnost (pri druga posledovatelnost prosto shtiah
izlishno da si utezhnia zhivota, bez da spechelia nishto)
2. Ruchno degradirane na RAID masivite - logichesko izvezhdane
na vtoriia disk ot masiva
3. Podmiana na stariia disk SATA-1 s nov (estestveno pri
izklyuchena mashina)
4. Zadavane na tipove na razdelite (tazi stupka mi e
neobhodima, ponezhe shtiah da suzdam razdelite na novite
diskove s PartitionMagic pod DOS, vmesto s fdisk pod Linux
- a puk PartitionMagic ne mozhe da suzvada razdeli
ot tip Linux Autodetect Software RAID)
5. Ruchno vklyuchvane na noviia disk v sushtestvuvashtite RAID
masivi - masivut se samosinhronizira, kato kopira
dannite ot stariia disk SATA-0 na noviia SATA-1
6. Vremenno zabraniavane na avtomatichnoto montirane na
"/var" - tova e neobhodimo, zashtoto promianata na
razmera
na failovata sistema s resize2fs mozhe da se osushtestvi samo
ako razdelut ne se izpolzva v momenta. A puk
promianata (uvelichenieto) na failovata sistema se nalaga,
zashtoto pri suzdavaneto na noviia RAID masiv ot
novite po-golemi razdeli ne vodi do AVTOMATICHNO uvelichavane
na failovata sistema ext3
7. Tuk teoretichno sledva da se napravi ruchno degradirane na
RAID masivite, za da se izvede tozi put purviia disk,
samo che az v burzinata propusnah tazi stupka - za moe
shtastie tova ne dovede do zloshtastni posleditsi
8. Podmiana na stariia disk SATA-0 s nov (pak pri izklyuchena
mashina)
9. Startirane v ednopotrebitelski rezhim - za da ne se
startirat avtomatichno vsichki obichaini servizi (SSH,
Postfix,
Apache, MySQL i t.n.)
10. Otnovo zadavane na tipove na razdelite
11. Ruchno vklyuchvane na noviia disk v RAID masivite - tuk se
natuknah na podvoden kamuk, vupreki che tochno sledvah
instruktsiite v edna ot statiite v GOOGLE (http://www.steveglendinning.com/2007/10...)
Problemut beshe, che resize2fs prosto ne svurshi nishto - sus
suobshtenie ot roda "Nothing to grow". Razbrah
zashto,
edva sled kato razgledah parametrite na RAID masivite
(mdadm --detail /dev/md3) - Array size i Device Size si
biaha
sus starite stoinosti (suotvetstvashti na starite
diskove).
Pobluskah si glavata okolo chas, prerovih MAN stranitsite na
MDADM (programata za obsluzhvane na RAID masivi) i
nakraia stignah do slednoto zaklyuchenie:
Vupreki, che e otkopiran vurhu po-golemi ot originalniia
razmer razdeli - RAID masivut si ostava sus sushtata
golemina,
s kakvato e suzdaden navremeto ot po-malkite razdeli. S
prostoto suzdavane na nov RAID masiv (tozi put ot novite
razdeli) toi veche beshe s neobhodimiia uvelichen razmer. I
sega resize2fs sraboti.
12. Vuzstanoviavane na avtomatichnoto montirane na
"/var", i promiana na pravata na "/tmp" i
"/var/tmp" na 0777 (tui kato
gi formatirah ot imeto na ROOT potrebitelia)
13. Nastroivane na GRUB da zarezhda i ot SATA-1, ako
sluchaino SATA-0 sdade bagazha. Tui kato GRUB e nastroen da
startira
ot (hd0), a puk v "/boot/grub/device.map"e
opisano, che "/dev/sdb" suotvetstva na (hd1) -
sledvaiki instruktsiite ot
http://grub.enbug.org/MirroringRAID
nastroih GRUB da zarezhda i ot vtoriia disk.
DETAILI
Sledva opisanie na stupkite ot goreopisaniia plan s poveche
podrobnosti.
1. Predpolagam, che s PartitionMagic bi se spravil vseki
Linux potrebitel
2. Degradirane na masivite
mdadm --fail /dev/md0 --remove /dev/sdb2
mdadm --fail /dev/md1 --remove /dev/sdb1
mdadm --fail /dev/md2 --remove /dev/sdb6
mdadm --fail /dev/md3 --remove /dev/sdb5
swapoff /dev/sdb3
Poslednata komanda za spirane na SWAP ustroistvoto (az imah
2) prosto ia vidiah v edna ot statiite v Internet. Mislia,
che dori da lipsva - tova niama da povliiae na tsialata
protsedura.
4. Zadavaneto na tipove za razdelite stava s komanda
"t" na fdisk - suotvetno s FD se markirat
razdelite, koito shte
uchastvat v budeshtite RAID masivi; s 83 se markirat dvata
Linux-native diala (za /tmp i /var/tmp - sda7 i sdb7);
s 5 markirah Extended diala, ponezhe PartitionMagic go beshe
suzdal kato tip 4 (ne sum se zamislial dali Linux shteshe da
raboti pri tip 4 - prosto na starite diskove beshe tip 5,
zatova go napravih taka i pri novite)
Formatirah /sdb7 kato ext3 failova sistema - komanda
"mke2fs -j /dev/sdb7"
5. Ruchno dobaviane na noviia disk v RAID masivite
mdadm /dev/md0 --add /dev/sdb2
mdadm /dev/md1 --add /dev/sdb1
mdadm /dev/md2 --add /dev/sdb6
mdadm /dev/md3 --add /dev/sdb5
Tui kato tova obiknoveno sa bavni komandi, i se izpulniavat
na zaden plan (background) - niama smisul da gi puskate
vsichki navednuzh, po-dobre e da se izchakva vsiaka ot tiah da
zavurshi. Tova se proveriava periodichno s komandata
"cat /proc/mdstat" - za suotvetniia masiv triabva
da pishe [2/2] [UU]
md1 : active raid1 sdb1[0] sda1[1]
128384 blocks [2/2] [UU]
6. Zakomentirah reda v /etc/fstab za montiraneto na
/var
8. Izklyuchih survura, izvadih /dev/sda, na negovo miasto
slozhih toku-shto zapisaniia 500 GB disk, a vmesto /dev/sdb
slozhih vtoriia (vse oshte prazen) 500 GB disk
9. Vklyuchih survura v ednopotrebitelski rezhim. Za GRUB tova
se pravi po sledniia nachin:
a) po vreme na nachalnoto zarezhdane se natiska proizvolen
klavish
b) v rezultat se poiaviava menyuto za izbor na iadro
v) sus strelkite se izbira zhelanoto iadro (moeto beshe
SMP)
g) natiska se klavish "e", poiaviavat se parametrite
za zarezhdane na iadroto
d) sus strelkite se otiva na reda, na koito e posocheno
iadroto
kernel /vmlinuz-2.6.11-1.1369_FC4 ro
root=/dev/md0
e) natiska se otnovo klavish "e", za da vleze v
rezhim na redaktirane
zh) nakraia na reda se dobavia interval i dumata
"single" (ili samo "s")
z) natiska se ENTER, za da izleze ot rezhim na
redaktirane
i) natiska se klavish "b", za da zapochne zarezhdane
na izbranoto iadro
Tazi promiana vazhi samo vednuzh, do sledvashtiia restart -
zashtoto GRUB ne e zapisal nastroikite v konfiguratsionniia si
fail.
Pri startiraneto se poiaviavat greshki, che lipsvat direktorii
/var/lib i /var/run, no mozhe smelo da se ignorirat.
11. Ruchno dobaviane na noviia disk v RAID masivite
mdadm /dev/md0 --add /dev/sdb2
mdadm /dev/md1 --add /dev/sdb1
mdadm /dev/md2 --add /dev/sdb6
Narochno ne napisah poslednata komanda "mdadm /dev/md3
--add /dev/sdb5", zashtoto kakto obiasnih po-gore tova se
okaza
podvoden kamuk. Pravilnata poreditsa ot komandi e
mdadm --stop /dev/md3
mdadm --create /dev/md3 --level=1 --raid-devices=2
/dev/sd[ab]5
Poslednata komanda e nai-vazhna v tsialoto tova uprazhnenie,
zashtoto bez neia resize2fs niama da mozhe da
svurshi nishto - RAID masivut si ostava sus starata golemina,
vupreki che se namira v nov i po-goliam razdel.
Izpulnenieto i e dosta bavno, za razlika ot "mdadm
--add" - 132 minuti sreshtu 26 minuti.
Sled kato vsichki RAID masivi biaha sinhronizirani, izpulnih
komandata "resize2fs /dev/md3".
Tochno zaradi neia po-gore zakomentirah montiraneto na /var v
/etc/fstab. Pri purvoto i izpulnenie tia poiska da
pusna "e2fsck -f /dev/md3" - napravih go.
12. Mahnah komentara za montiraneto na /var ot /etc/fstab,
promenih pravata na /tmp i /var/tmp da budat 0777 i
restartirah
13. Nastroika na GRUB za dualno startirane ot koi da e disk
(sda ili sdb)
Ot komandniiat red se izpulniava komanda grub, s koiato
vlizame v neshto kato elementaren BASH shel i se izpulniava
slednata
poreditsa komandi:
device (hd0) /dev/sdb
root (hd1,0)
setup (hd1)
quit
Sega GRUB e instaliran na dvata diska, i sdb e nasochen kum
(hd0).
Gotovo - df bi triabvalo da pokazva, che /var e s novata
golemina.
<< Konvertirane na videofailove v 3gp format | >>
|
|