In 2017 I was allowed not one but two slots at for vBrownBag at VMworld 2017 which was a big deal to me. The first of these was a solo presentation by me about how to be an active member of the vCommunity while living in a rural area without easy access to things like VMUGs and such.
Browsing Category
I was honored to be selected to present at VeeamON again in 2015 with the same general concept of session but really highlighting some of the work I’d been doing with Windows Server deduplication and Veeam SureBackup. This was a much nice crowd, with 50 or so people, and I felt it went much better. Again there is no video this time around but as an aside watching the replay at the time this is when I first realized just how much of an accent I have, literally had never realized it before.
So this was immediately following the vBrownBag session. Again, now second shot at “public speaking” but this time I’m in a room for 200, in the hangover slot at a tech conference (8 am the morning after the party), there were a total of 3 people in the session. Probably not the worst thing but one thing I’ve found over the years is that crowds are good, they loosen you up. Just goes to show that we definitely all start somewhere.
Unfortunately I don’t have the video of these early session so you are just going to have to trust me that it was rough.
Slidedeck: https://www.slideshare.net/JimJones147/veeamon-2014-vbrownbag-physical-server-backup-strategies
This was actually my first public speaking presentation ever. Supposed to be a 15 minute time slot I believe I finished in under 8 minutes. What aided to my discomfort was that the whole purpose of this was to show a method I was using to backup physical servers in a Veeam world, something there was no answer to at the time. That morning it leaked that Veeam was announcing what is now known as Veeam Agent for Windows and my friend Rick Vanover was following me on the same stage to announce it. Talk about your topic becoming irrelevant in record time…

In this post we are going to continue on our journey of building your own, full featured, Veeam Backup and Replication v10 environment. As a reminder of how this series is going here’s the list:
- Episode 1: Intro and Common components
- Episode 2: On-Prem Windows Components (VBR, Windows Proxy, Windows Repo)
- Episode 3: On-Prem Linux Components (Proxy, Repo), Create Local Jobs
- Episode 4: Build Service Provider pod
- Episode 5: Create cloud jobs to both Service Provider and Copy Mode to S3
- Episode 6: Veeam Availability Console
- Episode 7: Veeam Backup for Office 365
In this installment we are going to focus on building out the Microsoft Windows side of your customer environment, the one that is deployed on-premises to the customer data. We will begin by deploying a Veeam Backup and Replication server followed by setting up a Window Proxy server and a Repository based on ReFS.

I was recently honored to be a guest on Vince Wood‘s IT Reality Podcast for episodes 7 and 8. In the episodes a couple of the things that came up is that while for small environments Veeam will work right out of the box for most end customers of the software there is a requirement to scale the components out correctly. One of the advantages to Veeam Backup and Replication is that it is hardware and operating system agnostic for many of its components but with choice comes complexity.
One of the other things that came up was the fact that for most Veeam Cloud Connect customers, myself included up to 5 months ago when I began working for a Service Provider, the way that side is setup is a mystery. While I won’t exactly be giving up the special sauce here I was struck with the thought that a series of posts that show you how correctly set up a Veeam Backup and Replication v10 environment both on premises and for the Cloud Connect environment would be pretty educational. Each of these will have video walk throughs of the actual installations so you can follow along as well if you like.
I total we’ll be covering the following topics:
- Episode 1: Intro and Common components
- Episode 2: On-Prem Windows Components (VBR, Windows Proxy, Windows Repo)
- Episode 3: On-Prem Linux Components (Proxy, Repo), Create Local Jobs
- Episode 4: Build Service Provider pod
- Episode 5: Create cloud jobs to both Service Provider and Copy Mode to S3
- Episode 6: Veeam Availability Console
- Episode 7: Veeam Backup for Office 365
In this episode we are mostly talking setting up your external SQL server for Veeam use. While the Veeam Backup and Replication installer includes MS SQL Server Express 2016 as part of the simple mode installation, but according to Veeam best practices you wouldn’t want to use this if you are backing up more than 500 instances, extensively using tape or want to leverage a common SQL products for other parts of the Veeam environment including Enterprise Manager or VeeamONE.
- Intro to Lab Environment Design
- Blog Post Steps to Come
- Mount SQL Server 2016 ISO
- Run Setup.exe
- Allow for Updates check before installing
- Rules Check and open up Windows Firewall for communication, either by disabling entirely or at least creating a port based rule for TCP 1433
- In Feature Selections choose Database Engine Services only unless you or your SQL administrator have other needs
- Either name your SQL Instance or leave it with the default MSSQLSERVER
- Based on need or security practices enable or leave disabled the SQL Server Agent and SQL Server Browser services
- In Database Engine Configuration
- Set your authentication mode. I prefer to leave it Windows only but there are valid use cases to choose Mixed mode and create SQL only credentials
- Add SQL server administrator accounts. Domain Admins for small environments but also want to add the service account you plan to run Veeam services under
- Set your Data Directories. For the lab I will leave default but in production you should create 3 additional volumes for your SQL Server, 1 each for databases, logs and backups
- Hit Install
Once completed you will be ready to proceed to installing your Veeam server itself. One thing that is ommitted from the video but probably a good idea is to go ahead and install MS SQL Server Management Studio. It’s a separate download, but often when you need to call Veeam support it is database related and SSMS is the way to manage the databases. You can directly download from Microsoft but if you happen to have Chocolatey available on the server installation is a choco install sql-server-management-studio -y away.
With that we’ll consider this step done and move on to installing the on-premises Windows components in the next post.

