Custom Route Tables in Azure Virtual WAN are live!

Introduction

Last week, around August 26-27th 2020 Custom Route Tables in Azure Virtual WAN lit up in my Azure Tenants. Awesome news. Normally this should have happened the week of the 3d of August 2020. However, some delay happened. Now it is here is has come in silence. Which I find odd. This is a major capability that offers so much of what we need to make Azure Virtual WAN shine. But it is here, ready to shine at Microsoft Ignite

Custom Route Tables in Azure Virtual WAN
Watch my video on custom route tables in Azure virtual WAN

Custom Route Tables in Azure Virtual WAN

What do we have now? You can read up on Azure Virtual WAN route tables over here. I have made a video about all this which you can find on my blog and on my Vimeo channel. Please take a look for some walkthroughs and links to some other blog posts by me on Azure Virtual WAN.

LabELs

First of all, let’s discuss the labels. Labels logically group route tables. These are very helpful when propagating routes from connections to multiple route tables. The Default Route Table has a built-in label called ‘Default’. When you propagate connection routes to the ‘Default’ label, it automatically applies to all the Default Route Tables across every hub in the Virtual WAN.

Custom Route Tables in Azure Virtual WAN
Creating a label

Associations

Now, we can discuss associations. Each connection is associated with one route table. This means that the connection can send to the destination indicated as routes in the route table it is associated with. The routing configuration of the connection will show the associated route table. This is very important for connected VNETs. Multiple connections can be associated with the same route table. Note that all VPN, ExpressRoute, and User VPN connections are associated with the same (default) route table.

Custom Route Tables in Azure Virtual WAN
Association

By default, all connections are associated with the Default route table in a virtual hub. Each virtual hub has its own Default route table. You can add one or more static routes to the default Route table. Static routes take precedence over dynamically learned routes for the same prefixes.

Propagations

Last but not least, connections dynamically propagate routes to one or more route table. VPN, ExpressRoute, and User VPN connections propagate routes to the same set of route tables. With connections like a Site-2-Site VPN, Express Route, or Point-2-Site VPN, routes are propagated from the virtual hub to the on-premises router using BGP.

Custom Route Tables in Azure Virtual WAN
Propagations for Branches
Custom Route Tables in Azure Virtual WAN
Propagation for a connected VNET

A “None” route table is also available for each virtual hub. Propagating to the None route table implies that no routes are propagated from the connection.

Some need to ask

Finally, some customers need to reach out to support in order to get Azure Virtual WAN Custom route tables to light up.

Contact Microsoft support if and when needed to enable custom route tables for you.

As a result, I suggest you do so to start kicking the tires and then dive in deeper. This is a cornerstone technology for Azure networking going forward.

Automation

I have not found any documentation or guidance in regards to automation with PowerShell, Azure CLI, or ARM templates yet. I expect this to be forthcoming as this is much needed. As a result, I hope we’ll see this by Microsft Ignite 2020.

Conclusion

Azure Virtual WAN with the secured Virtual Hub and custom route tables offers the capabilities we have been waiting for. With these capabilities in place. Azure Virtual WAN is the future of Azure virtual networking. Therefore, I fully expect to hear a lot more about it during Microsoft Ignite in September. I personally will focus on this part of networking in the coming months. It is a stock part of any Azure initiative and project in the near future.

The office is a relic of the past

The office is a relic of the past

By now most businesses and other organizations will have woken up to a, for many of them, new reality. The reality that the office is a relic of the past. Not completely and in all situations, but for many people, use cases and industries. The writing has been on the wall for quite a while, that is for sure. But now it is being driven home remorselessly. Corona and Covid-19 are just messengers.

If you make your living selling office spaces this is bad news and you are likely to disagree with a vengeance. Join the club of transport and other companies. Change can hurt when you are at the receiving end. Relics or not, offices still have their use, but their dominance is over and it has been for a while.

Corona & Covid-19

