Ошибка 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

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

Ошибка при обновлении ESXi «Error while waiting for untar process»

Столкнулся с очередной ошибкой при установке патча VMware-ESXi-7.0U3q-23794027:

esxupdate: ERROR: esximage.Errors.InstallationError: VMware_locker_tools-light_12.3.5.22544099-23794019: Error while waiting for untar process ‘[‘/bin/tar’, ‘xzf’, ‘-‘, ‘-C’, ‘/locker/packages/’]’: Timeout (30 seconds) expired waiting for output from command ‘[‘/bin/tar’, ‘xzf’, ‘-‘, ‘-C’, ‘/locker/packages/’]’

На сайте Broadcom появилась свежая статья с описанием и решением данной проблемы. Повторять ее не вижу смысла, хотелось лишь только добавить, что после последнего шага
vsish -e set /config/VisorFS/intOpts/VisorFSPristineTardisk 1
необходимо установить проблемный vib вручную (в статье это сказано по моему не однозначно)
esxcli software vib install -v /vmfs/volumes/../VMware_locker_tools-light_12.3.5.22544099-23794019.vib
Пакет VMware_locker_tools-light_12.3.5.22544099-23794019.vib скачивается отсюда.

Ошибка «Vmkernel module necessary for this vsi call not loaded» при добавлении NFS-датастора на ESXi

Привет! Если после перезагрузки у вас на ESXi пропали датасторы или не добавляются с ошибкой
An error occurred during host configuration.
Operation failed, diagnostics report: Unable to complete Sysinfo operation. Please see the VMkernel log file for more details.: Vmkernel module necessary for this vsi call not loaded


проделайте следующие действия:

  1. Зайдите на проблемный ESXi-хост по SSH и выполните команду:
    esxcli storage nfs list если ошибка аналогичная, то это скорее все наш случай, переходим к следующим шагам
  2. Проверяем что модули nfs не загружены в ядро
    vmkload_mod -l | grep 'nfs'
  3. Загружаем модули NFS в ядро
    vmkload_mod nfs41client
    vmkload_mod nfsclient
  4. Включаем загрузку модуля при включении ESXi
    esxcfg-module -e nfs41client
    esxcfg-module -e nfsclient
  5. Выполняем команду
    esxcli storage nfs list, теперь она должна выполниться успешно. Если там есть NFS-датасторы в отключенном состоянии, то удаляем их командой esxcli storage nfs remove -v "Volume Name"
  6. Перезагружаем ESXi
    reboot
  7. После перезагрузки добавляем NFS-датасторы, ошибок теперь быть не должно.

Veeam Backup error: Skipping database located on excluded virtual disk

Если в процессе бекапа логов по расписанию с виртуальной машины, на которой крутится  база данных MS SQL средствами Veeam Backup столкнетесь с ошибкой:
Skipping database located on excluded virtual disk
и при этом никаких исключений не создано в задаче бекапа, то в первую очередь проверьте что у вас не включена фича MPIO на проблемном сервере. Она осталась включенной после того, как сервер был виртуализован из физического, а роль не была удалена. После ее удаления и полного бекапа сервера, бекап логов по расписанию заработал.

Ошибка в задаче бекапа Veeam Agent

Veeam агент версии — 6.1.0.349
Veeam сервер версии — 12.1.1.56
При бекапе агентом одного из физических серверов возникла ошибка:
Error: AgentManagerService: Failed to start agent, Host ‘MBX01’. The remote procedure call was cancelled. RPC function call failed. Function name: [DoRpc]. Target machine: [::1]
В логах Veeam ничего дополнительного не нашел. Для устранения этой ошибки помог перезапуск сервиса VeeamEndpointBackupSvc на проблемном сервере. Причем сервис не хотел останавливаться, пришлось останавливать процесс Veeam.EndPoint.Service.exe вручную через Task Manager

Скрипт на powershell обновления прошивок iLO

Import-Csv "C:\Users\username\Desktop\servers.csv" -Delimiter ';' -Encoding UTF8 | ForEach-Object {
$con = Connect-HPEiLO -Address $_.'Интерфейс управления' -Username 'username' -Password 'password' -DisableCertificateAuthentication
IF (($con.TargetInfo.iLOGeneration -eq 'iLO4') -and ($con.TargetInfo.iLOFirmwareVersion -ne '2,82')) {
Update-HPEiLOFirmware -Connection $con -Location "C:\Users\username\Desktop\ilo4_282.bin" -UploadTimeout 700 -Confirm:$false -Force
}
IF (($con.TargetInfo.iLOGeneration -eq 'iLO5') -and ($con.TargetInfo.iLOFirmwareVersion -ne '2,99')) {
Update-HPEiLOFirmware -Connection $con -Location "C:\Users\username\Desktop\ilo5_299.bin" -UploadTimeout 700 -Confirm:$false -Force
}
}