So one of the things that I always find interesting with each new Veeam Backup & Replication release is the additions to the PowerShell cmdlets list. PowerShell was first introduced to the VBR universe with version 7 and with each release we have got more and more commands to play with. It still hurts me to this day that they haven’t converted their Snap-In to a module yet but to quote my daughter’s teacher, you get what you get and you don’t throw a fit.
In the spirt of this curiosity I decided to do a little differential fun with 9.5 update 4 and the soon to be GA version 10 Snap-Ins. I’m not going to bore you with all the commands and stuff that led us to here but if you want to reproduce any of this consider my work shown:
asnp VeeamPSSnapin #On 9.5u4 Server Get-Command | where {$_.Source -eq "VeeamPSSnapin"} | select Name | Export-Csv -Path "desktop\95commands.csv" #On 10 Server Get-Command | where {$_.Source -eq "VeeamPSSnapin"} | select Name | export-csv -Path .\Desktop\10commands.csv" #load the 2 csv files as reference objects in the hash table $objects = @{ ReferenceObject = (Get-Content -Path '.\OneDrive\Desktop\95commands.csv') DifferenceObject = (Get-Content -Path '.\OneDrive\Desktop\10commands.csv') } #Compare the objects $new10commands = Compare-Object @objects #make a new variable to only give you the new items in v10, saving only the commands and export to file $new10 = $new10commands | where {$_.SideIndicator -eq '=>'} | select InputObject $new10 | Export-Csv -Path '.\OneDrive\Desktop\newcommandsonly.csv' #let's see how many there are! $new10 | Measure-Object #finally let's get a variable with the commands and their descriptions from get-help and export that $descriptions = foreach ($command in $new10) {get-help $command.InputObject | select name,description} $descriptions | fl > difference.txt
So with the hard work now out of the way we are left with the question, what’s new? Quite a lot actually as there are 736 commands in 9.5 update 4 and and 920 commands in v10, leaving us with a total of 186 new or changed commands. A look at these provides a good idea of where the focus is in this release, lots of “cloudy” things, NAS items and license management. With the releases and now updates to how Veeam Universal Licensing works automated management just makes sense. I am very happy to see all kinds of new commands related to the SureBackup features as the automation capabilities for this have always been sorely lacking. From the looks of things I can now create my virtual lab, create applications groups and sure backup jobs, actually edit them some using Set commands, and start and stop jobs at will. This is going to lead to a more robust capability to script out your environment and then turn it around into a virtual lab appliance, something needed for consistency.
All that being said my end in the script above was to give a list of each new command and it’s description. So without further comment here they are.
Add-VBRAzureComputeBackupCopyJob
This cmdlet creates Azure IaaS backup copy jobs of Azure VMs that are stored on a Microsoft Azure Blob Storage repository. Azure IaaS backup copy jobs will copy the backups from Microsoft Azure Blob Storage external repositories to target repositories.
The cmdlet creates jobs in a disabled state. Run Enable-VBRJob to enable jobs.
Add-VBRAzureDataBoxRepository
This cmdlet adds Azure Data Box storage as an object storage repository to the Veeam Backup & Replication infrastructure.
Add-VBRAzureExternalRepository
This cmdlet adds Microsoft Azure Blob storage as an external repository.
Add-VBRCatalystCopyJob
This cmdlet creates backup copy jobs for HPE StoreOnce repositories.
Add-VBRComputerBackupCopyJob
This cmdlet creates Veeam Agent backup copy jobs.
Add-VBRNASBackupJob
This cmdlet creates file backup jobs.
Add-VBRNASFileServer
This cmdlet adds managed Windows or Linux file servers to the Veeam Backup & Replication infrastructure.
Add-VBRNASNFSServer
This cmdlet adds NFS network shared folders to the Veeam Backup & Replication infrastructure.
Add-VBRNASProxyServer
This cmdlet adds file backup proxy servers to the Veeam Backup & Replication infrastructure.
Add-VBRNASSMBServer
This cmdlet adds SMB network shared folders to the Veeam Backup & Replication infrastructure.
Add-VBRPluginBackupCopyJob
This cmdlet creates plug-in backup copy jobs. To create plug-in backup copy jobs, you must specify at least one source that contains the data you want to add to the copy job. Plug-in backup copy jobs use either of the following sources:
· The existing plug-in backup job created to back up Oracle RMAN or SAP HANA. Run the Get-VBRPluginJob cmdlet to get the plug-in backup job.
· Backup files that are stored in the source repositories. Run the Get-VBRBackupRepository cmdlet to get the source repository.
NOTE:
The backup copy job is created in the disabled state. Run the Enable-VBRPluginJob cmdlet to run the job manually.
Add-VBRvCloudJobObject
This cmdlet adds VMs to vCD backup jobs.
Add-VBRViAdvancedVirtualLab
This cmdlet creates a VMware advanced virtual lab.
Add-VBRViApplicationGroup
This cmdlet creates application groups for SureBackup jobs.
Add-VBRViLinuxProxy
This cmdlet adds Linux backup proxy servers to the Veeam Backup & Replication backup infrastructure.
Add-VBRViSimpleVirtualLab
This cmdlet creates a VMware basic virtual lab.
Add-VBRViSureBackupJob
This cmdlet creates SureBackup jobs.
Apply-VBRManagedByAgentPolicy
This cmdlet assigns Veeam Agent backup policies to protected computers.
Assign-VBRInstanceWorkload
This cmdlet sets the product edition for standalone Veeam Agents to either of the following:
· Server edition
· Workstation edition
Clear-VBRManagedByAgentPolicyCache
This cmdlet removes backup cache from protected computers.
Connect-VBRAzureDataBoxService
This cmdlet connects to Azure Data Box storage.
Connect-VBRViVirtualLab
This cmdlet adds VMs created on VMware to Veeam Backup & Replication.
Copy-VBRComputerBackupJob
This cmdlet clones Veeam Agent backup jobs and Veeam Agent backup policies.
Disable-VBRCapacityExtentSealedMode
This cmdlet disables sealed mode for for extents of a scale-out backup repository.
Run the Enable-VBRRepositoryExtentSealedMode cmdlet to enable sealed mode for extents of a scale-out backup repository.
Disable-VBRCatalystCopyJob
This cmdlet disables backup copy jobs for HPE StoreOnce repositories.
Run the Enable-VBRCatalystCopyJob cmdlet to enable backup copy jobs for HPE StoreOnce repositories.
Disable-VBRComputerBackupJob
This cmdlet disables Veeam Agent backup jobs and Veeam Agent backup policies.
Run the Enable-VBRComputerBackupJob cmdlet to enable Veeam Agent backup jobs and Veeam Agent backup policies.
Disable-VBRFreeAgentInstanceConsumption
This cmdlet disables instance consumption by non-licensed Veeam Agents.
Run the Enable-VBRFreeAgentInstanceConsumption cmdlet to enable this option.
Disable-VBRLicenseAutoUpdate
This cmdlet disables the automatic license update option.
Run the Enable-VBRLicenseAutoUpdate cmdlet to enable the automatic license update option.
Disable-VBRPluginJob
This cmdlet stops plug-in backup jobs and plug-in backup copy jobs.
Run the Enable-VBRPluginJob cmdlet to start plug-in backup jobs and plug-in backup copy jobs.
Disable-VBRRepositoryExtentSealedMode
This cmdlet disables sealed mode for for extents of a scale-out backup repository.
Run the Enable-VBRRepositoryExtentSealedMode cmdlet to enable sealed mode for extents of a scale-out backup repository.
Disable-VBRSureBackupJob
This cmdlet disables running SureBackup jobs.
Run the Enable-VBRSureBackupJob cmdlet to enable SureBackup jobs.
Enable-VBRCapacityExtentSealedMode
This cmdlet enables sealed mode for object storage repositories.
Run the Disable-VBRCapacityExtentSealedMode cmdlet to disable the sealed mode for object storage that are added as extents to the scale-out backup repository.
Enable-VBRCatalystCopyJob
This cmdlet enables backup copy jobs for HPE StoreOnce repositories.
Run the Disable-VBRCatalystCopyJob cmdlet to disable backup copy jobs for HPE StoreOnce repositories
Enable-VBRComputerBackupJob
This cmdlet enables Veeam Agent backup jobs and Veeam Agent backup policies.
Run the Disable-VBRComputerBackupJob cmdlet to disable Veeam Agent backup jobs and Veeam Agent backup policies.
Enable-VBRFreeAgentInstanceConsumption
This cmdlet enables instance consumption by unlicensed Veeam Agents; this option allows Veeam Agents to create backups to Veeam Backup & Replication.
Run the Disable-VBRFreeAgentInstanceConsumption cmdlet to disable this option.
Enable-VBRLicenseAutoUpdate
This cmdlet enables the automatic license update option.
For more information on the automatic license update option, see the Updating License Automatically section of User Guide for VMware vSphere.
Enable-VBRPluginJob
This cmdlet starts plug-in backup jobs and plug-in backup copy jobs.
Run the Disable-VBRPluginJob cmdlet to stop plug-in backup jobs and plug-in backup copy jobs.
Enable-VBRRepositoryExtentSealedMode
This cmdlet enables sealed mode for extents of a scale-out backup repository.
Run the Disable-VBRRepositoryExtentSealedMode cmdlet to disable sealed mode for extents of a scale-out backup repository.
Enable-VBRSureBackupJob
This cmdlet disables running SureBackup jobs.
Run the Disable-VBRSureBackupJob cmdlet to disable SureBackup jobs.
Export-VBRAudit
This cmdlet exports report that contain information on actions performed by an administrator in Veeam Backup & Replication.
Export-VBRRestorePoint
Generate-VBRLicenseUsageReport
This cmdlet creates a report on license usage.
Get-VBRApplicationGroup
This cmdlet returns VMware and Hyper-V application groups.
Get-VBRAzureComputeBackup
This cmdlet returns an array of Azure backups.
Get-VBRAzureNetworkSecurityGroup
This cmdlet returns Microsoft Azure security groups.
Get-VBRCapacityLicenseSummary
This cmdlet returns details on capacity of licenses installed on a backup server.
Get-VBRCapacityTierSyncInterval
This cmdlet returns a time period that contains details on checkpoints in object storage.
IMPORTANT!
This cmdlet applies only for object storage that support the Immutability option.
Get-VBRCatalystCopyJob
This cmdlet returns backup copy jobs for HPE StoreOnce repositories.
Get-VBRComputerBackupCopyJob
This cmdlet returns Veeam Agent backup copy jobs.
Get-VBRComputerBackupJob
This cmdlet returns an array of Veeam Agent backup jobs and Veeam Agent backup policies.
Get-VBRComputerBackupJobSession
This cmdlet returns Veeam Agent job sessions. You can get sessions of Veeam Agent jobs that are managed by Veeam Backup & Replication and Veeam Agent backup policies.
Get-VBRComputerNetworkInfo
This cmdlet returns the VBRComputerNetworkInfo[] object that contains an array of networks connected to Veeam Agent computers. You can use this object to perform instant recovery of Veeam Agent computers.
Get-VBREC2Backup
This cmdlet returns an array of EC2 instance backups.
Get-VBRFreeAgentInstanceConsumptionStatus
This cmdlet returns a state of the instance consumption by non-licensed Veeam Agents.
· False – indicates that the instance consumption by non-licensed Veeam Agents option is disabled.
· True – indicates that the instance consumption by non-licensed Veeam Agents option is enabled.
Get-VBRHvServerConfiguration
This cmdlet returns the following settings of Microsoft Hyper-V hosts that are added to the backup infrastructure:
· EnableCBT: Specifies changed block tracking settings.
o If set to True, the changed block tracking option is enabled.
o If set to False, the changed block tracking option is disabled.
· EnableFailover: Specifies the failover option settings.
o If set to True, the failover option is enabled.
o If set to False, the failover option is disabled.
o Default: True.
· ServerId: Specifies the Microsoft Hyper-V hosts ID.
For more information on settings of Microsoft Hyper-V hosts that are added to the backup infrastructure, see the Specify Settings for Connected Volumes section in the User Guide for Microsoft
Hyper-V.
Get-VBRHvServerVolume
This cmdlet returns volume-specific settings for Microsoft Hyper-V hosts.
Get-VBRHvVssProvider
This cmdlet returns an array of VSS providers that are available on Microsoft Hyper-V hosts.
Get-VBRInstanceLicenseSummary
This cmdlet returns the VBRInstanceLicenseSummary object that contains details on the per-instance license usage. These details include the following information:
· LicensedInstancesNumber – specifies a total number of instances that are available in the license scope.
· UsedInstancesNumber – specifies the number of instances that have already been used.
· NewInstancesNumber – specifies the number of new instances.
· RentalInstancesNumber – specifies the number of instances that are available for the rental license.
Get-VBRLicenseAutoUpdateStatus
This cmdlet returns a state of the automatic license update option.
· False – indicates that the automatic license update option is disabled.
· True – indicates that the automatic license update option is enabled.
Get-VBRLicensedCapacityWorkload
Get-VBRLicensedInstanceWorkload
This cmdlet returns the VBRLicensedSocketWorkload object that contains details on protected workloads for the per-instance license that Veeam Backup & Replication applies to back up these
workloads.
Get-VBRLicensedSocketWorkload
This cmdlet returns the VBRLicensedSocketWorkload object that contains details on licensed hosts for the per-socket license that Veeam Backup & Replication applies to back up these hosts.
Get-VBRNASBackup
This cmdlet returns backup files created by the file backup job.
Get-VBRNASBackupFLRItem
This cmdlet returns an array of objects that contain settings of guest OS files and folders backed up by file backup jobs.
Get-VBRNASBackupFLRItemVersion
This cmdlet returns versions of objects backed-up by file backup jobs.
IMPORTANT!
This cmdlet runs only with file-level restore sessions that are created to restore all versions of backups on file shares.
Get-VBRNASBackupFLRSession
This cmdlet returns restore sessions started to recover backups created by file backup jobs.
Get-VBRNASBackupJob
This cmdlet returns file backup jobs.
Get-VBRNASBackupRestorePoint
This cmdlet returns restore points created by file backup jobs.
Get-VBRNASProxyServer
This cmdlet returns an array of file backup proxy servers added to the Veeam Backup & Replication infrastructure.
Get-VBRNASServer
This cmdlet return backup files created by the file backup job.
Get-VBRPluginJob
This cmdlet returns the VBRPluginBackupJob and VBRPluginBackupCopyJob objects that contains settings of the following types of jobs:
· A plug-in backup job that was created to back up Oracle RMAN or SAP HANA.
· A plug-in backup copy job.
Get-VBRPrivateFixes
Get-VBRPublishedBackupContentInfo
This cmdlet returns details on the mounted content of backup files.
Get-VBRPublishedBackupContentSession
This cmdlet returns an array of sessions that are running to mount the content of backup files to iSCSI target servers.
Get-VBRPublishedBackupDiskInfo
Get-VBRPublishedBackupDiskSession
Get-VBRSocketLicenseSummary
This cmdlet returns the VBRSocketLicenseSummary object that contains details on the per-socket license usage. These details include the following information:
· LicensedSocketsNumber – specifies a total number of CPU sockets on protected hosts.
· UsedSocketsNumber – specifies the number of CPU sockets that have already been used.
· RemainingSocketsNumber – specifies the number of CPU sockets that remain available.
· Workload – specifies the name of the licensed host.
Get-VBRSureBackupJob
This cmdlet returns SureBackup jobs.
Get-VBRTestQuickMigrationSession
Get-VBRVirtualLab
This cmdlet returns the VBRVirtualLab>[] object that contains an array of virtual labs and their main settings. You can use this object with the following cmdlets:
· Remove-VBRVirtualLab – to remove virtual labs from Veeam Backup & Replication infrastructure.
· Add-VBRViSureBackupJob – to create a SureBackup job.
· Set-VBRViSureBackupJob – to modify settings of a SureBackup job.
Get-VBRViVirtualDevice
This cmdlet returns details on virtual disks of VMs from backups.
Get-VBRViVirtualLabConfiguration
This cmdlet returns the VBRViVirtualLabConfiguration object that contains an array of virtual labs and all their settings. You can use this object to modify settings of virtual labs.
Run the Set-VBRViVirtualLab cmdlet to modify settings of virtual labs.
Install-VBRLicense
This cmdlet installs licenses on a backup server.
Mount-VBRObjectStorageRepository
This cmdlet mounts an object storage repository. You can use the mounted object storage to import backups from these object storage.
New-VBRAmazonEC2Tag
This cmdlet creates the VBRAmazonEC2Tag object that contains settings of AWS tags.
New-VBRBackupCacheOptions
This cmdlet creates the VBRBackupCacheOptions object. This object defines backup cache settings of backup files that are stored on the following types of repositories:
· Veeam backup repository.
· Veeam Cloud Connect repository.
New-VBRBackupCopyJobStorageOptions
This cmdlet creates the VBRBackupCopyJobStorageOptions object that contains storage optimization settings for backup copy jobs. These settings allow you to modify the following options for the storage:
· Data compression options
· Data optimization options
· Encryption options
For more information about job storage settings, see the Data Compression and Deduplication section of User Guide for VMware vSphere.
New-VBRComputerGFSMonthlyOptions
This cmdlet creates the VBRComputerGFSMonthlyOptions object that contains settings of a monthly GFS retention policy for Veeam Agent backup jobs.
New-VBRComputerGFSOptions
This cmdlet creates the VBRComputerGFSOptions object that contains settings of a GFS retention policy for Veeam Agent backup jobs.
New-VBRComputerGFSWeeklyOptions
This cmdlet creates the VBRComputerGFSWeeklyOptions object that contains settings of a weekly GFS retention policy for Veeam Agent backup jobs.
New-VBRComputerGFSYearlyOptions
This cmdlet creates the VBRComputerGFSMonthlyOptions object that contains settings of a yearly GFS retention policy for Veeam Agent backup jobs.
New-VBRMySQLProcessingOptions
This cmdlet creates the VBRMySQLProcessingOptions object that contains settings for processing MySQL database transaction logs for Veeam Agent backup jobs
New-VBRNASBackupArchivalOptions
This cmdlet defines retention policy for file versions that are kept on the long-term repository.
New-VBRNASBackupJobObject
This cmdlet creates the VBRNASBackupJobObject object. This object contains settings of files and folders that will be added to the file backup job.
New-VBRNASBackupSecondaryTarget
This cmdlet creates secondary backup repositories. These repositories will keep copies of backups that were created by file backup jobs.
New-VBRPluginCopyJobStorageOptions
This cmdlet creates the VBRPluginCopyJobStorageOptions object. This object contains storage optimization settings for plug-in backup copy jobs. These settings allow you to modify the following
options for the storage:
· Data compression options
· Data optimization options
For more information about job storage settings, see the Data Compression and Deduplication section of User Guide for VMware vSphere.
New-VBRPostgreSQLProcessingOptions
This cmdlet creates the VBRPostgreSQLProcessingOptions object that contains settings for processing PostgreSQL database transaction logs for Veeam Agent backup jobs.
New-VBRRPONotificationOptions
This cmdlet creates RPO notification options. Veeam Backup & Replication will display a warning in the backup copy job if the newly created restore point is not copied within the desired recovery
point objective.
New-VBRSureBackupJobScheduleOptions
This cmdlet creates the VBRSureBackupJobScheduleOptions object that defines a SureBackup job schedule.
New-VBRSureBackupJobVerificationOptions
This cmdlet creates the VBRSureBackupJobVerificationOptions object that defines additional settings for the SureBackup job. You can define the following types of settings:
· Backup file integrity scan
· Malware scan
· Notifications
New-VBRSureBackupLinkedJob
This cmdlet creates the VBRSureBackupLinkedJob object that defines linked jobs with VMs to verify with the SureBackup job.
New-VBRSureBackupStartupOptions
This cmdlet creates the VBRSureBackupStartupOptions object that defines startup settings for VMs that are added to application groups and to jobs that are linked to SureBackup jobs.
New-VBRSureBackupTestScript
This cmdlet creates the VBRSureBackupTestScript object that defines recovery verification scripts for VMs that are added to application groups and to jobs that are linked to SureBackup jobs.
Veeam Backup & Replication will run this script to verify that the VM that has been assigned the specific role has up and running applications for this role.
New-VBRSureBackupVM
This cmdlet creates the VBRSureBackupVM object that defines VMs that you want to add to the application group.
New-VBRViNetworkMappingRule
This cmdlet creates the VBRViVirtualLabNetworkMappingRule object that defines network mapping rules of isolated networks. Veeam Backup & Replication will map isolated networks to production networks that are specified in this rule.
You can use this object to specify network mapping rules in network settings of isolated networks.
Run the New-VBRViVirtualLabNetworkOptions cmdlet to specify network settings of isolated networks.
New-VBRViVirtualLabIPMappingRule
This cmdlet creates the VBRViVirtualLabIPMappingRule object that defines static IP address mapping rules.
New-VBRViVirtualLabNetworkOptions
This cmdlet creates the VBRViVirtualLabNetworkOption object that defines network settings of isolated networks and how to map it to production networks.
New-VBRViVirtualLabProxyAppliance
This cmdlet creates the VBRViVirtualLabProxyAppliance object that defines settings of proxy appliances that are added to the virtual lab.
Publish-VBRBackupContent
This cmdlet mounts the content of backup files using the iSCSI protocol. You can use this content to explore or get the backed-up data. You can mount the following types of backed-up data:
· VM backup
· VM disks
Publish-VBRBackupDisksNFS
Remove-VBRApplicationGroup
This cmdlet removes application groups from the Veeam Backup & Replication infrastructure.
Remove-VBRCatalystCopyJob
This cmdlet removes backup copy jobs for HPE StoreOnce repositories.
Remove-VBRComputerBackupJob
This cmdlet removes Veeam Agent backup jobs and Veeam Agent backup policies from Veeam Backup & Replication infrastructure.
Remove-VBRNASBackup
This cmdlet removes backup files created by the file backup job.
Remove-VBRNASBackupJob
This cmdlet removes file backup jobs from Veeam Backup & Replication infrastructure.
Remove-VBRNASProxyServer
This cmdlet removes file backup proxy servers from the Veeam Backup & Replication infrastructure.
Remove-VBRNASServer
This cmdlet removes file shares that are added to the Veeam Backup & Replication infrastructure.
Remove-VBRPluginJob
This cmdlet removes plug-in backup jobs and plug-in backup copy jobs from the Veeam Backup & Replication infrastructure.
Remove-VBRSureBackupJob
This cmdlet removes SureBackup jobs from the Veeam Backup & Replication infrastructure.
Remove-VBRVirtualLab
This cmdlet removes virtual labs from Veeam Backup & Replication.
Restore-VBRNASBackupFLRItem
This cmdlet restores objects that have been backed up by file backup jobs to original file shares.
Save-VBRNASBackupFLRItem
This cmdlet restores objects backed up by file backup jobs to the specified file shares.
Set-VBRAzureComputeBackupCopyJob
This cmdlet modifies Azure IaaS backup copy jobs.
Set-VBRAzureDataBoxRepository
This cmdlet modifies Azure Data Box storage that is added as an object storage repository to the Veeam Backup & Replication infrastructure.
Set-VBRAzureExternalRepository
This cmdlet modifies settings of Microsoft Azure Blob storage added as an external repository.
Set-VBRBackupCacheOptions
This cmdlet modifies backup cache settings.
Set-VBRBackupCopyJobStorageOptions
This cmdlet modifies storage optimization settings for backup copy jobs.
Set-VBRCatalystCopyJob
This cmdlet modifies backup copy jobs that are created for HPE StoreOnce repositories.
Set-VBRComputerBackupCopyJob
This cmdlet modifies Veeam Agent backup copy jobs.
Set-VBRComputerGFSMonthlyOptions
This cmdlet modifies settings of a monthly GFS retention policy for Veeam Agent backup jobs.
Set-VBRComputerGFSOptions
This cmdlet modifies settings of a GFS retention policy for Veeam Agent backup jobs.
Set-VBRComputerGFSWeeklyOptions
This cmdlet modifies settings of a weekly GFS retention policy for Veeam Agent backup jobs.
Set-VBRComputerGFSYearlyOptions
This cmdlet modifies settings of a yearly GFS retention policy for Veeam Agent backup jobs.
Set-VBRHvServerConfiguration
This cmdlet modifies settings of Microsoft Hyper-V hosts added to the backup infrastructure.
Set-VBRHvServerVolume
This cmdlet modifies volume-specific settings for Microsoft Hyper-V hosts.
Set-VBRMySQLProcessingOptions
This cmdlet modifies settings for processing MySQL database transaction logs for Veeam Agent backup jobs.
Set-VBRNASBackupArchivalOptions
his cmdlet modifies settings of retention policy for file versions that are kept on the long-term repository.
Set-VBRNASBackupJob
This cmdlet modifies settings of file backup jobs.
Set-VBRNASBackupJobObject
This cmdlet modifies settings of files and folders that will be added to the file backup job.
Set-VBRNASBackupSecondaryTarget
This cmdlet modifies settings of secondary backup repositories.
Set-VBRNASFileServer
This cmdlet modifies managed Windows or Linux file serves added to the Veeam Backup & Replication infrastructure.
Set-VBRNASNFSServer
This cmdlet modifies settings of NFS network shared folders added to the Veeam Backup & Replication infrastructure.
Set-VBRNASProxyServer
This cmdlet modifies settings of file backup proxy servers added to the Veeam Backup & Replication infrastructure.
Set-VBRNASSMBServer
This cmdlet modifies settings of SMB network shared folders added to the Veeam Backup & Replication infrastructure.
Set-VBRPluginBackupCopyJob
This example modifies plug-in backup copy jobs.
Set-VBRPluginCopyJobStorageOptions
This cmdlet modifies storage optimization settings for plug-in backup copy jobs.
Set-VBRPostgreSQLProcessingOptions
This cmdlet modifies settings for processing PostgreSQL database transaction logs.
Set-VBRSureBackupJobScheduleOptions
This cmdlet modifies settings of a SureBackup job schedule.
Set-VBRSureBackupJobVerificationOptions
This cmdlet modifies additional settings for the SureBackup job.
Set-VBRSureBackupLinkedJob
This cmdlet modifies settings of jobs linked with the SureBackup job.
Set-VBRSureBackupStartupOptions
This cmdlet modifies startup settings for VMs that are added to application groups and to jobs that are linked to SureBackup jobs.
Set-VBRSureBackupTestScript
This cmdlet modifies settings of custom recovery verification scripts for VMs that are added to application groups and to jobs that are linked to SureBackup jobs.
Set-VBRSureBackupVM
This cmdlet modifies settings of VMs to add to application groups.
Set-VBRViApplicationGroup
This cmdlet modifies settings of application groups.
Set-VBRViLinuxProxy
This cmdlet modifies settings of Linux backup proxy servers to the Veeam Backup & Replication backup infrastructure.
Set-VBRViNetworkMappingRule
This cmdlet modifies network mapping rules of isolated networks.
Set-VBRViSureBackupJob
This cmdlet modifies settings of SureBackup jobs.
Set-VBRViVirtualDevice
This cmdlet modifies settings of VM virtual disks.
Set-VBRViVirtualLab
This cmdlet modifies settings of WMware virtual labs of the following kinds:
· WMware Basic Virtual Lab
· WMware Advanced Virtual Lab
Set-VBRViVirtualLabIPMappingRule
This cmdlet modifies static IP address mapping rules.
Set-VBRViVirtualLabNetworkOptions
This cmdlet modifies network settings of isolated networks and how to map it to production
networks.
Set-VBRViVirtualLabProxyAppliance
This cmdlet modifies settings of proxy appliances.
Start-VBRCatalystCopyJob
This cmdlet starts backup copy jobs for HPE StoreOnce repositories.
Start-VBRComputerBackupJob
This cmdlet starts Veeam Agent backup jobs and Veeam Agent backup policies.
Start-VBRDownloadTenantBackup
This cmdlet downloads tenant backups from capacity tier to performance tier.
Start-VBRNASBackupFLRSession
This cmdlet starts a restore session to explore objects backed-up by file backup jobs. You can
restore files to either of the following options:
§ Restore backups to the specific restore point.
§ Restore all versions of backups that are located on the specific file share. The cmdlet will restore
all versions of backup files that are located on the short-term and long-term repositories.
Start-VBRNASBackupHealthCheck
This cmdlet performs a health check for file backup jobs.
Start-VBRNasBackupRestore
This cmdlet starts a restore of backups created by the file backup job.
Start-VBRScaleOutBackupRepositoryOffload
Start-VBRSureBackupJob
This cmdlet starts SureBackup jobs.
Run the Stop-VBRSureBackupJob cmdlet to stop SureBackup jobs.
Start-VBRViComputerInstantRecovery
This cmdlet starts an instant recovery of Veeam Agent computers to the VMware infrastructure.
You can restore the following types of computers backed up by Veeam Agent:
· MIcrosoft Windows computers
· Linux computers
Start-VBRViInstantVMDiskRecovery
This cmdlet starts restore of VM virtual disks from backups.
Stop-VBRComputerBackupJob
This cmdlet stops Veeam Agent backup jobs and Veeam Agent backup policies.
Stop-VBRNASBackupFLRSession
This cmdlet stops restore sessions started to recover backups created by file backup jobs.
Stop-VBRSureBackupJob
This cmdlet stops SureBackup jobs.
Run the Start-VBRSureBackupJob cmdlet to start SureBackup jobs.
Stop-VBRViInstantVMDiskRecovery
This cmdlet stops a restore of VM virtual disks.
Sync-VBRNASBackupMetadata
This cmdlet downloads metadata of backup files from the long-term backup repository to the
short-term repository. You can use this cmdlet to restore backup files that are located on the long-term
repository but are no longer available on the short-term repository.
IMPORTANT!
Before downloading metadata from the long-term repository, you must run the Sync-VBRBackupRepository
cmdlet to rescan this repository.
Sync-VBRSOBREntityState
This cmdlet synchronizes the state of data stored in object storage to the state of data stored
on extents in the scale-out backup repository for the specified period of time.
You can run this cmdlet when data on the extents is corrupted or you want to restore data to the
specific point-in-time. Every time when data is moved to object storage, a checkpoint is created on
object storage. The checkpoints that have been created before are not overwritten and are stored in
object storage, so multiple restore points are created. You can use these restore points to specify the
necessary point-in-time and restore data to a specific state.
When you run the Sync-VBRSOBREntityState cmdlet, Veeam Backup & Replication performs the following
actions to synchronize data:
1. Removes backups and their metadata indexes stored on the extents of scale-out backup
repositories.
2. Downloads metadata and metadata indexes of backups that are stored in the object storage to the
extents of scale-out backup repositories for the specified period of time. The backups are not
downloaded to the extents of scale-out backup repositions and are stored in object storage.
Run the Get-VBRCapacityTierSyncInterval cmdlet to get details on checkpoints available in object storage
for a specific period of time.
Test-VBRMetadata
Uninstall-VBRDiscoveredComputerAgent
This example removes Veeam Agent from a specific protected computer.
Uninstall-VBRLicense
This cmdlet removes a license from a backup server.
NOTE:
By default, details about both per-instance and per-socket objects are removed. To remove details about
either per-instance or per-socket objects, you must specify the necessary parameter.
Unmount-VBRObjectStorageRepository
This cmdlet unmounts object storage repositories.
Unpublish-VBRBackupContent
This cmdlet unmounts the content of backup files from iSCSI target servers.
Unpublish-VBRBackupDisk
Update-VBRLicense
This cmdlet updates licenses.
For more information on updating licenses, see the Updating License section of User Guide for VMware
vSphere.
Validate-VBRCloudTenantCredentials
Conclusion
In the end there’s lots of new capabilities here to work with. I’m sure there’ll be more information in the upcoming What’s New document on GA day but for the automation buffs out there maybe this will give you a jump start on how you’ll be doing things after upgrading.