At the time of writing, it’s been about 6 months since, all over the globe, we went to a “work from home as much as possible” approach. This in order to deal with the impact of Corona and Covid-19. While we are all telecommuting, our businesses are still running and they function just fine. Better than if we would require everyone to be in harm’s way during a global pandemic, That should make everyone think.

Some say this is only possible due to technical advances in the past 5 years. I think they mean Teams and Zoom. But in reality, it has been possible for well over a decade. At least where I had a say in the infrastructure.

The office is a relic of the past
Office buildings – Photo by Yair Mejía on Unsplash

Working from home has its challenges for sure. Things can be better technically for some of us. But hey considering this was all done under the pressure of Covid-19 and despite some managers, it’s not too bad. For many, the home office can use a second screen and or better chair. People with kids, who are caretakers of elderly dependents, etc. will have some extra challenges. Quite often the home office could also with a makeover and some improvements to handle hot or cold weather better and to make permanent telecommuting more comfortable.

Some telecommuters have been ready for while. Photo by Roberto Nickson on Unsplash

The mere fact that some work at the dinner table demonstrates the need for a home office in the first place. Blame short term thinking and acting as if nothing ever changes for this when it comes to housing and public domain planning. But all that does not distract from the fact that businesses keep running during the pandemic. As a matter of fact, they are running well.

Business as usual

Many of my buddies in IT and I have been working from home part-time or full time for well over a decade. We did not miss a beat. Bar the pandemic specific unpleasantries it was almost business as usual for us. Lucky we.

My home office and lab is very well equipped. At my own expense. I value telecommuting and it shows. Actually, the topic comes up every now and then amongst us to just pack up and live wherever you want while working. Life is short and it might be over before you ever retire. So make the most of it.

The office is a relic of the past
photo by Clint Patterson on Unsplash

The one thing to avoid is that working from home turns into living at work. That’s when you have lost balance. However, that is no excuse to haul half of the population back and forth to offices every day.

Business is about money

As businesses and other organizations come to terms with that new reality they also have to face another fact. The fact that the total cost to keep someone at a desk in a building (rent, power, heating, security, insurance, regulations, catering, …) is high. In many cases too high. And as the workforce has been working from home for almost 6 months now they should be questioning why and to what purpose that money is spent.

If you excel at dynamic operational management you should already be making plans and reducing your costs by reducing office space, if not downright abandoning it. Even if organizations need to spend 150$ or more per month per employee on home office expenses they will still come out ahead. And not just the businesses, also society as a whole as well as the individuals involved. The tools, the technology we need exists and are only getting better. Regulations might need to catch up, but again, that is no reason to keep offices around.

Win-Win?

While some employees struggle with 100% telecommuting, especially combined with the stress induced by a global pandemic, many have woken up to the many benefits as well. They realize they can reduce commuting costs (gas, public transport), dry cleaning, work attire, commute time, etc… Next to that, they, if are not too challenged by the pandemic’s extra burdens, might very well notice they can get their work one more productively and undisturbed compared to when in the office merry go around. This can lead to a better work-life balance and time regained.

More than ever before, people will demand to work from home. Governments and business planning for the next crisis will want this to succeed as well to soften the impact and smoothen the experience of a pandemic or other disaster. All that while saving money and reducing congestion. What’s not to like? The number of work from home job adds has risen with 300%. Smart businesses are leveraging work from home to attract top talent. Others are losing talent over it. Think about that.

Make no mistake, the moment you become more productive businesses will try and recuperate that time for their own profit and out need. No need to be naïve here. The race to stay competitive will push them to do so, that, along with greed. Let’s face it, most innovations that offer benefits to the average person soon become revenue or cost avoidance streams for others. Look at solar panels and smart meters. Right now they are being used to protect revenue streams of providers and favor higher consumption. By the same reasoning, we might have to pay for the empty office buildings. The risk of an entrepreneur is often socialized while the profits are private. In those cases, you don’t hear them complain about entitlement.

Time for managers to lead by example

Managers will have to step up. They need to learn how to really hire and lead talented people. That is a different ball game than just collecting employees into open office spaces and having them run around to meetings all day long. It is as if the entire technical evolution of the past 25 years has passed management by when you see how often this is still the reality for many of us. So maybe it is not just offices that are a relic of the past.

