Bacula a pomalé zálohování

Jan Krajdl spm na spamik.cz
Pondělí Únor 14 12:50:58 CET 2011


Relační DB mám už teď - tedy konkrétně mysql, co běží přímo na stroji s directorem. Asi ji pro zajímavost ještě přesunu
někam jinam, jestli se něco změní (ikdyž vzhledem k tomu, že spooling nepomohl, se spíše obávám že ne). Pro zajímavost
jsem ještě zkoušel na jednom klientovi nasadit starší balíčkovou verzi bacula-fd... proces celkově žral CPU po celou
dobu, ale zálohování bylo stejně pomalé. Asi ještě zkusím někde vystavit testovací stroj s velkými daty, který nebude
dělat nic jiného (bacula se nebude prát s apachem a dalšími o soubory) a ještě vyzkouším rozdíl, mezi zálohováním pár
velkých souborů a hromady malých.

-- 
Jan Krajdl


On Mon, Feb 14, 2011 at 11:42:33AM +0100, Martin Duda wrote:
> Zdravim,
> 
> mozna to nebude uplne ono, ale ja zalohuji cca 15 serveru jednou
> instanci baculy a mel jsem opravdu vyrazne vykonostni problemy dokud
> jsem nepreklopil ukladani metadat do relacni databaze - v mem pripade
> PostgreSQL. Zalohuji radove TB, ale vykonostni problem se mi objevil
> uz pri radove stovkach GB. Dalsi rady psali kolegove - upgrade,
> kontrola DNS, chybujici switche apod.
> 
> Duda
> 
> Jan Krajdl napsal(a):
> >Ahoj,
> >v práci nasazujeme na zálohování baculu a dostal jsem se do takového problému. Dosud se zálohovaly jen stroje, kde moc
> >dat nebylo a vše bylo v pořádku. V pátek jsem přidal další dva, kde už dat je poněkud více (řádově cca 200GB na
> >stroj). A při zálohování jsem narazil na problém - pustím ručně job v consoli a záloha se spustí. Prvních několik sekund
> >jede vše jak má - data na SD přibývají poměrně rychle, na klientovi je vidět, že proces bacula-fd pracuje. Avšak po
> >chvíli se to rázně zpomalí - bacula-fd se začne flákat (avg 2% CPU) a data tečou strašně pomalu. Občas se stane, že se
> >to zase na chvíli rozjede, ale moc dlouho to netrvá. Záloha takhle pak trvá skoro několik dní.
> >
> >Co jsem našel na googlu, tak jediná rada bylo používání spoolu. To jsem zkusil, ale výsledek byl stejný.
> >
> >Co se týče konfigurace, tak directoru a sd mám spolu na jednom stroji. Úložiště pro zálohování je připojeno přes
> >iSCSI. Stroj s directorem je debian squeeze, balíčky z repozitáře. Ze zálohovaných strojů je jeden squeeze a druhý lenny
> >s baculou z backportů. Při zálohování byla zaplá komprese a TLS šifrování - při zkoušení jsem postupně obojí vypnul, ale
> >též se nic nezměnilo (krom toho, že s kompresí se do sd přenese před zpomalením řádově desítky MB, bez komprese pár
> >stovek). Konfigurace kliena v directoru:
> >Client {
> >  Name = posta
> >  Address = posta
> >  FDPort = 9102
> >  Catalog = BaculakCat
> >  Password = "heslo"
> >  File Retention = 1 month
> >  Job Retention = 1 month
> >  AutoPrune = yes
> >#  TLS Enable = yes
> >#  TLS Require = yes
> >#  TLS CA Certificate File = "/etc/bacula/ca.pem"
> >#  TLS Certificate = "/etc/bacula/baculak.pem"
> >#  TLS Key = "/etc/bacula/baculak.key"
> >}
> >Pool {
> >  Name = PostaFullPool
> >  Pool Type = Backup
> >  Recycle = yes
> >  AutoPrune = yes
> >  Label Format = "posta-"
> >  Recycle Current Volume = yes
> >  Recycle Oldest Volume = yes
> >  Volume Retention = 30 days
> >  Volume Use Duration = 1 days
> >} Pool {
> >  Name = PostaIncPool
> >  Pool Type = Backup
> >  Recycle = yes
> >  AutoPrune = yes
> >  Label Format = "posta-"
> >  Recycle Current Volume = yes
> >  Recycle Oldest Volume = yes
> >  Volume Retention = 7 days
> >  Volume Use Duration = 1 days
> >} FileSet {
> >  Name = "Posta Files"
> >  Include {
> >    Options {
> >      signature = MD5
> >#      Compression = GZIP
> >    }
> >    File = /home/exim
> >    File = /var/backups
> >  } } Job {
> >  Name = "PostaFiles"
> >  Pool = PostaFullPool
> >  Incremental Backup Pool = PostaIncPool
> >  Client = "posta"
> >  Type = "Backup"
> >  Level = "Incremental"
> >  FileSet = "Posta Files"
> >  Schedule = "DailyInc"
> >  Storage = BaculakStorage2Servers
> >  Messages = Standard
> >#  Spool Attributes = yes
> >#  Spool Data = yes
> >}
> >
> >A konfigurace FD na klientovi:
> >Director {
> >  Name = baculak-dir
> >  Password = "heslo"
> >  TLS Enable = no
> >#  TLS Require = yes
> >#  TLS Verify Peer = yes
> >#  TLS Allowed CN = "baculak"
> >#  TLS CA Certificate File = "/etc/bacula/ca.pem"
> >#  TLS Certificate = "/etc/bacula/posta.pem"
> >#  TLS Key = "/etc/bacula/posta.key"
> >}
> >
> >FileDaemon {                          # this is me
> >  Name = posta-fd
> >  FDport = 9102                  # where we listen for the director
> >  WorkingDirectory = /var/lib/bacula
> >  Pid Directory = /var/run/bacula
> >  Maximum Concurrent Jobs = 20
> >  FDAddress = ip
> >#  TLS Enable = no
> >#  TLS Require = yes
> >#  TLS CA Certificate File = "/etc/bacula/ca.pem"
> >#  TLS Certificate = "/etc/bacula/posta.pem"
> >#  TLS Key = "/etc/bacula/posta.key"
> >}
> >
> >Messages {
> >  Name = Standard
> >  director = baculak-dir = all, !skipped, !restored
> >}
> >
> >Výkonnově by nic nikde bránit nemělo - síť je propustná dost, QoS na ní není, CPU na stroji s directorem je OK, I/O v
> >pořádku na obou strojích. Nesetkal se někdo s tím, případně neví, co by mohlo zálohování takhle drasticky zpomalit?
> >
> >Díky,


Další informace o konferenci Linux