Subject: Re: [Bacula-users] About retention, and pruning.



2011/4/28 Hugo Letemplier <hugo.let.35@xxxxxxxxx>:
> Hi,
>
> I am adding this to precise question and "reopen" the topic.
> I read many time the chapter of the documentation but I was never sure
> of what I understood.
>
> As you know when you do an inc you need a " sequence of job " : at
> least a full + maybe 1 diff + maybe many incs
> That would be nice to have some security option that make sure that a
> full a diff or a previous inc wont be purged although  there is still
> a valid job that is dependent of theses ones.
> For the moment i have set 3 pools for a "kind of data" ( ex: mail data )
> For the full I configured on 0 (unlimited)
> For the diff 2 week
> For the incs 1 week
>
> one problem is that the last inc of a sequence will be kept whereas
> the first inc of the same sequence is purged.
>
> when I do a diff that should be like that :
>
> diff  : ==================>
> inc  :   =======>>>
> inc  :     =======>>
> inc  :       =======>
>
> and not like that :
> diff  : ==================>
> inc  :   =======>
> inc  :     =======>
> inc  :       =======>
>
> Can you tell me if bacula, when it's going to purge a job check if
> another job depends of the one that it's going to purge ?
>
> 2011/3/24 Hugo Letemplier <hugo.let.35@xxxxxxxxx>:
>> Hi,
>>
>> Hi,
>> I work for an enterprise that need a good backup software and I chosen
>> Bacula;
>> I am now trying to configure it but I have a doubt.
>> I am setting up a disk based backup server with manual LTO tapes archiving.
>> I have 4 "Class" of data to backup :
>> -My mail server
>> -My infrastructure (DNS, Directory…)
>> -My file server
>> -My information services
>>
>> I created 3 pools per class (Full - Diff - Inc ) plus one more for
>> Archive with an infinite retention.
>>
>> My question, for the moment is about my file server that represent the
>> biggest amount of data to backup and the higher backup frequency w/
>> the datas of the intra/extranet software
>>
>> My difficulties are in setting retention periods for my pools. I read
>> a bacula-dir.conf example and I saw that it keeps the full for one 1
>> year.
>> I am about to keep my full for 28 weeks my diff for 4 weeks my inc for 10
>> days
>> I will do 1 inc per day 2 diff per months and 3 full per year
>> How can I be sure that it will work ? If I do my last inc does it will
>> update retention time on the previous incs so the restore would be
>> possible 1 week after the last inc.
>> as an example:
>> - 1st inc (1 week retention)
>> - 2nd inc (1 w)
>> - 3rd inc (1 w)
>> .....
>> - 8th inc (1 w)
>>
>> I have the same kind of question with many jobs of different level.
>> Does a higher level job inherits the lower job retention ? Indeed, an
>> inc need the full and eventually a diff to be fully restored.
>> Does bacula come with a mechanism
>> that avoid an inc or a diff to be there without the full (or the diff,
>> and previous incs) that it used as a base ?
>>
>> My second question is more bound to my file server. How can I
>> "estimate" and configure safely job retention because I have no idea
>> on how my datas will grow job after job ? Is there a good method ?
>>
>> I am using bacula 5.0.3 on CentOS 5.5
>>
>> I hope you understood my English and you will have a time to answer my
>> questions.
>>
>> Thank you very much in advance.
>>
>> Hugo
>>
>

I have made some tests:
Here is my pool configuration
Job {
Name = "Test:retention"
Schedule = "Test:retention"
Type = Backup
Pool = default
Full Backup Pool = TestRetention-full
Incremental Backup Pool = TestRetention-incs
Client = bacula-fd
Priority = 10
Fileset = Test:retention
Spool Data = no
Spool Attributes = yes
Messages = Standard
}
Schedule {
Name = "Test:retention"
Run = Full hourly at 00:40
Run = Incremental hourly at 00:50
Run = Incremental hourly at 00:00
Run = Incremental hourly at 00:10
Run = Incremental hourly at 00:20
Run = Incremental hourly at 00:30
}
Pool {
Name = TestRetention-full
Storage = "Local"
Pool Type = Backup
Recycle = yes
AutoPrune = yes
Maximum Volume Bytes = 5G
Maximum Volumes = 100
Volume Retention = 1 hour
File retention = 1 hour
Job retention = 1 hour
Use volume once = yes
}

Pool {
Name = TestRetention-incs
Storage = "Local"
Pool Type = Backup
Recycle = yes
AutoPrune = yes
Use volume once = yes
Maximum Volume Bytes = 5G
Maximum Volumes = 100
Volume Retention = 20 minutes
Label Format = "TestRetention-"
File retention = 20 minutes
Job retention = 20 minutes
Use volume once = yes
}

After the job ran many times: I have the following volume <=> job matching
Vol name Level Time
Test1 Full 15:50
324 Inc 16:00
325 Inc 16:10
326 Inc 16:20
324 Inc 16:30
Test2 Full 16:40
325 Inc 16:50
326 Inc 17:00

This is problematic because Vol324 is recycled instead of creating a new one
I am not sure to understand the various retention periods : File, job, volume
I think that I can increase the retention times but the problem will
always be the same.
ex : if I keep my incremental one hour then my first ones will always
be purged first
In a good strategy you purge the full sequence of incremental at the
same time because you need to recycle you volume and don't want to
keep a recent volume (incremental) without the previous ones.

To do that I imagine that I need to create one pool per day and reduce
progressively the retention periods. It doesn't makes sense !
I turned the problem on all its sides but I cant find a good
solution. Maybe the other retention period are the solution but I
didn't succeeded ?
Thanks in advance

Hugo

------------------------------------------------------------------------------
WhatsUp Gold - Download Free Network Management Software
The most intuitive, comprehensive, and cost-effective network
management toolset available today. Delivers lowest initial
acquisition cost and overall TCO of any competing solution.
http://p.sf.net/sfu/whatsupgold-sd
_______________________________________________
Bacula-users mailing list
Bacula-users@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/bacula-users



Privacy