Let’s get the obvious remark about jobs that require a physical presence off the table. Yes, they exist, there are many of those. Those people can also benefit from the mere fact that the rest of us are not moving around like zombies every morning and evening without any good reason. Especially since working at an office has at best very little, likely no positive and quite possibly a negative impact on getting the job done.

Backpressure is inevitable

The incumbents, comfortable in the predictability of the status quo, will always challenge change. They only like change when others “that are stuck in their ways” have to deal with it or when it benefits them significantly. In any other situation, they will fake change when required, but that’s about it.

When you are in the business of facility management the idea that the office is a relic of the past will cause some disconcert. No matter how you translate or communicate that message, the consequence is that the facility business is about to shrink significantly. And with that comes the loss of power, money, and prestige.

Reducing or abandoning offices all to getter happens for good reasons, actually. Office space is very expensive and not that efficient let alone effective as many assume. Offices tend to lead to wasted time, groupthink and can be distractive to the point it diminishes productivity.

The office is a relic of the past
They might as well be at home, safe the 2-hour commute and all associated costs. Photo by Antonio Janeski on Unsplash

Many will be tempted to fill those offices again as soon as possible. Why? Because they own real estate or have investments in sales and leaseback or even pure long term leases. They’d rather throw good money after sunk costs to avoid looking like they should have rethought the entire office n the 21st-century thing a bit earlier. A few decades earlier even. But instead, they have been running after the “latest” office fashions like cubicles, open office plans. Often a decade too late, when the fad had been debunked a 100th times already. All this while technological progress was showing us all the way forward.

You will see lobbying and fear mongering to get people back into offices and some politicians will fall for it. But work and offices are no longer as connected as they use to be. As long as the money flows into their pockets they will not call something a waste. Despite the costs to others and the environment.

I am an IT professional who is active in the global community. The majority of interactions and collaboration happens online, across time zones even. We work, learn, collaborate remotely together. Consequently I can only shake my head at so much institutionalized inertia.

Offices were devised many centuries ago out of necessity

Offices were devised in an era that administration and bureaucracy and complexity with global operations were growing. Meeting the needs to address all that required the office to be invented. Read https://www.bbc.com/news/magazine-23372401. Even back then many employees experienced unhappy and unsatisfied excuses for “careers” in those offices. So yes offices can go away or be reduced significantly. That is okay. The same happened with cowboy bunkhouses, factory housing, horse and carriage as well as steam engines, and now even combustion engines.

The need for offices has diminished significantly by now. Many are remnants of a bygone era. When not strictly needed, they exist to keep a market alive and prevent real change hat would upset the powers that be. Blame, or rather thank information technology.

Some offices are needed, many are not

I am sure offices will be adapted to be more corona (pandemic) proof, and while needed, it does not make office life more enjoyable. People will be hesitant to return to dense landscape offices and overcrowded meeting rooms that are used by another bunch of people every hour or half-hour. The commute, the distractions, the cost will all be balanced against the benefits. Offices will lose that comparison. Sure when people really need a job, they might put up with having to go to an office, but that is not a choice. Given a choice, well over half of the employees will prefer to telecommute at least part-time.

The office is a relic of the past
Traffic jams mean stress, lost time, lost money and pollution. Photo by Larry James Baylas on Unsplash

If a job requires you to be in an office and you cannot find candidates it means that what you offer is just not good enough and the need to be there is not very convincing. Why would I put up with landscape offices that cause me stress, reduce my productivity as they kill my ability to concentrate? On top of this, to add insult to injury it makes lose time in stressful commutes, money on travel, etc. To make it even worse it wrecks my ability to balance that with the needs of children or elderly under my care and makes shopping race against the clock.

Commuting adds to traffic congestion, pollution, and stress. So when the jobs are equal, as most are, with only a minor variance in pay, why would I choose a job that imposes all that on me over one that doesn’t? What is in it for me and your company? Catering to failed leadership in the face of clear and present alternatives?