Обратите внимание на выделенные строки, там нужно вписать правильные значения. После обновления версию прошивки можно проверить командой:
Get-HPEiLOFirmwareVersion -Connection $con | select IP, FirmwareVersion

Скрипт массового изменения настроек заданий 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
}

Скрипт вывода информации о занятом и выделенном дисковом пространстве в кластере vSphere

Get-Module -ListAvailable VMware* | Import-Module
$vcservers = "адрес сервера vSphere"
$username = "имя пользователя"
$report = @()
$Used = 0
$Unused = 0
$AllUsed = 0
$AllAllocated = 0
Connect-VIServer $vcservers -User $username -Password 'пароль пользователя'

$allvms = Get-Cluster -name ‘имя кластера‘ | Get-VM
foreach ($VMName in $allvms){
$Server = Get-VM $VMName | Get-View
foreach ($size_com in $($Server.Storage.PerDatastoreUsage).Committed) {
$Used += $size_com
}
foreach ($size_uncom in $($Server.Storage.PerDatastoreUsage).Uncommitted) {
$Unused += $size_uncom
}
$Used = [math]::Round((($Used)/1024/1024/1024),2)
$Unused = [math]::Round((($Unused)/1024/1024/1024),2)
$Allocated = $Used + $Unused
$row = «» | select ‘Имя сервера’, ‘Занято(ГБ)’, ‘Выделено(ГБ)’
$row.’Имя сервера’ = $VMName
$row.’Занято(ГБ)’ = $Used
$row.’Выделено(ГБ)’ = $Allocated
$report += $row
$AllUsed += $Used
$AllAllocated += $Allocated
}
$report | ft
Write-Host «Всего занято дискового пространства (ГБ): $AllUsed»
Write-Host «Всего выделено дискового пространства (ГБ): $AllAllocated»
Disconnect-VIServer $vcservers -Confirm:$False

Проблема с Zabbix Appliance

Проблема:
Скачал и установил готовый appliance от zabbix . Но с ним есть проблемы — при создании снапшота виртуальная машина перестает работать, а при запуске ее вновь ошибка Object type requires hosted I/O Failed to start the virtual machine. Module Disk power on failed. Cannot open the disk ‘/vmfs/volumes/5bcda19c-7fdf91a6-d95f-2c768aae1eb8/zabbix/zabbix_appliance-6.4.10-disk1.vmdk’ or one of the snapshot disks it depends on. После этого ее удается запустить только после исправления виртуального диска командой vmkfstools -x repair. Пытался изменить настройки виртуальной машины, вместо ide контроллера для диска выбирал SCSI, ошибка Unsupported or invalid disk type 7 for ‘scsi0:0’. Ensure that the disk has been imported. Failed to start the virtual machine. Module DevicePowerOn power on failed. Unable to create virtual SCSI device for scsi0:0, ‘/vmfs/volumes/5bcda19c-7fdf91a6-d95f-2c768aae1eb8/zabbix/zabbix_appliance-6.4.10-disk1.vmdk’. Снапшот на выключенной виртуальной машине делается без ошибок.
VMware ESXi, 7.0.3, 21424296
vCenter 7.0.3 22357613
Решение:
Смотрим что творится с дисками виртуальной машины:

Открываем содержимое диска, которое занимает меньше всего пространства и видим:


Видим, что тип диска Sparse, который имеет формат split, делящий диск на 2ГБ куски. Такой тип диска поддерживается  в работе Vmware Workstation. Чтобы корректно работать с ним на VMware Esxi необходимо выполнить конвертацию  диска:

vmkfstools -i zabbix_appliance-6.4.10-disk1.vmdk zabbix_appliance-6.4.10-disk1_new.vmdk

Добавляем новый диск к ВМ, вместо старого
Удаляем старый диск вместе с дескриптором:

vmkfstools -U zabbix_appliance-6.4.10-disk1.vmdk

Скрипт вывода в CSV занятого пространства на каждом датасторе для всех включенных виртуальных машин в кластере VMware

$VCServer = 'fqdn vcenter сервера'
$VC = Connect-VIServer $VCServer -User 'учетная запись vCenter' -Password 'пароль для учетной записи'
$report = @()
$allvms = Get-Cluster VM-Cluster05 | Get-VM | where {$_.PowerState -eq "PoweredOn"}
foreach ($vm in $allvms) {
$vmview = $vm | Get-View
foreach($disk in $vmview.Storage.PerDatastoreUsage){
$dsview = (Get-View $disk.Datastore)
$dsview.RefreshDatastoreStorageInfo()
$row = "" | select VMNAME, DATASTORE, VMUSED_GB
$row.VMNAME = $vmview.Config.Name
$row.DATASTORE = $dsview.Name
$row.VMUSED_GB = [math]::round((($disk.Committed)/1024/1024/1024),0)
$report += $row
}
}
$report | Export-Csv "C:\Temp\vm_ds.csv" -NoTypeInformation
Disconnect-VIServer $VC -Confirm:$False