As we rapidly approach release day for Veeam Backup and Replication v10 (February 18!) Many of you are going to want to do upgrades on that day or shortly after. Personally for production level servers I advocate for waiting for patch 1 to come out, usually 2 weeks to 1 month after GA if history bears out. This is especially true if you utilize any Cloud Service Providers for offsite copies as this is what Veeam refers to as a “breaking” release. That means that if the cloud side VBR you are connecting to is not also on version 10 then you will see errors both during installation and then once you open the console and your backups WILL fail.
That said if you have a testing environment or a lab GA is a great day to get at it. This post, now with video, will outline the steps necessary to do an in-place upgrade. One important thing to note before going down this road is upgrade to the RTM/GA is limited to 9.5 update 3 or later. If you happen to be running an older version you will need to upgrade to this first.
Prerequisites:
- Go to my.veeam.com and download the ISO on or after 2/18.2020 and obtain a new v10 license file
- Ensure that any and all jobs are not running. Usually this means Backup Copy Jobs need to be disabled as they are continuous (mostly)
Process:
- Mount the ISO file by right click>mount
- Run setup.exe and click upgrade
- VBR v10 is now based on the .NET Framework v4.7.2 and you will be prompted to install that if you haven’t already. A reboot will be required before you can proceed.
- Once the reboot has been completed (pretty quick on Windows Server 2019) we’ll need to remount our ISO and run setup.exe again
- Accept EULAs, Next
- Verify versions you are upgrading from, Next
- If you’ve already downloaded your new v10 compatible license file go ahead and install it now. If not, no worries because Veeam will be granting you a 60 day grace period to get this done. Once you are installed you can import the new license via the Menu>License window in the VBR console. Hit Next
- Next we want to verify the database configuration. It should automatically have all the information for where your VeeamBackup database is. Before you get to this point it is a best practice to take a SQL level backup of the database prior to upgrading. Hit Next and then confirm that you do want to upgrade the existing database.
- Finally we are at ready to install. Go ahead and check the “Update remote components automatically” as this will have Veeam launch the updater wizard upon first launch of the console to update any scaled out proxies, repositories or WAN accelerators you may have. Hit Install.
- Once complete hit Finish and choose yes to reboot.
- Launch and log in to the VBR console
- Upgrade any external components that need done
- Go to Backup Infrastructure>vSphere and rescan all your vSphere components. This may be overkill but I’ve always found a rescan after upgrade heads off many upgrade related issues.
This slideshow requires JavaScript.