The office is a relic of the past
The joys of commuting. Photo by bantersnaps on Unsplash

I will no take jobs that require my presence in the office full time unless I absolutely had to. So while many complain about not finding talent and secretly hope a bit more unemployment would make finding candidates easier maybe they should address their own issues.

Forcing people back to the office

Why would you want to do that? Because you have the office and want an excuse for the expense? It won’t make for happy employees. You don’t care? Well, that tells employees all they need to know about you. They will resent you for it and will disengage or disconnect. They might stay but you might have destroyed any engagement they had left with the organization.

Many people I know will not ever again take a job that forces them back into the office every day. Not if they have a say in it and the circumstances allow for it. And even when you get that talent back into the office for some reason, they will leave as soon as they can. Any illusion of employee retention will be out of the window. Even when they stay, when they have no other choice, they will be less engaged. Force and threats are ill-advised management techniques. It won’t help you in the long run.

But people need supervision

Do you think they need supervision? Maybe if you are a kindergarten teacher. If that is not the case, did you hire the correct people? Do you really think they need that to be more productive?

Modern offices are often not about productivity but about cost optimization. Landscape offices and other nonsense have destroyed more productivity and killed more interpersonal collaboration that it ever created. they exist to reduce costs while catering to lazy and easy management. Make sure everyone is at their desk or in a meeting room. Attendance qualifies as output, maybe even as an outcome. Horrible! Presentism is dead. It was and has always been a retarded business practice.

Keep offices where and when they make sense. Be bold and brave when it comes to moving away from them in other cases. Position yourself for the best possible outcome for your workforce and your business. Also, don’t forget that offices tend to be in cities. Cities are costly places to live and real estate is small and expensive. Being there and working from home during a pandemic is not all that fun. Especially since all the benefits of a city are missing with pandemic measures in place. I know many have dreams of ideal cities that have wonderful living conditions for everyone but which should help us cope with energy consumption, loss of open space, and reduce global warming. But you cannot live in dreams. Cities also don’t address the real issue of too many people on too small a planet that has become a village.

But people are social animals

Yes, and they can have more time to socialize at lower stress levels when telecommuting. They can work and collaborate with colleagues within and outside of the company in a coffee shop or meetup space once in a while. The professional development is often limited by corporate office borders. There is so much to learn from collaborating with others.

Photo by Annie Spratt on Unsplash

They can attend conferences and community events, they can make it to user groups on time since they don’t commute as often, … there are so many other opportunities to socialize and be productive outside of the office. I would not be the professional I am today if I had stuck to the office as a place to socialize, work, and learn.

Really, we can keep going. But I see a lot more excuses than I do genuine reasons trying to dispel that the office is a relic of the past.

Use the pandemic as a learning opportunity

No, I am not just talking about self-study in some of the time freed up by not having to commute.

If you are only interested in maintaining the status quo in order to avoid losing power and budgets you are delaying the inevitable while costing your company dearly. You are throwing good money away whilst missing opportunities and losing talent. The latter both in recruitment as well as in turn over. Many companies will make that mistake. Governments as well. I can already notice the discussions about the financial impact on public travel and the need to get commuters on board again. Despite congestion, pollution, time lost … all to keep an old economic reality going.

Last but not least you are proving yourself a hypocrite. Harsh, but true. All the babbling about “the only constant is change” to your employee over the past decade goes out of the window the moment it disrupts your comfort zone and challenges you to reinvent your self.

The office is a relic of the past
Offices – Photo by Patrick Robert Doyle on Unsplash

Really reinvent yourself. You can no longer pretend change is moving from Skype to Teams, from VPN to VDI, or from PIN to contactless payments. Those are technical evolutions. Just like a new office building might be more energy-efficient or comfortable it is not a huge change over the older one. Changing how you do organize your workspace and workforce will require a real effort and change, also from you.

