Ошибка Failed to call RPC function ‘Vss.GetFileFromGADir’: Error code: 0x80070005

Привет! При бекапе виртуальной машины на виртуализации VMware vSphere средствами Veeam Backup возникла неожиданная ошибка:

Failed to prepare VM for processing from storage snapshot, failing over to using VM snapshot. Details: Failed to call RPC function 'Vss.GetFileFromGADir': Error code: 0x80070005. Failed to invoke func [GetFileFromGADir]: Access is denied.. Failed to download the object. RPC function call failed. Function name: [FcGetItemInfo]. Target machine: [имя виртуальной машины]. RPC error:Access is denied. Code: 5.

Данный сервер бекапится у меня не только как виртуальная машина но и как сервер MS SQL.
Решение проблемы оказалось неожиданным: на этой проблемной виртуальной машине установлены пакеты Veeam:
Veeam Transaction LogBackup Service 12.1.0.2131
Veeam Guest agent 12.1.0.2131
Veeam Installer Service 9.5.0.1536

Удалив все их и выключив/включив задачу бекапа (для остановки бекапа логов) проблема устранилась.

Скрипт массового изменения настроек заданий Veeam Backup

Скрипт берет список задач, которые бекапят сервера на виртуализации VMware и у которых параметр Enable VMware Tools quiescence не включен и меняет эту настройку на «Включено»
Import-Module Veeam.Backup.PowerShell
$jobs = Get-VBRJob | where {($_.Options.ViSourceOptions.VMToolsQuiesce -like 'False') -and ($_.TypeToString -like "VMware Backup")}
Foreach ($job in $jobs)
{
$options = Get-VBRJobOptions $job
$Options.ViSourceOptions.VMToolsQuiesce = $True
Set-VBRJobOptions -job $job -options $options
}

Veeam. Проблема с бекапом на ленту

В случае если у вас Veeam Backup выдает ошибку «Failed to start new tape backup session: Failed to get last session number, sessions map is empty» или «Failed to get last session number, sessions map is empty. Failed to get last session number, sessions map is empty.«, знайте, что нужно найти последнюю использованную кассету и очистить ее.  После этого можно запускать бекап на ленту вновь и он должен успешно начаться.
У меня эта ошибка началась после того как база Veeam Backup перестала быть доступной в момент бекапа на ленту. Бекап аварийно завершился и больше не запускался, выпадая с ошибкой, указанной выше.

Veeam. Ошибка при бекапе SQL 0x800401fd. Failed to invoke func [ExploreInstances]

В версии 9.5.4.2866 сервера для резервного копирования Veeam Backup & Replication похоже есть небольшая проблема при бекапе логов MS SQL. В процессе их копирования можно столкнуться иногда с ошибкой Ошибка при бекапе SQL 0x800401fd. Failed to invoke func [ExploreInstances].

