Erinevus lehekülje "DRBD kasutamine Debianiga" redaktsioonide vahel
(→DRBD kasutamise näite skeem) |
(→DRBD kasutamise näite skeem) |
||
17. rida: | 17. rida: | ||
| | | | | | | | | | ||
|___| |___| | |___| |___| | ||
− | | | + | | /srv/www | /srv/www |
| --> /dev/drbd0 | ..> /dev/drbd0 | | --> /dev/drbd0 | ..> /dev/drbd0 | ||
| --> /dev/sdb | --> /dev/sdb | | --> /dev/sdb | --> /dev/sdb |
Redaktsioon: 22. juuni 2009, kell 21:04
Sisukord
Sissejuhatus
DRDB (Distributed Replicated Block Device) http://www.drbd.org/ tarkvara võimaldab seadistada kahe arvuti lokaalsed plokkseadmed tööle nii, et taustal sünkroniseeritakse ühe arvuti (primaarne) plokkseadmele tehtud muudatusi teise arvuti (sekundaarne) plokkseadmele ja seetõttu on DRBD süsteemi kontrolli all olevatest plokkseadmetest samaegselt kasutatav vaid üks. Vahel öeldakse DRBD kohta network RAID1. DRBD sobib nn cold-standby lahenduse seadistamiseks, kus üks süsteem ei teeninda seni kuni teine pakub teenust.
DRBD kasutamise näite skeem
Olgu kasutada kaks arvutit
teenuse kliendid | | primaarne | sekundaarne --|------------|-------------|-- | | _|_ www _|_ www | | | | |___| |___| | /srv/www | /srv/www | --> /dev/drbd0 | ..> /dev/drbd0 | --> /dev/sdb | --> /dev/sdb | | --|--------------------------|------------------- DRBD andmevahetuse subnet
- /dev/sdb - kummaski arvuti olev lokaalne plokkseade, mis on seadistatud käima DRBD nö backendina
- /dev/drbd0 - loogiline seade, millele on moodustatud failisüsteem
- /srv/www - failisüsteemi ühenduspunkt
- ..> tähistab, et failisüsteem ei ole külgeühendatud olekus
Tarkvara paigaldamine
DRBD skeemis osalevatele arvutitele tuleb paigaldada DRBD tarkvara, mis esineb kahes paketis
# apt-get install drbd8-modules-2.6-xen-amd64 drbd8-utils
DRDB osaliste seadistamine
DRBD tööd juhib juhib seadistusfail /etc/drbd.conf, mis peab olema kõigis osalistes samasugune. DRBD töötamisel ei tööta deemonprotsess, vaid nn tuuma lõimed.
Nt võiks kasutada sellist seadistusfaili
# egrep -v "^$|^ +#|^#" drbd.conf global { usage-count yes; } common { syncer { rate 10M; } } resource r0 { protocol C; handlers { pri-on-incon-degr "echo o > /proc/sysrq-trigger ; halt -f"; pri-lost-after-sb "echo o > /proc/sysrq-trigger ; halt -f"; local-io-error "echo o > /proc/sysrq-trigger ; halt -f"; } startup { degr-wfc-timeout 120; # 2 minutes. } disk { on-io-error detach; } net { after-sb-0pri disconnect; after-sb-1pri disconnect; after-sb-2pri disconnect; rr-conflict disconnect; } syncer { rate 10M; al-extents 257; } on arendus64 { device /dev/drbd0; disk /dev/sdb; address 192.168.10.51:7788; meta-disk internal; } on arendus64-2 { device /dev/drbd0; disk /dev/sdb; address 192.168.10.52:7788; meta-disk internal; } }
DRBD osaliste initsialiseerimine
Kõigil osalistel tuleb üks kord öelda
# drbdadm create-md r0 # drbdadm attach r0 # drbdadm syncer r0 # drbdadm connect r0
Ainult primaarsel komponendil tuleb öelda
# drbdadm -- --overwrite-data-of-peer primary
Süsteemi töö jälgimine
Primaarses arvutis paistab DRBD olukord selline
# cat /proc/drbd version: 8.0.14 (api:86/proto:86) GIT-hash: bb447522fc9a87d0069b7e14f0234911ebdab0f7 build by phil@fat-tyre, 2008-11-12 16:40:33 0: cs:Connected st:Primary/Secondary ds:UpToDate/UpToDate C r--- ns:4 nr:2517044 dw:2517048 dr:2025 al:1 bm:128 lo:0 pe:0 ua:0 ap:0 resync: used:0/61 hits:1048398 misses:128 starving:0 dirty:0 changed:128 act_log: used:0/257 hits:0 misses:1 starving:0 dirty:0 changed:1
kus
- cs: Connected - normaalne süsteemi olek
- st:Primary/Secondary - käsu antud arvuti roll on parasjagu primaarne
- ds:UpToDate/UpToDate - normaalne süsteemi olek
DRBD süsteemi kasutamine
DRBD süsteemis tohib otseselt kasutada DRBD ressurssi ainult primaarsel arvutil, nt moodustada failisüsteem, külge ühendada ja seda kasutada. Süsteem propageerib taustal sekundaarsesse arvutisse muudatusi, kuid need pole kasutatavad enne kui sekundaarne osaline on DRBD vahenditega viidud primaarsesse rolli.
Primaarse osalise kasutamine
Kui süsteem töötab normaalselt, st üks osaline on primaarses ja teine sekundaarses rollis, siis sobib primaarsel esmalt võtta DRBD plokkseade kasutusse, nt moodustades sellele failisüsteem
# mke2fs -j /dev/drbd0
ning kasutamiseks ühendada külge
# mount /dev/drbd0 /srv/www
Ümberlülitus sekundaarsele
Ümberlülitus sekundaarsele tähendab, et primaarselt võetakse DRBD vahenditega primaarse roll ära ning omistatakse seni sekundaarsena töötanud osalisele.
Esmalt peatatakse failisüsteemi kasutavad protsessid ja seejärel ühendatakse vastav failisüsteem lahti
# umount /srv/www
ja seejärel öeldakse seni primaarsena töötanud arvutis
# drbdadm secondary r0
ning seni sekundaarsena töötanud arvutis öeldakse
# drbdadm primary r0