The fact that some managers need to physically have their employees in an office and meeting rooms is worrisome. It is very limiting and comes at a high cost. Sure actual problem is not the manager? It takes real skills to keep people moving in the right way effectively and efficiently. Office spaces are just one piece of a sideshow prohibiting real progress. It reminds me of measuring output instead of outcomes. Honestly, the office is just one more example of the many blunt instruments in our professional lives that stand little chance of making a real difference.

Conclusion

To conclude, is my statement that the office is a relic of the past correct? Well yes. Not for the full one-hundred percent of use cases but office space can be reduced significantly and the remainder can be leveraged in a modern, flexible way to your advantage.

Managers, get out of your comfort zone. Wake up and smell the coffee. Surely, you are not going to wait for the next pandemic to close the office for you, and for good at that time, are you? The office is a relic of the past, in many aspects. If you want to save it for what it is good for, you’ll need to get rid of the rest.

Disagree all you want but at least think and discuss this beyond the comfort of a status quo and routine. Think.

Set Max Concurrent Tasks in Veeam with Powershell

Set Max Concurrent Tasks in Veeam with PowerShell

In this blog post, I’ll look at how to set the Max Concurrent Tasks in Veeam with PowerShell. When configuring your Veeam backup environment for the best possible backup performance there are a lot of settings to tweak. The defaults do a good job to get you going fast and well. But when you have more resources it pays to optimize. One of the things to optimize is Max Concurrent Tasks.

NOTE: all PowerShell here was tested against VBR v10a

Where to set max concurrent tasks or task limits

There are actually 4 places (2 specific for Hyper-V) where you can set the this in Veeam for a Hyper-V environment.

  1. Off-host proxy
  2. On-host proxy
  3. File Share Proxy (NEW in V10)
  4. Repository or SOBR extent

Also see https://helpcenter.veeam.com/docs/backup/hyperv/limiting_tasks.html?ver=100

Use PowerShell to set the Max Concurrent Tasks in Veeam
Max Concurrent Tasks on an off-host proxy
Use PowerShell to set the Max Concurrent Tasks in Veeam
Task limit on the on-host Hyper-V proxy
Use PowerShell to set the Max Concurrent Tasks in Veeam
Max Concurrent tasks on a file proxy (V10)
Use PowerShell to set the Max Concurrent Tasks in Veeam
Limit maximum concurrent tasks on a repository or SOBR extent

Now, let’s dive into those a bit and show the PowerShell to get it configured.

Configuring the proxies

When configuring the on-host or off-host proxies, the max concurrent tasks are based on virtual disks. Let’s look at some examples. 4 virtual machines with a single virtual disk consume 4 concurrent tasks. A single virtual machine with 4 virtual disks also consumes 4 concurrent tasks. 2 virtual machines with 2 virtual disks each consumes, you guessed it, 4 concurrent tasks.

Note that it doesn’t matter if these VMs are in a single job or multiple jobs. The limits are set at the proxy level. So it is the sum of all virtual disks in the VMs of all concurrently running backup jobs. Once you hit the limit, as a result, the remainder of virtual disks (which might translate into complete VMs) will be pending.

set the max concurrent tasks for on-host proxies

#We grab the Hyper-V on-host backup proxies. Note this code does not grab
#any other type of proxies. We set the MaxTasksCount and report back
$MaxTaskCountValueToSet = 12
$HvProxies = [Veeam.Backup.Core.CHvProxy]::GetAll()
$HvProxies.Count
Foreach ($Proxy in $HvProxies) {
    $HyperVOnHostProxy = $proxy.Host.Name
    $MaxTaskCount = $proxy.MaxTasksCount
    Write-Host "The on-host Hyper-V proxy $HyperVOnHostProxy has a concurrent task limit of $MaxTaskCount" -ForegroundColor Yellow
    $options = $Proxy.Options
    $options.MaxTasksCount = $MaxTaskCountValueToSet 
    $Proxy.SetOptions($options)
}

