VEEAM Backup Azure AD Connect VSS errors

Recentemente sono stati segnalati problemi nell’effettuare il backup con VEEAM di macchine dove è installato il software Azure Active Directory Connect.  Nei file di log vengono registrati errori VSS durante il guest processing e i job di backup non vengono completati correttamente. Sembra che questi problemi siano legati ad alcuni aggiornamenti recenti del client AD Connect.

Sul sito VEEAM è stata pubblicata la KB2326 dove viene presentato il problema. L’errore specifico registrato nei log è il seguente:

Unable to release guest. Error: Unfreeze error (over VIX): [Backup job failed. Cannot create a shadow copy of the volumes containing writer’s data. A VSS critical writer has failed. Writer name: [SqlServerWriter]. Class ID: [{a65faa63-5ea8-4ebc-9dbd-a0c4db26912a}]. Instance ID: [{6323fe10-0205-47df-b015-4a5ff60c31e2}]. Writer’s state: [VSS_WS_FAILED_AT_PREPARE_SNAPSHOT]. Error code: [0x800423f4].]

La soluzione proposta prevede di effettuare un Repair del SQL Server Express LocalDB dal Pannello di Controllo di Windows seguito da un riavvio del sistema.

Se l’errore continua a verificarsi viene consigliato di disabilitare l’application-aware processing.

In realtà si leggono sui forum commenti di utenti che segnalano il ripresentarsi del problema dopo alcune esecuzioni corrette del job di backup nonostante abbiamo applicato quanto riportato sulla KB. Un workaround interessante è quello suggerito dall’utente SdC in questa discussione e spiegato più nel dettaglio al seguente link.

In questo post viene consigliata l’esecuzione di uno script Powershell che automatizza il processo di Repair del LocalDB SQL sugggerito in precedenza.

stop-service -displayname “Microsoft Azure AD Sync”
$FQlogonaccount = Get-WmiObject -Class Win32_Service | ? { $_.displayname -match “Microsoft Azure AD Sync”} | select Startname
$split = $FQlogonaccount.startname.Split(“\”[0])
$username = $split[1]
$sqlprocess = Get-WmiObject -Query “Select * from Win32_Process where name = ‘sqlservr.exe'” | Select Name, Handle, @{Label=’Owner’;Expression={$_.GetOwner().User}} | ? { $_.owner -match $username} | select handle | Out-String
$sqlpid= $sqlprocess.Split(“`n”)[3]
Stop-Process -id $sqlpid -force
start-process -filepath “MsiExec.exe” -argumentlist “/f {6C026A91-640F-4A23-8B68-05D589CC6F18}” -wait
Start-Service -displayname “Microsoft Azure AD Sync”

Lo script deve essere salvato sulla macchina VEEAM ed eseguito come Pre-freeze script  all’interno del job di backup nella parte di configurazione dell’Aware Processing.

Riferimenti:

https://www.veeam.com/kb2326

https://forums.veeam.com/veeam-backup-replication-f2/bunch-of-servers-vss-writer-errror-0x800423f4-t37483.html

http://www.tecfused.com/2017/10/veeam-backup-fails-vss-writer-errror-0x800423f4-azure-ad-connect-new-31102017/

2 pensieri riguardo “VEEAM Backup Azure AD Connect VSS errors

  • venerdì 17 novembre 2017 in 0:13
    Permalink

    In case you’re wondering why this happens:
    – ADSync launches an SQL Server Local DB under it’s own user account
    – The User Profile Service thinks ADSync is no longer logged on, and unloads the registry
    – SQL Server though still has handles to the registry, but they’re invalid now

    Detailed explanation:
    https://support.microsoft.com/en-us/help/2287297/a-com-application-may-stop-working-on-windows-server-2008-when-a-user

    In short: Computer Configuration->Administrative Templates->System->User Profiles->Do not forcefully unload the user registry at user logoff

    Risposta
  • venerdì 17 novembre 2017 in 23:02
    Permalink

    Gгeetings! Very helpful advіce within this article! It’s thе little ⅽhanges whiсh will make the
    greatest changеs. Thanks a lot for sharing!

    Risposta

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *