PowerShell script exchange
Post Reply
maverick964_uk
Expert
Posts: 102
Liked: 3 times
Joined: May 09, 2013 8:57 am
Full Name: Mike Lavery
Contact:

Add-VBRBackupJob....what can it do??

Post by maverick964_uk » Jun 03, 2013 2:32 pm

ok, I need to create 20 backup jobs all the same but different names. ie. backup-day-1 to day-20

In the backup I want to specify the following:
1. Specify a particular datastore
2. specify a certain proxy
3. Full backup 7 days a week
4. synthetic full off
5. compression off
6. post activity job "c:\script.bat <arg1> <arg2> <arg3>"

Can all this be done via powershell and add-vbrbackupjob / set-vbrjoboptions ???

I cant copy jobs as I dont have the enterprise version....

So, can powershell help me as I have alot of backup jobs to create....

thanks

maverick964_uk
Expert
Posts: 102
Liked: 3 times
Joined: May 09, 2013 8:57 am
Full Name: Mike Lavery
Contact:

Re: Add-VBRBackupJob....what can it do??

Post by maverick964_uk » Jun 04, 2013 3:01 pm

is this possible??

foggy
Veeam Software
Posts: 18453
Liked: 1589 times
Joined: Jul 11, 2011 10:22 am
Full Name: Alexander Fogelson
Contact:

Re: Add-VBRBackupJob....what can it do??

Post by foggy » Jun 04, 2013 4:13 pm

Mike, our main PowerShell guru (Vladimir) is currently on vacation, please be patient, I'm sure he will be able to assist you when he is back next week. Thanks.

tsightler
VP, Product Management
Posts: 5472
Liked: 2288 times
Joined: Jun 05, 2009 12:57 pm
Full Name: Tom Sightler
Contact:

Re: Add-VBRBackupJob....what can it do??

Post by tsightler » Jun 04, 2013 9:19 pm

Yes, all of this can be done and there are already examples of similar scripts right here on the forum in the Getting Started section. See specifically Code Examples and "How to start" *beta* - Creating/Editing Jobs.

maverick964_uk
Expert
Posts: 102
Liked: 3 times
Joined: May 09, 2013 8:57 am
Full Name: Mike Lavery
Contact:

Re: Add-VBRBackupJob....what can it do??

Post by maverick964_uk » Jun 06, 2013 1:28 pm

many thanks. I look forward to Vladimir's reply....

I will look at your link Tom, thanks!

veremin
Product Manager
Posts: 17063
Liked: 1474 times
Joined: Oct 26, 2012 3:28 pm
Full Name: Vladimir Eremin
Contact:

Re: Add-VBRBackupJob....what can it do??

Post by veremin » Jun 11, 2013 11:29 am 1 person likes this post

Hi, Mike.

1. Please be aware that backup repository can be only specified during the job creation. Once specified it can’t be later changed via Powershell.

How to get a repository:

Code: Select all

Get-VBRBackupRepository -name "Name of your Repository" 
How to set a given repository during job creation:

Code: Select all

$MyRepository = Get-VBRBackupRepository -name "Name of your Repository" 
Add-VBRViBackupJob -Name $JobName -BackupRepository $MyRepository -Entity $ObjectsToBackup
2. How to disable proxy auto detection and specify the required one:

Code: Select all

asnp VeeamPSSnapin

#First part of the script is responsible for disabling SourceProxyAutoDetection

$Job = Get-VBRJob | ?{$_.Name –eq “Name of your Job”}
$vo= $job.GetOptions()
$vo.JobOptions.SourceProxyAutoDetect = $False
$job.SetOptions($vo)

#After having done that, our goal is to exclude from our job all proxies except for one. 
#Thus, second part of the script is checking proxies which names don't coincide with the name of the proxy we're going to leave.
#The result of that process is being saved in $Proxies list.
#In the end, within the cycle, we delete all of such proxies, meanwhile create the only one ($ProxytoAdd).
#Little note: $ProxyType = 0 means SourceProxy, 1 - TargetProxy. 

$ProxyType = 0
$ProxyToAdd = Get-VBRViProxy| ?{$_.Name –eq "Name of proxy you're going to leave"}
$Proxies= Get-VbrViProxy | ?{$_.Name –ne $ProxyToAdd}

foreach($ProxytoDelete in $Proxies)
{
foreach($ProxyInfo in ([Veeam.Backup.DBManager.CDBManager]::Instance.JobProxies.GetJobProxies($Job.id, $ProxyType)))
{
if($ProxyInfo.ProxyId -eq $ProxyToDelete.id)
{
[Veeam.Backup.DBManager.CDBManager]::Instance.JobProxies.Delete($ProxyInfo.id)
}
}
}
[Veeam.Backup.Core.CJobProxy]::Create($Job.id, $ProxyToAdd.id, $ProxyType)
3. How to set full backup 7 days a week:

Code: Select all

$Job = Get-VBRJob -name "Name of your backup Job"
$Options = $Job.GetOptions()
$Options.BackupStorageOptions.EnableFullBackup = $True
$Options.BackupTargetOptions.FullBackupDays = "Monday", "Tuesday" , "Wednesday" , "Thursday" , "Friday" , "Saturday" , "Sunday" 
$Job.SetOptions($Options) 
4. How to disable synthetic full backup:

Code: Select all

asnp VeeamPSSnapin
$Job = Get-VBRJob -name "Name of your backup Job"
$Options = $Job.GetOptions()
$Options.BackupTargetOptions.TransformFullToSyntethic = $False
$Job.SetOptions($Options) 
5. How to disable compression:

Code: Select all

asnp VeeamPSSnapin
$Job = Get-VBRJob -name "Name of your backup Job"
$Options = $Job.GetOptions()
$Options.BackupStorageOptions.CompressionLevel = "0"
$Job.SetOptions($Options) 
6. How to set post job activity:

Code: Select all

asnp VeeamPSSnapin
$Job = Get-VBRJob | ?{$_.Name –eq “Name of your Job”}
$jo = $job.GetOptions()
$jo.PostJobCommand.Enabled = $True
$jo.PostJobCommand.Commandline = "c:\script.bat"
$job.SetOptions($jo)
Hope this helps.
Thanks.

maverick964_uk
Expert
Posts: 102
Liked: 3 times
Joined: May 09, 2013 8:57 am
Full Name: Mike Lavery
Contact:

Re: Add-VBRBackupJob....what can it do??

Post by maverick964_uk » Jun 13, 2013 11:39 am

thanks for all the great information Vladimir

veremin
Product Manager
Posts: 17063
Liked: 1474 times
Joined: Oct 26, 2012 3:28 pm
Full Name: Vladimir Eremin
Contact:

Re: Add-VBRBackupJob....what can it do??

Post by veremin » Jun 13, 2013 11:43 am 1 person likes this post

You’re welcome. Feel free to contact me, should any other questions regarding our product arise. Thanks.

Post Reply

Who is online

Users browsing this forum: No registered users and 2 guests