#Report the changes
$HvProxies = [Veeam.Backup.Core.CHvProxy]::GetAll()
Foreach ($Proxy in $HvProxies) {
    $HyperVOnHostProxy = $proxy.Host.Name
    $MaxTaskCount = $proxy.MaxTasksCount
    Write-Host "The on-host Hyper-V proxy $HyperVOnHostProxy has a concurrent task limit of $MaxTaskCount" -ForegroundColor Green
}

set THE MAX CONCURRENT TASKS for off-host proxies

#We grab the Hyper-V off-host backup proxies. Note this code does not grab
#any other type of proxies. We set the MaxTasksCount and report back
$MaxTaskCountValueToSet = 6
$HvOffHostProxies = Get-VBRHvProxy
foreach ($OffhostProxy in $HvOffHostProxies) {
    $HvOffHostProxyName = $OffhostProxy.Name
    $MaxTaskCount = $OffhostProxy.MaxTasksCount
    Write-Host "The on-host Hyper-V proxy $HvOffHostProxyName has a concurrent task limit of $MaxTaskCount" -ForegroundColor Yellow
    $Options = $OffhostProxy.Options
    $Options.MaxTasksCount = $MaxTaskCountValueToSet
    $OffhostProxy.SetOptions($Options)
}

#Report the changes
foreach ($OffhostProxy in $HvOffHostProxies) {
    $HvOffHostProxyName = $OffhostProxy.Name
    $MaxTaskCount = $OffhostProxy.MaxTasksCount
    Write-Host "The on-host Hyper-V proxy $HvOffHostProxyName has a concurrent task limit of $MaxTaskCount" -ForegroundColor Green
}

PowerShell code to set THE MAX CONCURRENT TASKS for file proxies

#We grab the file proxies. Note this code does not grab
#any other type of proxies. We set the MaxTasksCount and report back
$MaxTaskCountValueToSet = 12
$FileProxies = [Veeam.Backup.Core.CFileProxy]::GetAll()
Foreach ($FileProxy in $FileProxies) {
    $FileProxyName = $FileProxy.Name
    $MaxTaskCount = $FileProxy.MaxTasksCount
    Write-Host "The file proxy $FileProxyName has a concurrent task limit of $MaxTaskCount" -ForegroundColor Yellow
    $options = $FileProxy.Options
    $options.MaxTasksCount = $MaxTaskCountValueToSet 
    $FileProxy.SetOptions($options)
}

#Report the changes
$FileProxies = [Veeam.Backup.Core.CFileProxy]::GetAll()
Foreach ($FileProxy in $FileProxies) {
    $FileProxyName = $FileProxy.Name
    $MaxTaskCount = $FileProxy.MaxTaskCount
    Write-Host "The file proxy $FileProxyName has a concurrent task limit of $MaxTaskCount" -ForegroundColor Green
}

Last but not least, note that VBR v10 PowerShell also has the Get-VBRNASProxyServer and Set-VBRNASProxyServer commands to work with. However, initially, it seemed not to be reporting the name of the proxies which is annoying. But after asking around I learned it can be found as a property of the Server object it returns. While I was expecting $FileProxy. to exist (based on other Veeam proxy commands) I need to use Name$FileProxy.Server.Name

$MaxTaskCountValueToSet = 4
$FileProxies = Get-VBRNASProxyServer
foreach ($FileProxy in $FileProxies) {
    $FileProxyName = $FileProxy.Server.Name
    $MaxTaskCount = $FileProxy.ConcurrentTaskNumber
    Write-Host "The file proxy $FileProxyName has a concurrent task limit of $MaxTaskCount" -ForegroundColor Yellow
    Set-VBRNASProxyServer -ProxyServer $FileProxy -ConcurrentTaskNumber $MaxTaskCountValueToSet
}

#Report the changes
$FileProxies = Get-VBRNASProxyServer
foreach ($FileProxy in $FileProxies) {
    $FileProxyName = $FileProxy.Server.Name
    $MaxTaskCount = $FileProxy.ConcurrentTaskNumber
    Write-Host "The file proxy $FileProxyName has a concurrent task limit of $MaxTaskCount" -ForegroundColor Green
}

Configuring the repositories/SOBR extents

