vCenter file based restore fails with "RestoreManager encountered an exception"
search cancel

vCenter file based restore fails with "RestoreManager encountered an exception"

book

Article ID: 398749

calendar_today

Updated On:

Products

VMware vCenter Server

Issue/Introduction

  • VAMI file based restore of the vCenter server fails at stage 2 with the below error:
    RestoreManager encountered an exception

  • When reviewing /var/log/vmware/applmgmt/restore.log on the restored vCenter VM, the below errors are seen:

YYYY-MM-DD T HH:MM:SS [20250522-190732-24614210] [VCDBRestore:PID-8779] [VCDB::_verify_glibc_version_compatibility:VCDB.py:1775] INFO: Verify that the version of glibc used in the data folder and the version of the system are the same
YYYY-MM-DD T HH:MM:SS [20250522-190732-24614210] [VCDBRestore:PID-8779] [Proc::RunCmdForOutput:Proc.py:537] INFO: Executing command: ['su', '-s', '/bin/bash', '-', 'vpostgres', '-c', '/opt/vmware/vpostgres/current/bin/pg_mark_glibc'].
YYYY-MM-DD T HH:MM:SS [20250522-190732-24614210] [VCDBRestore:PID-8779] [VCDB::_verify_glibc_version_compatibility:VCDB.py:1801] ERROR: glibc version of system 2.28 and of data folder 2.36 do not match
YYYY-MM-DD T HH:MM:SS [20250522-190732-24614210] [VCDBRestore:PID-8779] [VCDB::RestoreVCDB:VCDB.py:2219] ERROR: Encounter error during restore VCDB.
Traceback (most recent call last):
  File "/usr/lib/applmgmt/backup_restore/py/vmware/appliance/backup_restore/components/VCDB.py", line 2167, in RestoreVCDB
    backup_label_archive)
  File "/usr/lib/applmgmt/backup_restore/py/vmware/appliance/backup_restore/components/VCDB.py", line 1692, in _restore_full_database
    _verify_glibc_version_compatibility()
  File "/usr/lib/applmgmt/backup_restore/py/vmware/appliance/backup_restore/components/VCDB.py", line 1802, in _verify_glibc_version_compatibility
    raise Exception(err_msg)
Exception: glibc version of system 2.28 and of data folder 2.36 do not match
YYYY-MM-DD T HH:MM:SS [20250522-190732-24614210] [MainProcess:PID-8740] [Proc::VerifyProcStatusAndGetArchive:Proc.py:158] ERROR: Error at process VCDBRestore; rc:1.
YYYY-MM-DD T HH:MM:SS [20250522-190732-24614210] [MainProcess:PID-8740] [Proc::VerifyProcStatusAndGetArchive:Proc.py:162] ERROR: stderr:glibc version of system 2.28 and of data folder 2.36 do not match
YYYY-MM-DD T HH:MM:SS [20250522-190732-24614210] [MainProcess:PID-8740] [Proc::VerifyProcStatusAndGetArchive:Proc.py:172] INFO: Following error message isn't localized:
  stderr:glibc version of system 2.28 and of data folder 2.36 do not match
YYYY-MM-DD T HH:MM:SS [20250522-190732-24614210] [MainProcess:PID-8740] [RestoreManager::main:RestoreManager.py:639] ERROR: RestoreManager encountered an exception: Hit exception inside process VCDBRestore:
YYYY-MM-DD T HH:MM:SS [20250522-190732-24614210] [ComponentScriptsRestore:PID-8778] [RestoreManager::CancelRestore:RestoreManager.py:561] INFO: Received signal 15. Started to cancel the restore job.
YYYY-MM-DD T HH:MM:SS [20250522-190732-24614210] [ComponentScriptsRestore:PID-8778] [RestoreManager::CancelRestore:RestoreManager.py:570] INFO: Ignore to cancel the restore job, since the signal 15 was not issued to main process of restore job(pid: 8740) directly but a child process(pid: 8778) of the restore job.
YYYY-MM-DD T HH:MM:SS [20250522-190732-24614210] [MainProcess:PID-8740] [RestoreManager::HandleRestoreCleanup:RestoreManager.py:495] ERROR: Restore cleanup failed to complete.

Environment

VMware vCenter 7.x

Cause

This was caused due to incorrect glibc RPM packages on the source vCenter.
Because of this, the VAMI backup files include the incorrect glibc version which fails during VCDB restore validation.

Resolution

The below steps can be followed to modify the incorrect GLIBC_VERSION file that is causing a VAMI file-based restore to fail.

1) Copy the VAMI backup files to any linux machine (a VCSA server would work as well).
 
2) As "GLIBC_VERSION" file is part of the database_full_backup.tar.gz VAMI backup file, unzip the archive.
   tar -xvzf database_full_backup.tar.gz
 
3) In the extracted location, navigate to storage/db/vpostgres and edit the GLIBC_VERSION file.
 
4) Update the correct glibc version here (ex: 2.28).
   Note: You can find the exact glibc version by reviewing the version of the rpm from a working vCenter server.
   rpm -qa | grep -i glibc
   
5) Repackage the extracted folders.
   tar -czvf database_full_backup.tar.gz *
   
6) Find the new SHA256 checksum of the repackaged tar.gz file
   sha256sum database_full_backup.tar.gz
   
7) Copy the modified database_full_backup.tar.gz file to the VAMI backup folder and update the checksum from step 6 in the backup-metadata.json file
   Ex:
          "VCDB": [
            {
                "Name": "VCDB",
                "FileName": "database_full_backup.tar.gz",
                "Checksum": "###########################################"

8) Restore vCenter using the modified VAMI backup files.