Question

Export and Import backup job


Userlevel 1

Greetings,

 

I have been searching for a bit now and have not come across an answer to this.  I was wondering if there was a way to export the actual backup job settings and import into another server that already has existing backups.

I have multiple Veeam servers I would like to consolidate into one server. 

I have moved the backup files and rescanned the storage, that part all looks good. 

What I am unable to figure out is a way to just get the backup jobs onto the new server, and repoint to the storage I have moved the files to.

Is there a way to do this without recreating all the jobs?


19 comments

Userlevel 6
Badge +1

I haven’t done this, but I believe you can do it by using the PowerShell on the VBR server.  Play around with the commands….I suspect that the Get-VBRJob will allow you to select specific jobs and then export them as well.

 

Get-VBRJob | Export-VBRJob

https://forums.veeam.com/powershell-f26/export-job-configuration-t5849.html

 

Userlevel 7
Badge +6

The only way to move jobs is by doing a configuration backup and restore but that overwrites the database.  So unfortunately only way is to recreate the jobs.

Userlevel 7
Badge +6

Unfortunately there’s no built-in way of doing that with Veeam.

You could try to export all jobs with there settings and import them to your central server via Powershell.

EDIT: There seems to be a script in the VeeamHub for 9.5: https://github.com/VeeamHub/powershell/tree/master/BR-VeeamPorter-ImportExportJobsAcrossServers

Userlevel 7
Badge +4

Hi @shawnl 

There is no single job export feature today in the product.

You could try to leverage veeam powershell commands to get all job settings from a specific job and then create a new job on the other server with the old settings.

Userlevel 7
Badge +6

I haven’t done this, but I believe you can do it by using the PowerShell on the VBR server.  Play around with the commands….I suspect that the Get-VBRJob will allow you to select specific jobs and then export them as well.

 

Get-VBRJob | Export-VBRJob

https://forums.veeam.com/powershell-f26/export-job-configuration-t5849.html

 

Ah yes keep forgetting PowerShell. 😜

Userlevel 7
Badge +5

I haven’t done this, but I believe you can do it by using the PowerShell on the VBR server.  Play around with the commands….I suspect that the Get-VBRJob will allow you to select specific jobs and then export them as well.

 

Get-VBRJob | Export-VBRJob

https://forums.veeam.com/powershell-f26/export-job-configuration-t5849.html

 

Nice powershell, but if this don’t work I think the fastest way is via configuration backup.

Userlevel 6
Badge +1

I haven’t done this, but I believe you can do it by using the PowerShell on the VBR server.  Play around with the commands….I suspect that the Get-VBRJob will allow you to select specific jobs and then export them as well.

 

Get-VBRJob | Export-VBRJob

https://forums.veeam.com/powershell-f26/export-job-configuration-t5849.html

 

 

Looks like Export-VBRJob may be deprecated.  That said…..

 

Did a bit of looking and you can certainly get a list of the jobs.  The PowerShell reference is here.  I was able to select a specific job by the name attribute.
https://helpcenter.veeam.com/docs/backup/powershell/jobs.html?ver=110

 

PS C:\Users\Administrator> Get-VBRJob -Name "Backup Production VMs"

Job Name                  Type            State      Last Result  Description
--------                  ----            -----      -----------  -----------
Backup Production VMs     VMware Backup   Stopped    Failed       Created by DOMAIN\Administrator at 7/18/2021 8:29 PM.

 

 

So I tried a few things…...your mileage may vary, no warranties implied.

 

Export the job to a text file:

Get-VBRJob -Name "Backup Production VMs" | fl | Out-File -FilePath C:\Users\Administrator\Desktop\VM.txt

 

Don’t yet have the import figured out....tried to do the below but it didn’t feed in the values like I had hoped for and created a blank job.  I’m sure there is a way to do it going down this path though.

$jobsettings = Get-Content C:\Users\Administrator\Desktop\VM.txt

$jobsettings | Add-VBRViBackupJob

 

Userlevel 7
Badge +6

Interesting script. This could be the solution for this question with some adaption of the script.

@marcofabbri, no, configuration backup is not an option, because there is already data on the target server.

Userlevel 6
Badge +1

I haven’t done this, but I believe you can do it by using the PowerShell on the VBR server.  Play around with the commands….I suspect that the Get-VBRJob will allow you to select specific jobs and then export them as well.

 

Get-VBRJob | Export-VBRJob

https://forums.veeam.com/powershell-f26/export-job-configuration-t5849.html

 

Nice powershell, but if this don’t work I think the fastest way is via configuration backup.

 

Pretty sure importing the config will overwrite the existing config, and it sounds like OP is wanting to merge jobs from multiple backups servers to a single server.  Am I wrong that it will overwrite the existing config by importing?  I’ve only performed config imports for recoveries and migrations/upgrades.

Userlevel 6
Badge +1