Для решения этой проблемы есть фикс, который можно скачать по ссылке. А вот инструкция по его установке от сотрудника поддержки Veeam:
1. Остановите все задания, в том числе бекап логов (для этого придется перевести исходные задания в статус Disabled, см. https://helpcenter.veeam.com/docs/backup/hyperv/starting_transaction_log_jobs.html?ver=95u4#parent).
2. Закройте консоль Veeam, остановите все службы Veeam на всех серверах, которые могут использоваться в качестве Guest Interaction Proxy (в вашем случае, судя по всему, используется только admin-srv, но, пожалуйста, проделайте эту операцию на всех возможных узлах)
3. На сервере Veeam и всех используемых Guest Interaction Proxy перейдите в каталог C:\Program Files (x86)\Veeam\Backup Transport\GuestInteraction и переименуйте файл Veeam.Guest.Interaction.Proxy.exe в Veeam.Guest.Interaction.Proxy.exe_orig
4. Замените файл на новую версию из загруженного архива.
5. Запустите все службы Veeam (порядок произвольный) на серверах, откройте консоль, включите задания резервного копирования

Veeam BR: Сбор информации о способах бекапа SQL-серверов

Привет!
Понадобилось выяснить как резервируются сервера SQL в Veeam Backup & Replication. Как известно, их можно бекапить несколькими способами

Вариант бекапа «Try application processing, but ignore failures» у меня не используется, поэтому в скрипте он не обрабатывается. Проверка идет только заданий типа «Windows Agent Backup» и «VMware Backup», то есть Linux, Copy Backup и ленты я не рассматриваю.

Add-PSSnapin VeeamPSSnapIn
$Jobs = Get-VBRJob | where {($_.IsScheduleEnabled -like "True") -and ($_.VssOptions.VssSnapshotOptions.ApplicationProcessingEnabled -like "True") -and ($_.VssOptions.VssSnapshotOptions.Enabled -like "True") -and (($_.TypeToString -like "Windows Agent Backup") -or ($_.TypeToString -like "VMware Backup"))}
foreach ($Job in $Jobs)
{
$Objects = $Job.GetObjectsInJob()
foreach ($Object in $Objects)
{
if (($Object.VssOptions.VssSnapshotOptions.Enabled -like 'True') -and ($Object.VssOptions.VssSnapshotOptions.IgnoreErrors -like 'False'))
{
if ($Object.VssOptions.VssSnapshotOptions.IsCopyOnly)
{
Write-Host "-----------------------------------------------------------------"
Write-Host "Имя задания: " $Job.Name
Write-Host "Имя сервера: " $Object.Name
Write-Host "Тип бекапа SQL: Transaction logs copy only (Lets another application use logs)"
}
else
{
if ($Object.VssOptions.SqlBackupOptions.TransactionLogsProcessing -like 'NeverTruncate')
{
Write-Host "-----------------------------------------------------------------"
Write-Host "Имя задания: " $Job.Name
Write-Host "Имя сервера: " $Object.Name
Write-Host "Тип бекапа SQL: Do not truncate logs (Simple Recovery Model)"
}
if ($Object.VssOptions.SqlBackupOptions.TransactionLogsProcessing -like 'TruncateOnlyOnSuccessJob')
{
Write-Host "-----------------------------------------------------------------"
Write-Host "Имя задания: " $Job.Name
Write-Host "Имя сервера: " $Object.Name
Write-Host "Тип бекапа SQL: Truncate logs (prevents logs from growing forever)"
}
if ($Object.VssOptions.SqlBackupOptions.TransactionLogsProcessing -like 'Backup')
{
$Time_min = $Object.VssOptions.SqlBackupOptions.BackupLogsFrequencyMin
Write-Host "-----------------------------------------------------------------"
Write-Host "Имя задания: " $Job.Name
Write-Host "Имя сервера: " $Object.Name
Write-Host "Тип бекапа SQL: Backup SQL logs every $Time_min minutes"
}
}
}

}
}

Время хранения резервной копии при экспорте или при VeeamZIP в Veeam BR

Как можно узнать время на которое оставили бекап при его экспорте 

или при VeeamZIP?

Интерфейс Veeam не позволяет эту информацию получить.
Да, можно это поглядеть в логах History-Restore-Export, но это не совсем удобно, если процесс экспорта бекапа был очень давно.
Как же посмотреть эту информацию:
1) для экспортированного бекапа заходим в Backups — Disk (Imported) и в названии Job Name будет отображаться второй датой время удаления бекапа (Первая дата — время экспорта)
2) Для VeeamZIP в разделе Home — Backups — Disk (VeeamZIP) это время не отображается (только время запуска VeeamZIP), поэтому нужно зайти в базу данных Veeam BR и в таблице dbo.Backup.Model.VeeamZIPRetention в столбце retain_datetime будет дата удаления архива. Сам бекап, который будет удален, будет отображаться в столбце target_file. В этой же таблице отображается информация о времени хранения бекапов при экспорте. У них значение в столбце target_file пустое.
Надеюсь такую важную информацию о бекапах выведут на видное место в новой версии Veeam. (как вариант, чтобы было похоже вкладку Tape Infrastructure — Media Pools — Ваш пул)