
Efektívne zálohovanie na CD pre každého
Problematike výberu vhodného spôsobu zálohovania serverov a pracovných staníc čelia mnohí z nás. Či už sa jedná o zálohovanie produkčných serverov, alebo vytváranie záložných verzií klonovaných pracovných staníc, otázka je stále rovnaká. Ako vybrať vhodný prostriedok, ktorý mi zaručí aj efektívnu obnovu v prípade potreby? Nuž otázka to nie je jednoduchá.
1. Úvod
Vynikajúcich projektov je k dispozícii mnoho. Hlavným kritériom pri výbere býva často vhodnosť výsledného formátu zálohy, kde jednoznačne prevažuje dôraz na používanie konvenčných komprimačných nástrojov schopných uchovať adresárovú štruktúru a nastavenie prístupových práv pre možnosť ručnej obnovy žiadaných súborov. Takýmto vynikajúcim prostriedkom je aj HDUP z produkcie Mieka Giebena, ktorý sme si už na našich stránkach predstavili.
Častokrát je však potrebné efektívnym spôsobom zabezpečiť vytváranie snapshotov pevných diskov alebo vybraných partícií s možnosťou cielenej selekcie, pre možnosť ich kompletnej obnovy v prípade úplného kolapsu systému pre zabezpečenie prevádzky záložného servera vytvoreného obnovením snapshotu. Rovnako často sa stretávame s potrebou klonovania množstva pracovných staníc, či už na akademickej pôde, v laboch, alebo v produkčnej sfére, kde je inštalácia mnohých staníc ručne nepredstaviteľná.
V takýchto prípadoch často "poškuľujeme" po komerčných produktoch zvládajúcich túto situáciu (napríklad DriveImage a podobne) aj keď sú k dispozícii mnohé natívne riešenia postavené na Linuxe, ktoré nám poskytujú plnú funkčnosť s možnosťou širokej miery prispôsobenia vlastným podmienkam. Dnes si teda predstavíme vynikajúci projekt s názvom mkCDrec, ktorý poskytuje nástroj pre vytváranie bootovateľných rescue CD s podporou vytvorenia zrkadlového obrazu diskového subsystému na CD médiá s možnosťou ich jednoduchej obnovy a klonovania, pričom samotný set môže byť rozdelený na ľubovoľný počet CD nosičov. K dispozícii máme podporu najvyužívanejších filesystémov a to ext2, ext3, msdos , xfs, jfs, fat, vfat a ReiserFS, tak prečo si neoveriť funkčnosť aspoň experimentálne? Pozrime sa teda na projekt bližšie.
2. Inštalácia
Domovská stránka projektu mkCDrec je k dispozícii na adrese http://mkcdrec.ota.be/project/introduction.html, kde v súčasnosti nájdeme aktuálnu verziu s označením 0.6.6. Ako je už zo samotnej koncepcie projektu jasné, na hoste musí byť nainštalované pálitko, takže problematikou jeho konfigurácie a oživenia sa v tomto článku zaoberať nebudeme. Prvým krokom bude stiahnutie balíčka zdrojového kódu s jeho následným rozbalením
tar xzvf mkCDrec_v0.6.6.tar.gz
cd mkcdrec
Pre správnu funkčnosť je potrebné zabezpečiť prítomnosť všetkých potrebných podporných nástrojov súvisiacich s tvorbou ISO obrazov a realizácie napaľovacieho procesu. Jednoduchú kontrolu ich prítomnosti vykonáme pomocou
make test
pričom prípadné nedostatky odstránime doinštalovaním chýbajúcich nástrojov. Ak používate niektorú z komplexných distribúcií, všetky potrebné komponenty nájdete priamo na distribučnom CD vo forme balíčkov. Keď máme všetko potrebné k dispozícii,
môžeme sa pustiť do ďalšieho kroku
3. Konfigurácia
Samotná konfigurácia je netradične realizovaná úschovou v súbore Config.sh, ktorý má užívateľsky modifikovatelnú časť a časť systémovú, do ktorej úprav sa nepúšťajte, pokiaľ nemáte presne preštudovaný funkčný systém projektu.
ISOFS_DIR=/tmp/backup
CDREC_ISO_DIR=/tmp
V prvom rade nás bude zaujímať, v ktorom adresári sa bude realizovať príprava funkčnej sekcie budúceho bootovateľného CD, a kam bude vytváraný ISO image výsledného disku. Vopred si treba uvedomiť kapacitnú náročnosť závislú od veľkosti médií plus nejakých tých 60MB navyše, takže vopred zvážte podľa rozdelenia partícií kam s tým...
CIPHER=blowfish
Výsledné zálohy môžu byť vďaka podpore ssl enkryptované s použitím vami definovaného kľúča pre zabezpečenie citlivých dát, nájdeme tu teda parameter určujúci výber enkrypčného mechanizmu. Samotná enkrypcia však nie je nutná, takže pre zabezpečenie operačnej rýchlosti pri klonovaní pracovných staníc túto voľbu iste nebudeme potrebovať použiť.
PreExec="/usr/sbin/stop_services"
PostExec="/usr/sbin/start_services"
Keďže zálohovací proces môžeme realizovať aj na živých produkčných serveroch, iste mi dá každý za pravdu, že v prípade plánovaných záloh tohto typu je potrebné zabezpečiť pred zahájením zálohovacieho procesu ukončenie behu všetkých daemonov poskytujúcich služby, ktorí modifikujú súbory, s nutnosťou ich spustenia po ukončení zálohovacieho procesu. Máme teda k dispozícii dvojicu parametrov zabezpečujúcich spustenie užívateľských skriptov pred zálohovaním samotným a po jeho skončení, čo nám vynikajúco dovolí vstúpiť do samotného procesu.
CDRECORD=/usr/bin/cdrecord
SCSIDEVICE="0,0,0"
WRITESPEED="24"
BLANK_CDRW=y
CD_EJECT=y
MAXCDSIZE=700000
Nasleduje nastavenie volieb úzko súvisiacich so zálohovaním na cieľové médium. Lokalizujeme nástroj cdrecord, cieľovú CDRW mechaniku, operačnú rýchlosť využitú pri zápise,. nezabudneme ani prikázať vymazanie CDRW média pred zahájením zálohovania s následným vysunutím média po ukončení každého zápisu. Keďže nie je možné efektívnym spôsobom zistiť kapacitu cieľového média, musíme ju určiť ručne.
SCSI_MODULES=
NETWORK_MODULES=
OTHER_MODULES=
Pre definovanie modulov, ktoré je potrebné zaviesť pri nabootovaní realizovaného výsledného CD slúži trojica parametrov, deliaca potrebné moduly podľa skupín. V prípade, že využívate SCSI radič, nezabudnite pridať do tejto sekcie príslušný modul, rovnako je vhodné zaradiť aj potrebný ovládač sieťovej karty, nakoľko CD je možné využiť aj ako rescue nástroj obsahujúci nástroje, ktoré sú špecifikované pred koncom konfiguračného súboru.
EXCLUDE_LIST="/tmp/*
/mnt/*
/nerobho
/var/subor*
/proc/*"
Dôležitou úlohou je zabezpečiť vyňatie nevhodných adresárov zo zálohovacieho procesu. V každom prípade musíme vylúčiť adresár ktorý sme si určili za dočasný pri vytváraní ISO obrazu. Ak za cieľom špecifikujeme znak *, adresár sa pri obnove systému vytvorí s nulovým obsahom, ak tento znak absentuje, pri obnove sa prázdny adresár nevytvorí. Pre vyňatie je možné samozrejme špecifikovať aj sady súborov popri adresároch.
Keďže máme samotnú konfiguráciu v podstate hotovú, pustíme sa do vytvorenia nášho záložného CD setu.
4. Zálohujeme
Spustenie zálohovacieho procesu je pomerne netradične realizované pomocou príkazu
make
ktorý nám sprístupní hlavné ovládacie menu
Popri možnosti vytvorenia výhradne rescue CD, využívajúceho špecifikované nástroje z bežiacej distribúcie s použitím aktuálneho kernelu, čo využijeme vo voľnom čase pri experimentovaní nás zaujme možnosť skrývajúca sa pod voľbou 2, ktorou je naše vytúžené zálohovanie. Na čo teda čakať? Capneme tam dvojku, skontrolujeme zoznam zálohovaných filesystémov, potvrdíme dostatok voľného priestoru na disku a v prípade ochrany zálohy kryptovaním špecifikujeme heslo. Pozor, objaví sa v cleartext podobe v /root/.secret.
Po potvrdení sa spustí po prvýkrát trochu dlhší proces zabezpečujúci kompiláciu nástrojov tvoriacich základ budúceho CD s následným prekopírovaním s ich súčasným stripnutím pre minimalizáciu nárokov na ramdisk, z ktorého budú po nabootovaní z vytvoreného CD bežať. Zdrojové zálohované dáta sú zozbierané, skomprimované a samozrejme v našom prípade aj enkryptované. Následne prichádza na rad vymazanie CDRW média s následným vypaľovaním jednotlivých CD, ktorých poradie je vhodné značiť si už v priebehu zálohovacieho procesu. Najhoršou chybou zistenou pri pokuse o obnovu nenávratne strateného systému je prepísanie niektorého CD z aktuálnej sady jeho následníkom, pričom zistíme, že máme namiesto médií 1,2,3,4 k dispozícii iba 1,3,4. Potom to už chce iba riadne zastrúhanú ceruzku vopchať do nosnej dierky a celou silou ju zaraziť nárazom o stôl do mozgu :(( Dosť bolo ale morbidity, pokračujeme ďalej.
Dočasné súbory zálohy jednoducho vymažeme pomocou
make clean
v prípade, že chceme proces zálohovania na CD automatizovať neinteraktívnym spôsobom, či už cronom, alebo v rámci vlastných administratívnych mechanizmov, využijeme skrátenú voľbu
make CD-ROM
Zálohu máme teda pripravenú, pred tým však, ako sa rozhodneme pre jej akceptáciu uložením do ohňuvzdorného trezoru na druhom konci mesta je vhodné vyskúšať si funkčnosť obnovy na niektorom z testovacích strojov ktoré sa povaľujú kade tade okolo...
5. Obnova a klonovanie
Základným predpokladom možnosti obnovy systému je prítomnosť CDROM mechaniky a dostatočne veľkého pevného disku na cieľovom hoste, pričom BIOS musí podporovať možnosť zavedenia systému z CDROM mechaniky. Ak táto možnosť absentuje, potrebné je realizovať zálohovací proces odznova s modifikáciou konfiguračného súboru, kde nájdete parameter umožňujúci vytvorenie sprievodnej diskety s názvom
PROMPT_BOOT_FLOPPY1
Predpoklad absencie tejto možnosti je však minimálny. Preložíme kávu z vysunutého trayu CD mechaniky na stôl :), vložíme do mechaniky prvé CD z vytvorenej sady a reinicializujeme systém. V prípade správnej funkčnosti nás privíta nasledujúca obrazovka
v skratke identifikujúca CD, ktorá však nič nehovorí o zálohe samotnej, takže sa riadime vhodne umiestnenou popiskou na médiu. Po potvrdení klávesou enter zbehne inicializačný proces, ktorý nám po chvíli sprístupní príkazový riadok. Pre obnovu máme k dispozícii skripty umiestnené v adresári
/etc/recovery
bohate však môžeme využívať sadu nástrojov, ktorú sme si určili pre zakomponovanie do tohto systému. Pre realizácie kópie pôvodného zálohovaného systému využijeme skript
/etc/recovery/start-restore.sh
ktorý zabezpečí vytvorenie potrebných partícií, obnovu súborov a inštaláciu loadera. V tomto prípade musí byť zabezpečená rovnaká alebo väčšia veľkosť cieľového pevného disku, pričom musí byť dodržaná jeho dislokácia na príslušnom kanáli a jeho úlohy master/slave, ktorá je zhodná s originálom. Optimálne pre obnovu na pôvodný neopraviteľný systém alebo na systém zhodný. Rovnako vynikajúci nástroj pre naklonovanie stovky rovnakých pracovných staníc zo vzorového originálu
Druhý skript s názvom
/etc/recovery/clone-dsk.sh
slúži pre selektívnu obnovu zdrojových zálohovaných filesystémov na ciele v závislosti na našom určení. V tomto prípade si môžeme poslúžiť ručným particionovaním cieľového disku, a obnovy vybraného zálohovaného zdroja na vybranú cieľovú partíciu. Táto voľba je vhodná ako na migráciu servera na nový disk v novom systéme, tak na prítomnosť viacerých verzií obrazov pracovných staníc na jedinej sade CD.
6. Záver
Samotný proces obnovy je pomerne rozsiahly a variabilný, takže je v každého vlastnom záujme, aby si pred rozhodnutím pre výber tohto nástoja sám otestoval funkčnosť mechanizmu. V každom prípade sa jedná o vynikajúci nástroj so širokou možnosťou využitia, dlhodobé nasadenie tohto projektu v praxi mnohých administrátorov zaručuje jeho vynikajúcu funkčnosť. Nastal teda správny čas pretrieť si oči po prečítaní tohto elaborátu zameraného na vynikajúci nástroj a pustiť sa do jeho sprevádzkovanie na vlastnom systéme. Veľa zdaru....
|