Skip to main content

Hey everyone,

Just a quick one from me here, I was playing about in my lab installing Veeam B&R and Veeam ONE v11a (because, why not?!), when I hit a strange issue. I’d snapshotted my VM prior to installing Veeam ONE so that I could revert back and try different methods (and play with automation). The first time I installed Veeam ONE, it worked PERFECTLY. Next day I revert the VM and tried to install it again, and I got an error that it failed to create the website and wouldn’t install!

It seemed strange that a virtual machine I’d powered off before snapshotting would have two different outcomes when in both scenarios I booted the VM up and installed Veeam ONE in an identical way.

So I started to dig into this and found the problem was caused by a dependency. When Veeam ONE installs, the following dependencies are required:

  • Microsoft IIS
    • ASP.NET 4.5 Component
    • .NET Extensibility 4.5 Component
    • Default Document Component
    • HTTP Errors Component
    • Static Content Component
    • Windows Authentication Component
    • WebSocket Protocol Component
  • Microsoft System CLR Types for SQL Server 2014
  • Microsoft SQL Server 2014 Management Objects
  • Microsoft XML 6.0 Parser and SDK
  • Microsoft OLE DB Driver for SQL Server
  • Microsoft SQL Native Client 2012
  • Windows Management Instrumentation Service
  • Microsoft .NET Core Runetime 3.1.16
  • Microsoft ASP.NET Core Shared Framework 3.1.16
  • Microsoft Universal C Runtime
  • Microsoft Application Request Routing 3.0
  • IIS URL Rewrite Module 2.1

That’s a fair few dependencies that Veeam ONE needs, and they all need to play nice, but unfortunately it seemed like one of them was misbehaving, how would I find out which? Read on!

I jumped into the installation logs on the VM, these are located at “C:\ProgramData\Veeam\Setup\Temp” by default. Then I sorted them by date modified. Veeam ONE leverages a few different installers to deploy its specific components and we can see that in the log output as per the screenshot below.

We cam see a fair few of these logs are marked _rollback, meaning that the installer had failed and the system was reverting to a known good state. The last one we see before any rollback logs was “ReporterWEBSetup” which is the section of Veeam ONE that was installing when the error occurred, let’s dive into the logs!

Highlighted within the image you’ll see a few key lines, we see that the action ‘CONFIGURE_ARR_PROXY’ was performed and then we see a Com error -2147023728. Message: Element not found.

The next output we get is “Failed to create website. Error code: 0x80070490.”.

This means there was a high chance that ARR was at fault, for those that don’t know what IIS ARR is, ARR stands for “Application Request Routing”, there are quite a few scenarios that leverage ARR but the key use cases are load balancing as a reverse proxy and performing HTTP based routing decisions, if you’re interested in finding out more about IIS ARR you can see the main product page here.

This causes us a problem as Veeam wants to create URL Rewrite rules leveraging this component. The fix wasn’t that difficult however, simply uninstall “Microsoft Application Request Routing 3.0” from your Control Panel > Programs and Features.

Once uninstalled, run the Veeam ONE installer again, the prerequisite checker will find that the ARR feature is missing and reinstall it. Then simply complete the rest of the installation, like below!

This time we see Veeam able to install the required URL Rewrite rules and complete the installation successfully.

Hopefully this has helped someone other than just myself!

You were absolutely able to spot this because of your log analysis skills. Some would have ran to the internet googling the error message without trying to find the root cause. Good one there :clap::clap_tone1:


Very interesting and should help others if they run in to this.


Very interesting and a very good analysis.

But…. does this explain why it behaves different the second time? You have done the backup before the first install if I understand this correct.

So, why does it behave different the second time? The VM should be in the exact same state before installing at both times. Does Veeam some changes at backup or restore time to the configuration we are not aware of?


Very interesting and a very good analysis.

But…. does this explain why it behaves different the second time? You have done the backup before the first install if I understand this correct.

So, why does it behave different the second time? The VM should be in the exact same state before installing at both times. Does Veeam some changes at backup or restore time to the configuration we are not aware of?

Good question!

As I was installing Veeam into my lab I didn’t have Veeam available to backup the VM, so I used snapshots for their intended usage, not for backup, but for a desired base state. I’d installed Windows Server 2022, shut down the VM and then taken a snapshot, then when I booted up installed Veeam ONE, messed about with some settings, then reverted to snapshot and installed Veeam ONE again.

So when I ran the installer the second time, Veeam’s prerequisite checker kept saying IIS was still missing even though it had installed, which makes me believe it was the installation of IIS that hadn’t installed completely when IIS ARR installed, as it requires IIS to function. So after a reboot and confirming IIS had installed okay and prerequisites had been met, I tried to run the installer which is when I hit this error. After uninstalling and reinstalling IIS ARR, all was good!


Ah ok, I assumed you did a snapshot backup with VBR.

Thank you for the clarification.


Ok, nice to know!


Thank you, kind man! I spent all day reinstalling Veeam One until I found your workaround. 😀


 

Thanks.

After the fourth attempt we finally found the solution. 👌


 

Thanks.

After the fourth attempt we finally found the solution. 👌

Thanks for the update.  Care to share the solution so others who might have the issue can try it with their setup?


Comment