First of all, for Backup Repositories, the max concurrent tasks are not based on virtual disks but on backup files (.vbk, .vib & .vrb).

Secondly, you can use either per VM backup files or non-per VM backup files. In the per VM backup files every VM in the job will have its own backup file. So this consumes more concurrent talks in a single job than the non-per VM backup files mode where a single job will have a single file. Let’s again look at some examples to help clarify this. A single backup job in non-per VM mode will use a single backup file and as such one concurrent task regardless of the number of VMs in the job. A single backup job using per VM backup mode will use a single backup file per VM in the job.

What you need to consider with repositories is that synthetic tasks (merges, transformations, synthetic fulls) also consume tasks and count towards the concurrent task limit on a repository/etxent. So when setting it, don’t think is only related to running active backups.

Finally, when you combine roles, please beware the same resources (cores, memory) will have to be used towards those task limits. That also means you have to consider other subsystems like the storage. If that can’t keep up, your performance will suffer.

PowerShell code to set the task limit for a repository/extent

For a standard backup repositories this will do the job

Get-VBRBackupRepository | Set-VBRBackupRepository -LimitConcurrentJobs -MaxConcurrentJobs 24

For the extends of a SOBR you need to use something like this

Get-VBRBackupRepository -ScaleOut | Get-VBRRepositoryExtent | Set-VBRBackupRepository -LimitConcurrentJobs -MaxConcurrentJobs 24

I you put the output of Get-VBRBackupRepository in a foreach next you can also configuret/report on individual Backup repositories when requiered.

#We grab the repositories. Note: use -autoscale if you need to grab SOBR extents.
#We set the MaxTasksCount and report back
$MaxTaskCountValueToSet = 6
$Repositories = Get-VBRBackupRepository
foreach ($Repository in $Repositories) {
    $RepositoryName = $Repository.Name
    $MaxTaskCount = $Repository.Options.MaxTaskCount
    Write-Host "The on-host Hyper-V proxy $RepositoryName has a concurrent task limit of $MaxTaskCount" -ForegroundColor Yellow

    Set-VBRBackupRepository -Repository $Repository  -LimitConcurrentJobs -MaxConcurrentJob $MaxTaskCountValueToSet
}

#Report the changes
$Repositories = Get-VBRBackupRepository
foreach ($Repository in $Repositories) {
    $RepositoryName = $Repository.Name
    $MaxTaskCount = $Repository.Options.MaxTaskCount
    Write-Host "The on-host Hyper-V proxy $RepositoryName has a concurrent task limit of $MaxTaskCount" -ForegroundColor Green
}

Conclusion

So I have shown you ways to automate. Similar settings for different purposes. The way off automating differs a bit depending on the type of proxy or if it is a repository. I hope it helps some of you out there.

Set the Hyper-V volume-specific settings in Veeam with PowerShell

Set the Hyper-V volume-specific settings in Veeam with PowerShell

When adding and configuring Hyper-V servers to Veeam you can set the Hyper-V volume-specific settings in Veeam with PowerShell or in the GUI.

  1. Select what VSS provider to use (Windows native VSS or a Hardware VSS provider)
  2. Configure the maximum number of concurrent snapshots to allow for the volume

I will show how to Set the Hyper-V volume-specific settings in Veeam with PowerShell. But first, let’s remind our selves of what it is used for.

The first one is easy. You will use the Windows native VSS unless you have a hardware VSS provider installed and configured. These come from your storage array vendor. Hardware VSS providers are only available for volumes that are provided by that storage array. If you don’t set them manual Veeams scans your host en picks the best option. It does so based on the type of volume and the availability of a hardware VSS provider or not.

The second option’s meaning depends on the version of Windows and also on whether you leverage a hardware VSS provider or not. You see the value of the maximum number of concurrent snapshots doesn’t always result in the same behavior you might expect.

Lets look at the documentation

I invite you to read the Veeam documentation on this subject. below you will find an excerpt with my annotations.

