People are always ‘a bit twitchy‘ about upgrading their backup software. Mines on my test network so I’m a little more cavalier about diving in and clicking next. So when you want to Upgrade Veeam 10 to Veeam 11, peoples main concerns are;
Will I lose my backup / replication jobs?
Will I need to rescan backup repositories?
Remember Veeam keeps all its data in a database, so your configs should remain unaffected but just to prove it.
Can I Upgrade Veeam 10 to Veeam 11 – Yes
Obviously close any Veeam management windows (in all logged in profiles) before starting.
I’ve always been a fan of Veeam, I’ve championed it for years, as a consultant and engineer I want solutions that are easy to deploy, administer, and upgrade, that cause no problems. Like all things that are easy to use, and gain a lot of popularity, Veeam is starting to get DESTROYED BY DEVELOPMENT. What do I mean? Well, things that were simple and easy to find now require you to look at knowledge base articles and pull a ‘frowny face’. Also the quality of support has gone dramatically downhill. We stand at the point where another firm can come in and do what Veeam did, (march in and steal all the backup & replication revenue worldwide, with a product that simply works and is easy to use).
I digress (sorry). So you want to backup to public cloud yes?
Well then, you log into Veeam look at your backup infrastructure, and simply add an External Repository and backup to that? NO! That would be common sense, (and the way Veeam used to to things). External Repositories are not for that, Veeam points this out when you try and add one;
So how do you backup to public cloud? (I know other vendors are available, but we are talking primarily about Azure and AWS). Well to do that you need to be more familiar with Scale Out Backup Repositories (SOBR).
With an SOBR you can add ‘cloud storage’ i.e. Azure Cold Blob storage or AWS S3, as ‘Capacity Tier‘ storage. How is the Capacity Storage Tier Used? Well theres two options, ‘Backup to Capacity after x Days’ or ‘Backup to Capacity Tier as soon as backup are created‘. like so;
Send your backup to a Scale Out Backup Repository.
The backup gets placed into the Performance Tier.
Option 1: Copy to Cloud after x Days, or Option 2: Copy to cloud immediately.
Note: This is configured on the SOBR configuration NOT on individual backup jobs/sets.
Adding Azure Cold Blob Storage
Well before you can add cloud storage to a SOBR you need to add it to Veeam, how’s that done? Well firstly you need to create an Azure Storage account.
Then generate an ‘Access Key‘.
Then create a ‘Container‘ in your storage account.
Then within Veeam > Options > Manage cloud credentials > Add > Add Azure Storage Account > Enter the Storage account and Access Key > OK.
Adding ‘Cloud Storage’ as ‘Capacity Tier’ to a Scale Out Backup Repository
Either create a new Scale Out Backup Repository, (Backup Infrastructure > Scale Out Backup Repository,) or edit an existing one. When you get to Capacity Tier > Tick the ‘Extend..’ option > Add > Microsoft Azure Blob Storage.
Azure Blob Storage > Give the storage a name > Next.
Select the storage account you created above > Select your Gateway Server (usually the Veeam B&R server but it does not have to be) > Next > Browse.
Select or create a new folder > Limit the amount of space to use (if required) > Next > Finish.
What about AWS? Well Microsoft kindly give me a certain amount of ‘free‘ Azure credits every month so it’s easy to showcase their product, (I use this for learning and PNL tutorials), so Microsoft pretty much get the benefit. I know AWS have a free tier and a trial tier, but honestly after spending 2 hours trying to find out what you actually get, and am I going to get stung on my credit card bill If I do ‘xyz‘ I lost all interest!
AWS, be like Veeam used to be, make it easy! AWS is like flying with Ryanair,
‘Oh so you want a seat? That will be and extra £x a month, and for every trip to the toilet will be an extra £x a month. Will you be wanting nuts? Because we charge by the nut, and no one knows how many nuts are in each bag, so it will be different every time, and speaking of time if you want to look at the clock that will be £x a month also!‘
People will email me and complain Azure is the same, and to an certain extent I will agree, but nothing will change until, public cloud providers start charging fixed prices for things, so IT departments can work out what the Opex is going to be e.g. like private cloud providers do! Of course working for a private cloud provider maybe I’m a little biased?
Related Articles, References, Credits, or External Links
While setting up some new backups, all the virtual machine failed like so;
Unable to allocate processing resources. Error: No backup proxy is able to process this VM due to proxy processing mode restrictions.
Solution
On the face of it this looks like a simple problem, either you backup proxy does not have the capacity, you have too many jobs running at one, or you need to deploy some more backup proxies.
However, I tested this by creating a new job with one ‘problem’ VM in it and made sure no other jobs were running. It failed with the same error. So it’s got nothing to do with lack of resources!
The Actual Problem: Was due to the fact that the backup proxy (a physical machine) had direct fiber access to the storage array, and its backup mode was set to ‘Direct Storage Access’. These new VMs were in a different Datastore/LUN that the Veeam server could not see! So you can either tick ‘Failover to network mode if primary mode fails or is unavailable’
Or a better option would be to present the correct storage LUNS to the Veeam Backup server.
Related Articles, References, Credits, or External Links
I got tasked with looking at a failover plan for a customer recently, but I noticed their replications were failing, two of the VMs in the replication job were repeatedly failing with;
Error: Storage not initialized
Solution
This took a while to get to the bottom of! Essentially the problem was the ‘Metadata’ for these two VMs was either corrupt or could not be written to. So to fix the problem, the VMs had to be removed and re-added, though the procedure for this has to be done in the following sequence;
From the Replicas Ready section remove the affected VMs from configuration.
Go to the ‘Replica VM‘ itself (within your hyper visor), and remove all the snapshots.
Edit the replication job, and add the affected VMs back in again.
Make Sure: You repoint the Replica Mappingback to your original replica VM again, (simply hitting ‘Detect‘ will do this, 99 times out of 100).
Related Articles, References, Credits, or External Links
When adding repositories to a Veeam Scale Out Backup Repository you may see this error;
Unable to add extent {Repository-Name} because it serves as the target for one or more job types which are not supported by a scale-out backup repository
Selecting ‘Show jobs‘ shows;
Backup-Configuration-Job
Solution
If you didn’t already know, the Backup-Configuration-Job, is a backup of the Veeam database and job settings, it’s what you would use if you wanted to reinstall or migrate Veeam to another server. It gets created automatically, and gets put into your first created repository. Note: It’s considered good practice NOT to have this backup stored actually on the Veeam server, but if your only repositories are on the Veeam server, you don’t have much choice!
To Fix: Simply create a new repository just for the Configuration-Backup-Job, it can be on the same Storage/Array/Disk/Partition as an existing repository (as you can see below). I typically name the repository Config-Backup-Repository to avoid confusion in the future.
Now simply change the job to use the new repository, this is NOT done where all the other jobs are configured! Select Options > Configuration Backup > Change the Repository > (I manually run it, by clicking Backup-Now) at this point, just to make sure all is well.
You should now be able to create your Scale Out Backup Repository without an error.
Related Articles, References, Credits, or External Links
If you require a ‘Virtual Lab’ for testing patches or config changes, on copies of your live servers, or simply want to test the ‘integrity‘ of your backups, then this is the post for you!
Licence Requirements: SureBackup and On Demand Sandbox require Enterprise Plus Veeam Licensing.
Host Licences: Hosts that are only used for SureBackup/ On Demand Sandbox DO NOT NEED Licences, (in Veeam,) only hosts that you back up FROM need licences.
SureBackup and Virtual labs are built on vPower, which allows you to power on your ‘backup files’ in a test/sandbox environment. It’s actually the same technology that Veeam use for U-AIR recovery.
Three components make up a virtual lab;
1. Application Group: This is a group of VMs, and the ‘Order’ they need to be powered on, e.g. for Exchange server you would also need a DC (global catalog server,) and maybe your mail filter appliance to be in the same group.
2. Virtual Lab: Requires a ‘Host’, and a DataStore, (for redo logs only), this only needs to be 10% of the size of the VMs that are being powered on in the lab.
3. SureBackup: This is the process that ‘Tests backups‘, it will bring your backed up machines online, and perform some tests on them, some are simple like ‘ping’ tests others are specific to particular server roles, like additional tests for Domain Controllers, Exchange servers etc.
Here’s how it all ‘hangs together’. We are backing up a Domain Controller, and an Exchange Server, and we are going to use those backup files to power on a copy of the servers in our ‘Test-Lab’.
Note: I’m using VMware ESX, you can also use Microsoft Hyper-V.
These are presented though a ‘Veeam Proxy Appliance’, which presents them to the VEEAM server with a changed ‘octet’ in their IP address. (So by default any other machine needs a static mapping, {see below}).
Create a Veeam SureBackup Application Group
As mentioned above, make sure you have ‘Enterprise Plus‘ licences.
It should go without saying, but you will also need a ‘good’ backup of your servers.
Backup Infrastructure > SureBackup > Application Group > Add App Group > VMware.
Give the app group a name > Next > Add VM > From Backup > Select the VMs for the Lab > Add Next.
Put the server(s) in the correct order, i.e. the domain controllers at the top.
If you are just going to use SureBackup to check backups, then ‘Edit’ the servers, and change their ‘role’ so the correct tests get performed on them. If you are just wanting a Virtual Lab, don’t bother as you will be interacting with them directly anyway. Here are the settings for a Domain Controller.
Give the lab a name > Next > Choose > Select the ‘Target’ ESX Server to use > OK > Next > Choose > Select a datastore for the ‘redo’ logs, remember this needs to be about 10% of the size of the restored VMs. > OK > Next.
Next > ‘Advanced Single Host’ > Next > Add > Browse to the ‘Port Group’ your production VMs are in > Add > OK > Next.
Note: If you need to have your lab network on its own VLAN, this is where you need to specify that traffic to be ‘tagged’ accordingly.
Add > Specify the IP for the ‘inside’ of your Veeam Proxy Appliance, this MUST BE the same as the default gateway on the live network. Then select a sensible masquerade network address > OK > Next.
Veeam: What’s a Masquerade Address?
The proxy server basically will perform NAT from the test lab to the live network, (their actual IP addresses never change, that’s why the proxy appliance had the same IP as the default gateway on the live network. The Masquerade addresses simply change one ‘octet’ of the IP address so the Veeam server can speak directly to each sand-boxed, (Test lab) VM.
If required, Add a ‘Static Mapping‘ i.e if you want to be able to ‘speak’ to a test lab VM from the live network.
How Do Veeam Virtual Lab ‘Static Mappings’ Work?
Using the example, I used above, here if someone on the live network speaks to 192.168.100.21, they are actually talking to 192.168.100.196 in the test lab.
Apply > Finish.
Create a Veeam SureBackup Job
There are two ways of doing this, if you want to create a SureBackup job that just checks your backups, then you would schedule the job, and connect it to your backups, or if you just wanted to do some lab testing, you would create a ‘one off’ SureBackup job and leave the VMs powered on (I’ll point this out below).
Home > SureBackup Job > VMware > Give the job a name > Next.
Select the lab you created above > Next > Select the App Group you created above. (NOTE: If you want to leave your machines ‘powered on’ after the job, i.e. for performing upgrades, patch tests etc, then TICK the option indicated).
Link this job to the backup job for the VMs in question > Add > Select the backup Job > OK.
Note: The option at the bottom, specifies how many VMs are tested at a time in a standard SureBackup Job.
Next > Next.
Schedule the job (if required) > Apply > If you didn’t schedule, then you can click ‘Run the job when I click Finish‘ for ‘one-off’ jobs > Finish.
If you selected the option to leave the machines powered on, then there will ‘always’ be a job running and the job will stop at 99%. (You will need to manually stop the job to remove the test VMs). If you do continuous backups this will be a familiar sight anyway!
There’s my test VMs powered on, that I can interact with, update, patch, and change configurations, without it affecting my live servers.
Related Articles, References, Credits, or External Links
Natively with Veeam Backup and Restore, the only way to do this, is to perform an Agent Based backup of your VMware VM. If you are unfamiliar with doing this, you create a Protection Group, and add the machines to that protection group. It’s really designed for backing up physical machines, but there’s no reason you can’t backup a VM in the same way.
Just so you know it’s not smoke and mirrors. here’s my VM in vSphere.
Perform an ‘Agent Based‘ backup off this VM.
Restore > Agent Restore > Instant Recovery.
Select the VM > Next > Set the Hyper-V server as the ‘Host’.
Finish the ‘Wizard’, and perform the restore.
You will need to complete the process by ‘Migrating to production’.
Wait for the process to complete.
And now it’s running in Hyper-V.
I’d run devmgmt.msc and make sure all the drivers are OK. That being said, anything after server 2008 should have the correct drivers for Hyper-V, and Veeam does not support agent-based backups on Server 2008 (or earlier) so all ‘should’ be fine.
Related Articles, References, Credits, or External Links
I was asked to take a look at this by a colleague;
Unable to allocate processing resources Error: No backup proxy is able to process this VM due to proxy processing mode restrictions.
Solution
This is a pretty generic error to be honest, at first glance it would look like the proxy either needed more CPU/RAM, (or another proxy adding altogether). However and the root cause was the Veeam server was attached to the storage network via fibre HBA. And it has lost is connection to the Data-stores. This resulted in it not being able to use the ‘Direct Storage Access’ backup mode to backup, (there’s three modes Network (most common), Virtual Appliance, and Direct Attached Storage.
After correcting the storage presentation, a quick look in ‘Disk Management’, and a rescan told me the storage was now presented correctly;
Note: Yes they are meant to be offline!
The backups then completed as normal.
Related Articles, References, Credits, or External Links
If you attempt to restore items from a backup of a server where the data was stored on a deduplicated volume, you may see the following error;
Copying data from deduplicated volumes requires that the console is installed on Windows Server 2012 R2 or later with the data duplication feature enabled.
Restoring files from deduplicated volumes requires that the mount server associated with the source backup repository uses Windows Server 2012 R2 or later with data deduplication feature enabled.
This tells me two things, firstly no one at Veeam can use a comma, and secondly we are missing a Windows feature.
Solution
Normally if you see posts for this, it will tell you to install the deduplication on the Veeam server, (because that fixed their problem). That worked because the mount server and the Veeam Backup and Replication management server were the same server. However if you are remote managing Veeam, then the mount server is the server you are running backup and replication management on. You need to bear this in mind, if you are managing Veeam from an OS that does not support Deduplication, then you may need to remote onto another server to perform the restore.
Open a PowerShell session, and execute the following commands; (That last one will reboot!)
Veeam is both a great company, and backup and recovery is the best product in its class by a country mile, (yes Zerto is great but it costs a fortune!) With Backup and Recovery 9.5 Update 4. You can recover a VM straight into Azure, (and Azure Stack).
Which pretty much means you can use Veeam to Migrate your VMs (or physical machines) from vCenter (or Hyper-V) into Azure/Azure Stack. You need to have a successful backup, (or replication) in Veeam before you start. (That goes without saying but I’ll get emails if I don’t point that out!)
Obviously you also need an Azure Subscription, and you will need to have (pre configured) the following;
To connect to Azure you will need an Access Key > Login to Azure > All services > Storage Accounts > Select your storage Account > Access Keys > Copy a key to the clipboard.
Veeam: Adding Azure Accounts
From the main menu > Manage Cloud Credentials > Add > Microsoft Azure Storage Account > Supply your Azure Login > Paste in the key (from above) > OK.
Repeat the procedure, but this time add ‘Microsoft Azure compute account”.
Next.
Microsoft Azure > Next
Add > Supply your Azure credentials > OK > Next.
Finish (that was easy!)
Veeam: Restore or Migrate a VM to Azure
Home > Restore > (select the platform, here I only have VMware vSphere) > Restore from Backup.
Entire VM Restore > Restore to Microsoft Azure.
Add in the VM to restore > Next > Select the subscription and location > Next.
Edit > Add in your Azure Storage Account > Select a VM size (WARNING The bigger, the more expensive!) > OK > Next > Group > Select your Resource Group > OK > Next.
Network > Add in your virtual network and subnet > Next > Group > Add in your Azure Network Security Group > Next.
I’m not going to scan my VM, but if you are recovering from an infection you might want to > Next > Next.
Finish > When successfully completed > Close.
Give your VM a while to power on, you can enable boot diagnostics to see if it is at the logon screen (Note: you need to manually refresh this screen).
Then you can connect via RDP. Note: You may need to enable TCP Port 3389 inbound before this will work.
Don’t forget to remove VMware tools!
Related Articles, References, Credits, or External Links