Bacula: vampyrų baimė

Sveiki visi.

Norėjau su jumis šiek tiek pakalbėti apie bacula, tą programą, kurios visi bijo, nes ji per didelė ir/ar iš pirmo žvilgsnio atrodo sudėtinga.

Tai tikrai didelė programa, bet kai jie paaiškina (plačiais potėpiais), kaip ji veikia, viskas vyksta sklandžiai.

Įvadas

Bacula yra programa, kuri tvarko atsargines kopijas (atsargines kopijas ispanų kalba). Didžiulis jo potencialas slypi tame, kaip gerai jis tvarko ir automatizuoja atsargines kopijas, ypač didelėse aplinkose (žr. Kelių serverių priežiūra).

Tiesa, jei tiesiog norite pasidaryti asmeninio kompiuterio atsargines kopijas, pamirškite jį, jį sukonfigūruoti užtruksite per ilgai. Bet jei atsidursite tokioje padėtyje, kad turėsite dirbti su keliais kompiuteriais / serveriais, „Bacula“ yra jūsų sprendimas. Iš pradžių tam teks praleisti daug valandų, tačiau palikus viską sukonfigūruotą, gali praeiti metai, kai nebereikės jo liesti; Be to, kai išmoksite juo naudotis, pakeitimai, kuriuos atliksite, bus nedideli ir lengvi.

Architektūra

Pirmas dalykas, kurį reikia suprasti apie šią programą, yra jos įvairinimas: ji yra padalinta į keletą dalių, kurios yra tarpusavyje susijusios. Šios dalys gali būti įdiegtos skirtinguose įrenginiuose arba tame pačiame įrenginyje, suteikiant galimybę išsaugoti atsargines kopijas kitame įrenginyje nei tas, kuris jas valdo (pavyzdžiui).

Yra 3 pagrindinės dalys, kiekviena taip pat yra skirtingas diegimo paketas: direktorius, saugykla ir failas. Kaip galite daryti išvadą, filė yra kliento aparatas (tas, kuriam reikia daryti kopijas), saugojimas yra aparatas, kuris išsaugo šias kopijas ir Direktorius Tai mašina, kuri organizuoja visą procesą. Žinoma, gali būti kelios kliento mašinos (Failas), kelios Storage (jei norite atskirti kopijas) ir Director (nors logiška būtų viena, galima nurodyti kelis).

Failai, įrankiai ir demonai

Jei visa tai automatizuota, tai yra dėl demonų naudojimo. Kiekviena dalis turi savo demoną: bacula-director, bacula-fd (failų demonas) ir bacula-sd (storage-demon). Ir kiekvienas demonas veikia pagal savo failo, priglobto, konfigūraciją /etc/bacula: bacula-dir.conf, bacula-fd.conf, bacula-sd.conf.

Šie konfigūracijos failai generuojami automatiškai diegiant, ir jums tereikia pakeisti keletą parametrų (nuotolinio įrenginio IP, nuosavi sertifikatai, automatinis atsarginių kopijų planavimas...). Režisieriaus sąranka yra pati sunkiausia ir plačiausia, nes jis yra tas, kuris viskuo pasirūpina; Paprastai jis yra padalijamas į keletą failų, kad nesulaužytų galvos, tada jie visi sujungiami į pagrindinį failą (panašiai kaip yra Apache2).

Dabar, nors konfigūracijos failai yra ten, kur yra visa „chicha“, „bacula“ siūlo keletą įrankių jiems valdyti, nes dažnai užduotis teks atlikti „ranka“. Aš tiesiog sutelksiu dėmesį į konsolės įrankį bconsole, nes jis yra pats naudingiausias, o kiti (grafikai) yra pagrįsti juo. Kaip rodo jo pavadinimas, tai yra komandų interpretatorius, kuris interaktyviai leidžia atlikti įvairius darbus.

Reikėtų pasakyti, kad yra keletas žiniatinklio paslaugų, kurias galima įdiegti „Director“ kompiuteryje, kad būtų galima valdyti ir stebėti „Bacula“. Pavyzdžiui, „Bacula-Web“ siūlo jums diagramas ir lenteles informaciją apie atsarginių kopijų būseną, saugyklos užimtumą ir kt.