After a bit more research, you can do a Get-VBRJob as I listed above, and you can pipe the output into a new job using the Copy-VBRJob cmdlet, but I haven’t tried it from a text file.  With that said, the Copy-VBRJob cmdlet is only available on Enterprise Edition (job cloning) so the server I’m on isn’t enterprise so I didn’t test it there.  I did find that the Get-VBRJob can also get multiple jobs using the below, or leaving the name blank should grab all jobs.

 

Get-VBRJob -Name "DHCP Replica Job", "DHCP Backup Job" | Copy-VBRJob

 

The untested Copy-VBRJob command.  Again, not sure that it will accept the imported text file.

$jobsettings = Get-Content C:\Users\Administrator\Desktop\VM.txt

$jobsettings | Copy-VBRJob

 

Userlevel 7
Badge +6

Mhh, I don’t think this will work with the textfile.

There are some data structures not saved with this command. Piping to the Copy-VBRJob will probably work, because you have all the information. But in the textfile is a whole bunch of information missing…

For example...

AutoScheduleOptions          : Veeam.Backup.Model.CAutoScheduleOptions

And under this is a deeper structure… and so on.

PerformActiveFullBackup       : False

ActiveFullBackupKind          : Daily

ActiveFullBackupDays          : {Saturday}

ActiveFullBackupMonthlyOption : Veeam.Backup.Model.CDomFullBackupMonthlyScheduleOptions PerformTransformToSyntethic   : True

TransformToSyntethicDays      : {Saturday}

Userlevel 7
Badge +5

 

@marcofabbri, no, configuration backup is not an option, because there is already data on the target server.

You’re right, I wasn’t thinking. Thanks for correct me @JMeixner :)

Userlevel 7
Badge +6

 

@marcofabbri, no, configuration backup is not an option, because there is already data on the target server.

You’re right, I wasn’t thinking. Thanks for correct me @JMeixner :)

Yeah that is where I jumped first but stipulated data being there already on the other server as Config backup is the ideal solution to move jobs when starting blank. :smiley:

I think at this point PS is the best route.

Userlevel 6
Badge +1

Mhh, I don’t think this will work with the textfile.

There are some data structures not saved with this command. Piping to the Copy-VBRJob will probably work, because you have all the information. But in the textfile is a whole bunch of information missing…

For example...

AutoScheduleOptions          : Veeam.Backup.Model.CAutoScheduleOptions

And under this is a deeper structure… and so on.

PerformActiveFullBackup       : False ActiveFullBackupKind          : Daily ActiveFullBackupDays          : {Saturday} ActiveFullBackupMonthlyOption : Veeam.Backup.Model.CDomFullBackupMonthlyScheduleOptions PerformTransformToSyntethic   : True TransformToSyntethicDays      : {Saturday}

 

I tried exporting to a CSV but got some really weird results.  I’ve never tried it before, but wonder if it could be exported to XML.

Userlevel 7
Badge +5

Interesting script. This could be the solution for this question with some adaption of the script.

@marcofabbri, no, configuration backup is not an option, because there is already data on the target server.

Correct! This is scenario is relevant for migrating the configuration database to another SQL box.

Userlevel 7
Badge +6

 

I tried exporting to a CSV but got some really weird results.  I’ve never tried it before, but wonder if it could be exported to XML.

I think you have to write some code to save the whole data structure. I am afraid this is not done with a single redirect.

But I haven't tried it up to now.

Userlevel 4
Badge

Hello everyone, author of the original “VeeamPorter” script here. Sadly I haven’t updated it (yet) for v10 / v11, so some specific settings (e.g. “High priority” flags) will not be carried across. Apart from that, I haven’t done much testing, but I expect the script to work OK-ish :)

 

That said, the VB&R REST API has a built-in export/import feature for jobs: Veeam Backup & Replication REST API Reference. Albeit probably requiring a bit more work, that would be a fully supported way of doing this.

Userlevel 7
Badge +7

Mhh, I don’t think this will work with the textfile.

There are some data structures not saved with this command. Piping to the Copy-VBRJob will probably work, because you have all the information. But in the textfile is a whole bunch of information missing…

For example...

AutoScheduleOptions          : Veeam.Backup.Model.CAutoScheduleOptions

And under this is a deeper structure… and so on.

PerformActiveFullBackup       : False ActiveFullBackupKind          : Daily ActiveFullBackupDays          : {Saturday} ActiveFullBackupMonthlyOption : Veeam.Backup.Model.CDomFullBackupMonthlyScheduleOptions PerformTransformToSyntethic   : True TransformToSyntethicDays      : {Saturday}

 

I tried exporting to a CSV but got some really weird results.  I’ve never tried it before, but wonder if it could be exported to XML.

You could try to export to XML using export-clixml https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/export-clixml?view=powershell-7.2. This should keep PS objects.


But as @DChiavari said, REST API seems to be the way to go.

Userlevel 6
Badge +2

The only way to move jobs is by doing a configuration backup and restore but that overwrites the database.  So unfortunately only way is to recreate the jobs.

That's right, 
I had this issue before, and I used the re-build to think and improve my tasks, 
grouping some machines, separating others, etc.

good luck!

Comment