If you have been around the Veeam world for very long, you know they don’t do small releases; each new version comes with literally hundreds of enhancements and bug fixes. While my last post covers many of the headliners there is still a lot of great things left to see. In this post, I’m going to discuss some of the “little things” that aren’t so little that are going to make this a great release.
Object Storage
One of the long asked for features of Veeam was greater ability to leverage public cloud capabilities for backups and data management in general. In 9.5 update 4, we got the ability to offload local storage to object as a way of extending on-prem resources through dehydrating local backup copies to S3, Azure Blob and the like. In v10 we now have what they call Copy mode which is the next step in the evolution. With Copy mode you will create a Scale Out Backup Repository containing any number of on-premises repository extents and a cloud storage provider, referred to as an External Repository. You will have the ability to have it mirror the local extent to cloud to give you a somewhat simplified method to getting your backups off-site. We’ve also already talked about the capability built in for the NFS backup capability.
While Veeam Backup and Replication is the star of this post, it is worth noting here that the recently released Veeam Backup for Office 365 version 4.0 has the ability to address object storage as a direct repository with no need for local storage at all. This totally makes sense in this case; effectively it empowers you to take a cloud workload in location/system A and place the backups in location/storage B, while all the time maintaining control in an on-prem system, if you choose.
End of the day, the day is coming where object storage is going to become THE first-class citizen in the Veeam ecosphere. Does this mean you have to start using Amazon, Microsoft, or Google for your backup storage, either as a backup copy or even for initial backups? Heck no! Any number of Veeam Cloud Service Providers (VCSPs) including, I don’t know, OffsiteDataSync, are capable of offering these solutions themselves along with more of the hands on assistance you’ve come to know and love.
Restore Here, There and Everywhere
Over the last few releases, we’ve steadily been getting more and more places and ways to restore our data. If you think about it, that’s what it is all about, isn’t it? Backups without an easy way to restore them are just blobs of data taking up disk space. With our traditional VM-based workloads, we’ve been able to have the ability to restore to Azure and Amazon EC2 instances. That’s great, as long as you have no problem with public cloud. It can also be a time-consuming process if you are restoring there from your on-premises backup repositories. Now with v10, we have the capability to have copies of our backups in object or blob storage buckets, putting those backups much closer to their Cloud Compute counterparts. While there are still quite a few steps involved in making this viable, as my friend Anthony Spiteri demonstrated, you can perform these restores while on airplane Wi-Fi in the time it takes for a normal flight.
The restore capability that really gets me excited is a feature they call “restore anything to vSphere.” In this if Veeam is ingesting the backup as a traditional .VBK file, you now will have the capability to restore it directly to a vSphere VM. Hyper-V backups? Restore to vCenter. Physical boxes protected with Veeam Agents for Windows or Linux? Right click, restore to vCenter. For those doing mixed production workloads, this has great potential as a migration tool or powering a single Disaster Recovery Site with only a single framework to support.
On-Premises GFS
One final thing of note is Veeam and the Backup industry as a whole has long advocated for the concept of Grandfather Father Son; Where you have your normal backup that runs for a given period, but outside of that, you have sealed backups on other given time periods created from the backup runs. For example, you might have a normal run job of 30 daily backups, but from that, you seal 12 monthly and 6 yearly backups to give you historical coverage.
Traditionally with Veeam Backup and Replication, this is done as a function of the Backup Copy job, but now with version 10, we have the capability to make GFS restore points right on the primary backup job.
Conclusion
As you can see there’s a lot to like with version 10. Some of these things are answers to long term requests, other are keeping up with today’s computing landscape. Either way it exciting to see what is coming next!