Taip pat reikia paminėti, kad Bacula veikla paremta katalogu: duomenų baze (rinkitės tarp MySQL, SQLite ir PostgreSQL), kur visi įvykiai, tomai, klientai... Šios duomenų bazės negalima liesti ranka. , per bconsole Siūlomos kelios komandos, leidžiančios sąveikauti su katalogu nenaudojant SQL sintaksės.

saugumas

Viena iš „Bacula“ stipriųjų pusių – saugumas. Kiekvienas Klientas, saugykla ir direktorius turi savo raktą ir, priklausomai nuo ryšio, šiuo raktu yra užšifruotas. Kiekvienas gali sugalvoti šį slaptažodį pagal savo skonį, nors pati programa sugeneruoja atsitiktinį iš 30 simbolių.

Be programos siūlomo šifravimo, „Bacula“ priima saugius ryšius naudodama TLS. Todėl prie ankstesnio šifravimo turime pridėti dar vieną SSL sertifikato ir rakto šifravimą. Jei rimčiau, kiekvienai mašinai turi būti sukurtas unikalus sertifikatas ir raktas. Ši sąrankos dalis yra šiek tiek sudėtingesnė.

Apimtys

Šiek tiek pabrėžsiu, kaip kataloge tvarkomos kopijos, nes iš pradžių tai gali būti šiek tiek painu.

Kopijos laikomos supakuotos šifruotuose tomuose, todėl negalima tiesiogiai prieiti prie failų. Tai savotiškas .tar.gz (nes palaiko glaudinimą), bet savas; Be katalogo neįmanoma išgelbėti duomenų plikomis rankomis. Tam yra pažangių įrankių, tačiau jiems visada reikia tam tikro duomenų bazės komponento, o pradedančiajam vartotojui jie tampa labai sudėtingi. Štai kodėl katalogas turi būti lepinamas ir juo rūpinamasi (bacula pagal nutylėjimą padaro savo atsarginę katalogo kopiją, kai atliko numatytus darbus).

Kad padėtų mums organizuoti kelias atsargines kopijas, „Bacula“ sugrupuoja tomus į telkinius. Pavyzdžiui, baseinas yra apibrėžtas kiekvienam klientui, todėl visas kiekvieno kliento kopijas (apimtį) galima lengvai atskirti, nes jie priklauso skirtingoms šeimoms (bankoms).

Be to, „Bacula“ palaiko pakartotinį tūrių naudojimą / perdirbimą. Taigi, jei norite tik mėnesinės visos atsarginės kopijos, bet norite, kad ji egzistuotų, galite sukonfigūruoti „Bacula“, kad ji perrašytų tomą, kuriame anksčiau buvo ta kopija, taip išvengiant bereikalingo disko užpildymo ir pamiršus, kad reikia ištrinti duomenis pačiam. old at ranka.

Kopijuoti ir atkurti lygį

Galima apibrėžti skirtingus darbus pagal atitinkamus grafikus. Tai yra, jei kasdien darytume visą atsarginę kopiją, mūsų priežiūros užduotys nebūtų labai veiksmingos... bet Bacula leidžia mums iki 3 skirtingų lygių darant atsargines kopijas: pilną, diferencialinę ir laipsnišką.

Visiška atsarginė kopija yra klasikinė kopija, nukopijuojama viskas, ko norite. Nors Diferencialas kopijuoja tik tuos failus, kurie buvo pakeisti (arba nauji) nuo paskutinio Full. Tas pats atsitinka su prieauginėmis kopijomis, bet vienu lygiu žemiau, lygina tik pokyčius nuo paskutinio diferencialo arba paskutinio pilno, jei tai naujesnė. Tai labai patogu, jei norite išlaikyti balansą tarp išteklių optimizavimo ir jų naudingumo. Taip galime gauti failus iš skirtingų datų, neužimdami daug vietos. Tai labai naudinga, kai kas nors sutrinka ir reikia konkrečios dienos atsarginės kopijos.

