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