Veeam Backup and Replication v10‘s release is now imminent after a loooooong wait. In fact, as of yesterday we now have a tentative release date: February 18, 2020. For the past few weeks, I’ve been able to work with the first Release Candidate in the lab, and I’ve found quite a few things to love in this release that I’d like to share here.
Linux, Linux, Linux!
Veeam Backup & Replication has long been a Windows first solution and everything else a far distant second. That worked and continues to work really well, but in 2020 the needs of larger customers require automation and management workload shrinkage that Linux-based components lends to. With this release, we now have Linux-based proxies as an option. These are not deployable appliances. You deploy them in the same way as you would a Windows Proxy: deploy the VM, add it to your backup infrastructure, then add it as a proxy, which installs the necessary software.
While many of you may have the same “what, no appliance?” reaction I did, this actually makes sense as it lets organizations develop their own templates based on their own requirements and security policies. Then they can use their automation method of choice to deploy. This will be a big hit for the VSAN crowd, which should have a proxy per host to be in line with best practices.
Further, while we have long had the ability for Linux-based proxies (especially for those wishing to mount NFS datastores as backup repositories), they were never the first-class citizen Windows or appliance-based repos were. With this release we get experimental support for fast cloning with XFS and BRFS. From what I’m hearing they are far more confident in the former. In my own tests writes to this are potentially faster than to ReFS and without the memory requirements ReFS repos need.
Finally, for the Veeam Agent for Linux crowd, there is now support for doing Application Aware Processing for Postgres and MySQL on Linux — the same as we’ve seen for Microsoft SQL in VBR. As we now live in the Veeam Universal Licensing world — even if you have some of these VMs in your environment — you can make the choice to back them up with a managed VAL install instead to a normal backup job to take advantage of this feature, all the while using the same licensing from the same VBR server.
NFS All the Things
Speaking of using Linux to front end NFS shares, that is no longer required as we can now natively address them as a repository. Over the years, many have tried to address this as common SMB shares, but this capability has always been flaky and poor performing, comparatively, so everybody had their work arounds from using it. Now we can add NFS in a server:/share/folder manner and make use of all the capabilities of NFS 3 or 4.
One of the other big features of the release is something I’m sure my friend Michael Cade would love to tell you about, the ability to directly backup NFS or other file shares as a backup job. You can now go into the Inventory portion of your Veeam UI and add file shares there that can then be targeted for File Backup Jobs that are processed in a familiar manner. What is interesting to me with this is the backups are actually written in native blob format (think Azure Blob or Amazon S3). You have the ability to send them directly to object storage archives immediately after the backup hits the on-premises repository. It is worth noting that this is a Veeam Universal Licensed only feature with each 250 GB of data consuming a license instance. I personally think that threshold per instance is too low as it wouldn’t take long with these giant filers to have the NFS share consume more licenses than the virtualization workload at that rate, but licensing is not my fight (today)!
Backup Copy Enhancements
I’ll be honest, as a shiny new architect in the VCSP space this is near and dear to my heart (and my job). Before that, I was a Cloud Connect customer, and there is quite a bit here to be happy about. Probably the most visible of these is the new Mirror Mode, which allows you to mirror any on-prem job to your backup copy job easily. This is great if you are wanting a very simplistic policy for cloud-based copies. This also FINALLY gives us the ability to ship transaction logs via backup copy, which is very nice. The old method, now referred to as Pruning Mode, is still available, allowing you to pick backups from an existing backup job on the fly to create your backup copy.
Next, within the Advanced settings of your backup copy, you’ll also now find a RPO monitor settings tab. I know from my limited time working for a provider, one of our common support concerns is customers will have a disconnect on the fact that their local jobs are failing for whatever reasons and then their off sites are silently broken because they have nothing to copy. With RPO monitor you can configure your backup copy job to send an alert if they job fails to copy any restore points for a given period of time. For me, I look forward to this being an escalation point by having it send text messages if it isn’t happening.
Finally, also in this release we’ve finally seen some real improvements in the WAN accelerator portion. Five or six years ago when this feature was initially released, you had large numbers of customers who had sub 100 Mbps bandwidth for their off-site copies, and this was a great way to maximize those links and minimize the backup copy window.
Conclusion
As you can see there’s a lot to like with version 10. Some of these things are answers to long-term requests. Others are keeping up with today’s computing landscape. Either way, it exciting to see what is coming next!
Tune in tomorrow for Part 2 of My Favorite Things about VBR v10!
About me
Hi there and welcome to koolaid.info! My name is Jim Jones, a Geek of Many Hats living in West Virginia.
This site was created for the purpose of being a locker full of all the handy things I’ve learned over the years, know I’m going to need again and know I’ll forget. It’s morphed a bit over the years as all things do but still that’s the main purpose. If you’d like to know more about me check out any of the social links at the top left of the site, I’m pretty much an open book.
If you’ve found this page I hope you find it’s contents helpful. Finally, anything written here are solely my views and do not reflect those of my employer.
You must be logged in to post a comment.