Pavyzdys: kiekvieną dieną planuojame papildomas atsargines kopijas, diferencines atsargines kopijas kiekvieną savaitę ir visas atsargines kopijas kiekvieną mėnesį. Jei tam tikru momentu mums reikės panaudoti tas kopijas (nes sugedo vienas iš mūsų kliento įrenginių), tiesiog turime atlikti atkūrimo užduotį (per bconsole) gali nurodyti naujausią tam tikros datos kopiją, o tik „Bacula“ sukuria katalogų medį, pagrįstą paskutinio „Full“ sujungimu su diferencialo ir prieaugio pakeitimais.

Automatika

Čia išryškėja stiprioji Bacula pusė. Visos atsarginės užduotys suplanuotos direktoriui, taip pat palaikomi prioritetų lygiai. Todėl įprasta planuoti kelias užduotis tai pačiai dienai ir laikui. Kai direktorius prisijungia prie kliento kompiuterio (su savo FileDaemon), jis susisiekia su saugykla, susijusia su minėta užduotimi, paruošia užšifruotą ryšį ir failus, kuriuos reikia nukopijuoti.

Be to, ji ne tik leidžia nurodyti failus/aplankus, kuriuos reikia nukopijuoti, bet ir palaiko komandų/skriptų vykdymą prieš kiekvieną darbą, jo metu ir po jo. Todėl, jei norite sukurti atsarginę duomenų bazės kopiją, galite nurodyti scenarijaus, kuris pateikia išklotinę, kelią ir nukopijuoti tą iškeltą. Tai taip pat leidžia bendrai nurodyti kopijuojamus failus, nes galima pridėti konkretesnių failų iš paties kliento įrenginio. Normalu turėti bendrą failų rinkinį visoms UNIX sistemoms (kur yra apibrėžti kopijuotini aplankai, /etc, /usr, /home /var...), o tada kiekvienas klientas gali nurodyti savo failus, kuriuos nori būti nukopijuotas.

„Bacula“ taip pat palaiko pakartotinį tūrių naudojimą / perdirbimą. Taigi, jei norite tik mėnesinės visos atsarginės kopijos, bet norite, kad ji egzistuotų, galite sukonfigūruoti „Bacula“, kad ji perrašytų tomą, kuriame anksčiau buvo ta kopija, taip išvengiant bereikalingo disko užpildymo ir pamiršus, kad reikia ištrinti duomenis pačiam. old at ranka. Labai plačiai paplitęs naudojimas yra pakartotinai naudoti prieauginėms ir diferencialinėms kopijoms priskirtus telkinius, nes jie tiesiog naudojami modifikuotiems / naujiems failams saugoti, kiekvieną kartą, kai yra naujas pilnas, tie tomai tampa nenaudingi, todėl juos pakartotinai naudojate naujiems prieauginiams / diferencialams. .

Ir visa tai… kaip tai veikia?

Po sprogimo, kurį ką tik jums surengiau, daugelis stebėsis, kaip tai tvarkoma. Na, o jau minėtuose konfigūracijos failuose VISKAS nurodyta, o juose viskas automatizuota. Praleidus kelias valandas jas konfigūruojant, o kartą tai truks visą gyvenimą, net pasidaro nuobodu.

Vienintelis dalykas, kurį reikia atlikti rankomis, yra restauravimo darbai, nes nebūtų prasmės juos automatizuoti... nors tai galima padaryti. Nepaisant to, juos pagaminti rankomis yra gana paprasta, naudojant įrankį bconsole Siūlomi keli variantai, belieka tik išsirinkti detales. Jis taip pat plačiai naudojamas apibrėžiant telkinius rankiniu būdu, todėl konfigūracijos failuose tereikia pasakyti, kuriam telkiniui priklauso tomai, nereikia kurti direktyvų jiems kurti/ieškoti.

Epilogas

