sys.backup - jedno dobro iskustvo
Pretpostavljam da su svim sistemcima poznati Murphyjevi zakoni, osobito ovaj: Ako nešto može poći po zlu, poći će po zlu u najgorem mogućem trenutku. U skladu s tim pravilom poslužitelj će se pokvariti u nedjelju ili na praznik. U srijedu 2. siječnja, nazvao me kolega i obavijestio me da mu se poslužitelj pokvario, naravno na Novu godinu.
Na sreću imao je spremno novo računalo, na koje je ionako namjeravao preseliti dosadašnji poslužitelj. Ali nije imao lokalni backup, trakovni uređaj na starom poslužiatelju davno se pokvario. Zato je prije nekoliko mjeseci počeo koristiti CARNetovu uslugu sys.backup - podaci su se uredno kopirali, ali do sada još nije bilo potrebe za njihovim dohvatom. Ja sam osobno do sada dva puta vratio greškom obrisane datoteke, ali iskustva s povratkom cijelog servera nismo imali ni kolega ni ja.
Najprije smo napravili instalaciju novog poslužitelja, prema uputama s portala. Nismo se odlučili za 'bare metal recovery', već za vraćanje korisničkih podataka nakon instalacije u direktorij /home/stari, a nakon toga njihovo postavljanje na pravo mjesto.
Poslužitelj smo instalirali s privremenom IP adresom, kako bi izbjegli odbijanje poruka elektroničke pošte, pokušaje spajanja korisnika i slično. Sve to ne radi ispravno dok se na poslužitelj ne vrati konfiguracija i podaci. Nakon instalacije pokušali smo vratiti podatke korištenjem bconsole, prema uputama - ali to na žalost nije funkcioniralo. Problem je bio u IP adresi - CARNetov poslužitelj očekuje upite sa iste IP adrese s koje su se podaci backupirali.
Dakle, za ispravno vraćanje podataka treba novi poslužitelj instalirati sa njegovom IP adresom. Ali treba izbjeći i neželjene situacije - u stvari treba zaustaviti servise elektroničke pošte - postfix i dovecot. Ne možemo ih samo tako zaustaviti, jer će ih monit opet pokrenuti. Znači da najprije treba njega isključiti.
Monit se pokreće pri podizanju sustava, prema konfiguraciji u datoteci /etc/inittab, točnije ove dvije linije:
# Begin update by CARNet package monit-cn -- DO NOT DELETE THIS LINE!
mo:2345:respawn:/usr/sbin/monit -Ic /etc/monit/monitrc
m0:06:wait:/usr/sbin/monit -Ic /etc/monit/monitrc stop myprocess
# End update by CARNet package monit-cn -- DO NOT DELETE THIS LINE!
Sve što treba napraviti je zakomentirati ta dva retka. Zatim treba onemogućiti postfix i dovecot. Najjednostavnije rješenje je privremeno prebacivanje skripti za njihovo pokretanje u neki direktorij:
mv /etc/init.d/postfix /home/mrki
mv /etc/init.d/dovecot /home/mrki
Nakon ovoga u datoteci /etc/network/interfaces treba postaviti stvarnu IP adresu poslužitelja i rebootati ga. Slijedi povrat podataka korištenjem bconsole slijedeći upute. Odabrali smo vraćanje direktorija /var, /home, /usr i /etc, zadali smo programu da ih restaurira u /home/stari. I nakon toga trebalo je sačekati sat-dva da se podaci vrate.
Uslijedilo je ponovno vraćanje poslužitelja na privremenu IP adresu, vraćanje postfix i dovecot skripti za pokretanje u /etc/init.d i otkomentiranje linija za pokretanje monit-a u /etc/inittab. I reboot poslužitelja.
Nakon reboota, mogli smo u miru prebaciti podatke iz privremenog direktorija na njihovo mjesto. Prvo konfiguracije iz /etc direktorija, a na kraju i direktorij /home i dolaznu poštu iz direktorija /var/mail.
Ostao je još jedan problem - mysql baze. Ustanovili smo da nema direktorija /home/stari//var/lib/mysql/. Od podrške sys.backup sustava dobili smo odgovor da se mysql ne može backupirati na taj način, ali zato sys.backup najprije napravi dump svih baza u datoteku /var/backups/bacula-cn/mysql.dump.gz - i za to postoje upute na kraju teksta. Tako smo uredno vratili i mysql baze.
Poslužitelj je bio spreman za rad, postavili smo mu pravu IP adresu i rebootali ga. I sve je bilo u redu, korisnici su se počeli spajati i čitati poštu.
Na kraju samo mogu svim kolegama preporučiti da što prije aktiviraju sys.backup uslugu. Backup se radi automatski, svakodnevno i u slučaju ovakve havarije većina podataka bit će sačuvana. Kao što smo vidjeli iz ovog primjera, sustav radi pouzdano i kvalitetno.
- Logirajte se za dodavanje komentara
- Inačica za ispis
- PDF version
Komentari
Ipak ...
Mislim da je daleko jednostavnije napraviti bare metal recovery koji bi pojednostavnio vecinu operacija. Na ovaj nacin ima puno nepotrebnog manuelnog rada, sto se po meni moze zaobici.
Ova usluga je kreirana bas po iskustvima sistemaca i ja osobno mislim da je to jedna od najboljih usluga koju sistemcima nudimu. No izgleda da neki nikako ne mogu neke strahove prevazici i uci u krugove korisnika ove usluge. Steta.
RE: Ipak ...
Mrkijeva metoda je sporija, ali bliža onome što su sistemci navikli raditi. No bit će prilike i za slijedeći iskorak. Bit će još praznika, Murphy radi svoje.
Mrki, za Uskrs očekujemo članak "Bare metal recovery". :)
/etc/inittab
Možda sam malo "zahrđao" u mojim sistemskim znanjima, ali zar nije trebalo nakon editiranja datoteke /etc/inittab izvršiniti naredbu telinit q da se napravi reload konfiguracije?