Follow the link for each option to learn more in the on line Veeam documentation.

  1. For Microsoft Hyper-V 2012 R2 and earlier, the default is set to simultaneously store 4 snapshots of one volume. To change this number, specify the Max snapshots value. It is not recommended that you increase the number of snapshots for slow storage. Many snapshots existing at the same time may cause VM processing failures.
  2. For Microsoft Hyper-V Server 2016 and later. You can simultaneously store 4 VM checkpoints on one volume. To change this number, specify the Max snapshots value. Note that this limitation works only for (recovery) checkpoints created during Veeam Backup & Replication data protection tasks. When you still use host VSS provider in your backup process (with a SAN hardware VSS provider, combined with off-host Hyper-V proxies) this acts like before. It will not limit the number of concurrent VM backup jobs. That only happens when the Hyper-V recovery checkpoints are the only thing in play. This means that for an S2D or Azure Stack HCI solution for example you will need to increase this value if you want to have more than 4 VM backed up simultaneously on that volume. No matter how many concurrent tasks you set on your Hyper-Hosts and repositories. By the way, remember that a task does not equal a VM but a disk per VM / backup file per VM. In a simple example with nothing else in play, this means that 16 tasks can be 4 VMs if those VMs all happen to have 4 disks, etc.
Set the Hyper-V volume-specific settings in Veeam with PowerShell
The default setting for maximum concurrent snapshots is 4

Now we have that out of the way. I find it tedious to do all this in the GUI. Especially so in larger environments and during testing in the lab or prior to taking a solution into production. There can be many hosts and even more volumes to configure. This is why I Set the Hyper-V volume-specific settings (and other configurations) in Veeam with PowerShell.

How to set the Hyper-V volume-specific settings in Veeam with PowerShell

So here I will share how to do this in PowerShell. It is not very difficult. Below snippet is the crux of what you need to integrate into your own scripts. Below I grab all the volumes on all the nodes of a cluster and set the MaxSnapShot value to 8. Tun a Hyper-V backup job against those CSV’s with 10 single disks VMs. You’ll see we can no have up to 8 VMs being backed up concurrently instead of 4.

I am also showing how to set the VSS provider. Warning, PowerShell will let you set a wrong provider. The GUI protects against that, So pay attention here.

#Grab the Cluster whose nodes volumes we want to configure
$Cluster = Get-Vbrserver -Name W2K19-LAB.datawisetech.corp -type HvCluster

#Grab the correct Hyper-V hosts based on the parentid (cluster they belong to)
$ClusterNodes = Get-VBRServer -Type HvServer | Where ParentID -eq $Cluster.Id 

Foreach ($ClusterNode in $ClusterNodes) {
    $ServerVolumes = Get-VBRHvServerVolume -Server $ClusterNode.Name
    $Provider = Get-VBRHvVssProvider -Server $ClusterNode.Name -Name "Microsoft CSV Shadow Copy Provider"
    Foreach ($Volume in $ServerVolumes) {
        if ($Volume.Type -eq "CSV") {

            Set-VBRHvServerVolume -Volume $Volume -MaxSnapshots 8 -VSSProvider $Provider
        }
    }
}
Set the Hyper-V volume-specific settings in Veeam with PowerShell
Only the CSV volumes have had their Max concurrent snapshot increased to 8.

Conclusion

I have shown you how to set the Hyper-V volume-specific settings in Veeam with PowerShell (VSSProvider/max concurrent snapshots

The max concurrent snapshots value is not the only setting determining how many VMs you can backup concurrently in one job. But it is an important one to know about when leveraging recovery checkpoints. You also need to mind max concurrent tasks.

Every virtual disk being backed up counts as a task. So a virtual machine with 3 disks will consume 3 tasks out of the max concurrent tasks you have set on the backup proxy. Don’t go overboard. Count cores when determining how to set these values. Also, remember that taking it easy to speed things up is a rule in backups. There is no speed gained by trying to do more than your cores can handle. Or, when you have plenty of cores by, depleting IOPS on your storage.

I will show you how to configure those with PowerShell in future blog posts.