Aš nesigilinau į technines detales, nes šis įrašas tampa labai platus, taip pat norėjau pateikti bendrą programos veikimo vaizdą. Jei pamatysiu daug atsiliepimų, galbūt pamoka man tiks.

Tikiuosi patiko ir iki kito karto!


Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Atsakingas už duomenis: Miguel Ángel Gatón
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.

  1.   dunteris sakė

    Kai kurios nuorodos į svetainę žmogus, jau nekalbant. 😉

    http://www.bacula.org/es/
    http://www.bacula.org/en/?page=documentation

    Pastaruoju metu esu priklausomas nuo rsync namų ruošos darbams, turiu savo atsargas ir dokumentus, dubliuojančius staliniame ir nešiojamajame kompiuteryje, ir dažnai juos sinchronizuoju, todėl mano nešiojamasis kompiuteris visada turi darbalaukio veidrodį.

    Manau, kad serveriams tinkamas geras scenarijus su rsync, kurį paleidžia cron, tačiau bacula pranašumas yra tas, kad jis išsaugo ne tik naujausias, bet ir peržiūras.

    1.    Oho sakė

      Aš tuoj juos uždėsiu. Apie tai pagalvojau vos išsiunčiant straipsnį peržiūrai, bet teko eiti ir iki šiol nekėliau kojos prie kompiuterio.

    2.    Oho sakė

      Oho, nemanau, kad galiu redaguoti... Palieku čia nuorodą į pagrindinę dokumentacijos nuorodą, nes kažkas susipainios su tiek daug nuorodų...
      http://www.bacula.org/5.2.x-manuals/en/main/main/index.html

  2.   Eulalio sakė

    Tai turi būti perskaityta išsamiai ir raudonu pieštuku.

  3.   Julio Cesar sakė

    Labai gerai, aš jau kurį laiką buvau bacula vartotojas duomenų centre, kuriame dirbau, bet čia naudoju sprendimą, kuris yra toks pat galingas kaip bacula ir daug, daug lengviau, kai reikia įdiegti ir konfigūruoti

    Atsarginė PC
    http://backuppc.sourceforge.net/

    Šiuo metu beveik visus atsarginius serverius perkėlėme į šią platformą

  4.   KZKG ^ Gaara sakė

    Prieš keletą metų ieškojau programos, kuri galėčiau sukurti atsargines serverių kopijas ankstesniame darbe... Išbandžiau Bacula, bet, ugh, tai pabaisa, be jokios abejonės, puikus pasirinkimas, bet to buvo per daug, ko man reikėjo. Galų gale aš suprogramavau savo mažą sistemą (bash scenarijus), kuri padarė būtent tai, ko norėjau 😀

  5.   Joaquinas sakė

    Taip gerai, ačiū, kad dalinatės!

  6.   adiazc87 sakė

    Labai geras straipsnis, ir aš bandžiau jį įdiegti, bet kadangi tai atrodo taip sudėtinga, man labiau patinka daryti atsargines kopijas naudojant rsync ir crontab, jei galėtumėte įdėti straipsnį apie diegimą ir konfigūraciją, būčiau amžinai dėkingas.

    Ačiū už gerą paaiškinimą.

    1.    Oho sakė

      Pirmiausia turite nuspręsti, kurią duomenų bazę naudoti, pažiūrėkite į oficialią dokumentaciją, kuri yra gana išsami http://www.bacula.org/5.2.x-manuals/en/main/main/Installing_Bacula.html
      Taip pat patarčiau įdiegti su savo platinimo paketų tvarkykle, pavyzdžiui, su apt-get (panašiu į debianą) katalogas sukuriamas pats, atlikus kelis labai paprastus veiksmus.
      Norėdami konfigūruoti, pažiūrėkite http://www.bacula.org/5.2.x-manuals/en/main/main/Installing_Bacula.html Kadangi konfigūracijos failai beveik paruošti, tereikia pakeisti keletą dalykų, o bacula dokumentacijoje jie nurodo, kaip po truputį pradėti rinkti, kad suprastumėte procesą.
      Norėčiau padaryti gidą, bet rytoj išvažiuosiu atostogauti... gal kai grįšiu 🙂

  7.   Jonas sakė

    Labai gerai… tai padėjo man pradėti naudoti svarstykles….

  8.   sodai sakė

    Puikus įrankis!!! Nežinojau, nors teks tirti su padidinamuoju stiklu, įdomiai atrodo...

    Sveiki atvykę!

  9.   GJuodkalnija sakė

    Sveiki, jau kelias savaites konfigūruoju Bacula įmonėje, kurioje dirbu, daug mokausi iš šio įrankio, atrodo fantastiškai. Tačiau turiu klausimą, kurio nepavyko išspręsti, ir tikiuosi, kad kas nors galės man padėti. Ar galiu saugoti tomus arba telkinius išoriniame diske, kad galėčiau sukurti atsarginę kopiją ne vietoje, o tada atkurti iš šių failų?

    1.    Oho sakė

      Sveiki, žinoma, galite saugoti tomus išoriniame diske, bet norėdami juos atkurti, turite turėti prieigą prie bconsole, nes norėdami atkurti failą turite iššifruoti tomą pagal katalogą.
      Naudodami atkūrimo komandą gausite keletą veiksmų, kad pasirinktumėte garsumą ir pan., tada bus sukurtas katalogų medis, kad galėtumėte rankiniu būdu pasirinkti failus. Tai taip pat leidžia pasirinkti įrenginį ir katalogą, kur juos atkurti (jis netgi suteikia galimybę atkurti šaltinį, perrašant duomenis, nors tai nerekomenduojama).
      tikiuosi tai padės http://www.bacula.org/en/dev-manual/main/main/Restore_Command.html

      1.    GJuodkalnija sakė

        Ačiū už operatyvų atsakymą. Pabandysiu pasiaiškinti pavyzdžiu, kad šiek tiek labiau patikslinčiau situaciją 😉. Šiuo metu „Bacula“ jau sukonfigūruota daryti disko kopijas, kas atsitiks, jei paimsiu vieną iš tomų ir nukopijuosiu jį tiesiai į išorinį diską, kurį išsaugosiu už duomenų centro, kad atkurčiau įvykus įvykiui. Ar įmanoma atkurti šiame tome saugomus duomenis, jei iš naujo prijungiu išorinį diską ir bandau jį atidaryti su Bacula?

        1.    Oho sakė

          Reikalas tas, kad jūs turėtumėte „užregistruoti“ išorinį diską kaip įrenginį saugojimo demono konfigūracijoje (bacula-sd.conf failas), kad „bacula“ galėtų jį matyti. Kai tai padarysite, nemanau, kad turėsite didelių problemų... net ir tokiu atveju aš atlikčiau testus, jei katalogas nerastų tomo. Leiskite man paaiškinti, kai perkeliate tomą „fiziškai“ (ty perkeliate failą iš operacinės sistemos), katalogas to nežino, todėl jūs taip pat turite ištrinti tomą iš katalogo. Tada tikriausiai turėsite jį įtraukti atgal į katalogą, nes pasikeitė jo kelias. Į bconsole įveskite help, kad pamatytumėte katalogą valdančių komandų santrauką.
          Yra du paprasti sprendimai, jei nenorite blaškytis su katalogu. Pirmasis yra tas, kad bacula rašo tiesiai į išorinį diską, o kai pavargote, į bacula-sd.conf įdedate naują įrenginį ir išsaugokite diską kur nors kitur; Tokiu būdu, kai reikia ką nors atkurti, tie tomai vis tiek atsispindi ir gerai sukonfigūruojami kataloge. Kita galimybė yra atkurti išorinį diską, kuris išsaugo failus tiesiai į diską be šifravimo, archyvavimo, suspaudimo ar nieko, todėl jie visada bus pasiekiami.

          1.    GJuodkalnija sakė

            Labai ačiū 🙂

          2.    Oho sakė

            Beje, kai atkuriate su bconsole, pabaigoje gausite patvirtinimo santrauką, paprastai pasirenkate mod parinktį (yes/mod/no), kuri leidžia keisti kai kuriuos parametrus, kurie jau yra sukonfigūruoti

  10.   ir tu sakė

    Bacula yra tai, ką aš visada pradedu, bet niekada nebaigiu. Man tai atrodo milžiniška. Turiu kada nors pabandyti suteikti jai dar vieną šansą dėl jo teikiamų galimybių.

  11.   BiteAciD sakė

    Iš pradžių mokytis bakulos yra šiek tiek sudėtinga, bet kai žinai, kaip tai veikia, viskas pagerėja...
    Aš studijuoju šią programą 3 dienas, valdau ją iš webmin, bconsola ir kt...
    Galbūt praverstų platesnė pamoka... Savo ruožtu aš dokumentuoju problemas, su kuriomis susidūriau (kad suprasčiau programą).
    pavyzdys:
    – Kai įdiegiate „Windows“ klientą, jis suteikia numatytąjį prieigos slaptažodį, kurį pakeitus prieš prisijungdamas prie serverio, jis nesuteiks prieigos... Tai reiškia, kad turite naudoti tą patį slaptažodį ir atpažinę įrenginį galite pakeisti slaptažodį.

    BackupPC yra geras, bet manau, kad šiuo metu Bacula atrodo per tvirta gamybos aplinkai, kurioje yra daug serverių ir darbo stočių.

    saludos

    1.    Oho sakė

      Įdiegti ir sukonfigūruoti Windows klientą yra nemenkas iššūkis, nors iš principo viskas veikia puikiai, kai pradedi lįsti į TLS konfigūracijas su savarankiškai pasirašytais sertifikatais... košmaras prasideda. Aš tai pasiekiau, bet pirmas kartas man kainavo laiko, pykčio ir prakaito!

  12.   Leopoldas sakė

    Norėčiau gauti informaciją.

  13.   gegužės meistras sakė

    Labas labas popietes.

    Aš galėčiau man padėti, prašau. Įdiegiau bacula ir ji veikia mano serveriuose ir be problemų galiu atkurti atsargines kopijas. Bet mano klausimas, ar yra būdas išsaugoti visą operacinę sistemą? kaip paveikslėlį ar kloną ačiū iš anksto.

  14.   Gustavo sakė

    Man labai patiko straipsnis, aiškus, paprastas, išsamus ir malonus skaityti. Mano klausimas yra toks: kokią „Linux“ versiją ir skonį labiausiai rekomenduojate „Bácula“? Sveikinimai.

  15.   Mauricijus Tobaras sakė

    Gerbiamieji, labai gerai, straipsnyje su keliomis pamokomis pavyko įdiegti bacula į Centos 6.6, įdiegti klientą Windows 7, kuris palaiko ryšį su direktoriumi, taip pat įdiegti Webmin, nes per tai aš tvarkau visas kliento ir atsargines konfigūracijas.
    Viskas gerai, bet kai darau atsarginę kopiją, tai neveikia, nieko neveikia, prašau, kad apšviestų ką aš darau ne taip, labai ačiū iš Čilės.

  16.   JėzusJch sakė

    Labas rytas, dirbu su bacula porą metų, jokių problemų neturėjau, bet vieną dieną bacula nebepradėjo, ieškojau ir nepavyko suaktyvinti paslaugos, man tapo lengva kopijuoti failus ir /etc/bacula aplanką, bet aš ieškojau internete ir suprantu, kad mano klaida buvo nenukopijavus aplanko, kuriame įrašytas įkrovos failas.
    Ar žinote kokį nors būdą, kaip išspręsti šią problemą?

    Linkėjimai iš Meksikos
    Jėzus

  17.   Roberto Gevara sakė

    Sveiki, bandau įdiegti tarp kelių serverių, bet negaliu autentifikuoti saugyklų, bet galiu autentifikuoti tų pačių serverių klientus. Ar kas nors žino, ar tai versijos problema? Turiu serverį su 2.4 versija, kitą su 5.0 ir baculumweb su 9.0 versija
    Ačiū