Comprehensive data protection for all workloads
Post Reply
Isaksson
Influencer
Posts: 15
Liked: 1 time
Joined: Jan 29, 2014 9:24 am
Full Name: Kristoffer Isaksson
Contact:

Synthetic Full schedule

Post by Isaksson »

Hello.

I currently have 6 backupjobs to disk (incremental) one of the job is scheduled to run 00:00 monday - saturday (no backup on sunday) and the other jobs is scheduled to run after this jobb,
job 1 00:00
job 2 after job 1
job 3 after job 2
job 4 after job 3
job 5 after job 4
job 6 after job 5
Tape job after job 6

The tape jobb is only processing full backup.
I also have scheduled a synthetic full on saturdays for all of my jobs.

And here is my problem, Yesterday (Saturday) the job started with synthetic full one by one but it takes several hours, some job could take about 8 hours to make the synthetic full so job 5 ended 03:28 (Sunday) and now when job 6 started he did not make a Synthetic full and my guess is becourse that backup started on sunday instead of saturday.

I think that Veeam should handle this in a better way, becourse all the backup jobs is scheduled in a sequence then it should be the start time of the first job that veeam should use.

Is my guess correct about the new day for backup job 6 or is there something else that can cause this?
foggy
Veeam Software
Posts: 21070
Liked: 2115 times
Joined: Jul 11, 2011 10:22 am
Full Name: Alexander Fogelson
Contact:

Re: Synthetic Full schedule

Post by foggy »

Your guess is correct. Chained jobs are started on the next day (not the one synthetic full is scheduled to be performed at), due to the time required to run earlier jobs. This is typical for chaining jobs so if you want to limit the load on the infrastructure, you'd better limit tasks concurrency on the proxy (or the repository) and let all the jobs start together.
Isaksson
Influencer
Posts: 15
Liked: 1 time
Joined: Jan 29, 2014 9:24 am
Full Name: Kristoffer Isaksson
Contact:

Re: Synthetic Full schedule

Post by Isaksson »

Thanks for the reply. There will not be any changes to that behavior?

Well the reason that i have Chained jobs is that i need to know that all jobs is finished before i start the Tape job.
Maybe there is some other solution to that?
I want all jobs so create a Synthetic full and then the Tape job to duplicate it out to tape.
Vitaliy S.
VP, Product Management
Posts: 27116
Liked: 2720 times
Joined: Mar 30, 2009 9:13 am
Full Name: Vitaliy Safarov
Contact:

Re: Synthetic Full schedule

Post by Vitaliy S. »

Hi Kristoffer,
Isaksson wrote:Thanks for the reply. There will not be any changes to that behavior?
Not sure what change should be made here, as schedule is per job and it would be not very clear why chained jobs use the start time of the first job.
Isaksson wrote:Well the reason that i have Chained jobs is that i need to know that all jobs is finished before i start the Tape job.
Maybe there is some other solution to that?
Why not to start all jobs in parallel? or at least half of them if there is not enough IOPs power on the target storage?

On top of that, you may want to use PowerShell script to check jobs status and then trigger a backup to tape job. There are some script examples on our PS community forums on how to do that, check them out.

Thanks!
Isaksson
Influencer
Posts: 15
Liked: 1 time
Joined: Jan 29, 2014 9:24 am
Full Name: Kristoffer Isaksson
Contact:

Re: Synthetic Full schedule

Post by Isaksson »

Vitaliy S. wrote: Not sure what change should be made here, as schedule is per job and it would be not very clear why chained jobs use the start time of the first job.
I guess you are right, but it would make things much easier if that was an option. Because when you run the jobs in chain then you have no control when things happen and the only ting you can control is the first job in the chain, so i was hopping that all the jobs did get the same start time as the first in chain but it was put on hold until it was its turn in the chain to start.

But now i know how it works and i have to do something to get around that problem, and maybe a powershell "Hack" is the right ting to do here.
I am still new to this software so i have much to learn about it, and it seems like this forum is a great place to hang around 8)

I guess i am not the only one that have this issue with Synthetic Full and the need to duplicate it out to Tape. So maybe someone will post a "working" solution how you handle this.
foggy
Veeam Software
Posts: 21070
Liked: 2115 times
Joined: Jul 11, 2011 10:22 am
Full Name: Alexander Fogelson
Contact:

Re: Synthetic Full schedule

Post by foggy »

Isaksson wrote:Because when you run the jobs in chain then you have no control when things happen and the only ting you can control is the first job in the chain
This is exactly why jobs chaining is not among our best practices. There are also other undesired consequences of this approach.
Isaksson wrote:so i was hopping that all the jobs did get the same start time as the first in chain but it was put on hold until it was its turn in the chain to start.
And this is how it is going when you start all jobs simultaneously (or with short intervals) and limit the number of concurrent tasks assigned to proxy/repository server - all jobs get their start times and are put in the queue to wait for available resources.
Isaksson wrote:I am still new to this software so i have much to learn about it, and it seems like this forum is a great place to hang around 8)
It is, for sure. ;)
veremin
Product Manager
Posts: 20284
Liked: 2258 times
Joined: Oct 26, 2012 3:28 pm
Full Name: Vladimir Eremin
Contact:

Re: Synthetic Full schedule

Post by veremin »

As to the scripting, you can start job simultaneously and schedule a script as a post job activity. You can modify the script, so that it will check the status of all backup jobs, and start the tape job, only if the all backup jobs are finished.

If you need any assistance with scripting, feel free to create a topic at corresponding subforum.

Thanks.
Isaksson
Influencer
Posts: 15
Liked: 1 time
Joined: Jan 29, 2014 9:24 am
Full Name: Kristoffer Isaksson
Contact:

Re: Synthetic Full schedule

Post by Isaksson »

Thanks both for you good answers.

The reason for me to do a chain with my jobs is that i need the Tape job to start after the other jobs are finished.

But i think my new approach will be to start all jobs at the same time and then i will handle the tape job from PowerShell instead, let a script check when the backup is finished and also that all job have a Synthetic Full.

Thanks for pointing me in the right direction.
veremin
Product Manager
Posts: 20284
Liked: 2258 times
Joined: Oct 26, 2012 3:28 pm
Full Name: Vladimir Eremin
Contact:

Re: Synthetic Full schedule

Post by veremin »

The latest job state can be checked via GetLastState() method:

Code: Select all

$Job.GetLastState() -eq "Stopped"

Thanks.
Post Reply

Who is online

Users browsing this forum: Bing [Bot], Semrush [Bot] and 128 guests