Skip to content

Author: Luciano Batalha

Veeam – Issue after patch to version 12.0.0.1420_20230718

After installing the patch 12.0.0.1420_20230718 we got this issue when open the console “could not create unique index “backups_tem_id_idx” checking the logs we can found this.

[23.08.2023 10:54:36.982] <21> Error        could not create unique index “backups_temp_id_idx” (Veeam.Backup.Common.CPsqlException)
[23.08.2023 10:54:36.982] <21> Error        [CExceptionHandlingDBAccessorDecorator]
[23.08.2023 10:54:36.982] <21> Error        —————————————————————-
[23.08.2023 10:54:36.982] <21> Error        Stored procedure execution failed:
[23.08.2023 10:54:36.982] <21> Error        —————————————————————-
[23.08.2023 10:56:27.923] <01> Error        Backup service has failed.

This is a known issue and Veeam provide the hotfix. Please download the hotfix from here and follow the next steps: https://storage.veeam.com/Fix_550096_f09100c493.zip

1. Make sure your build version is 12.0.0.1420 P20230718

2. Make sure no Jobs or Restores are running.

3. Run veeam_backup_12.0.0.1420_PrivateFix_TF550096.exe as Admin

Remove vSphere Replication flag from VM

In my case the customer removed the vSphere replication appliance, so I needed removed all vsphere replications.

  1. Login to ESXi
  2. Execute this command to list the VMS
    vim-cmd vmsvc/getallvms | awk ‘$3 ~ /^\[/ {print $1}’
  3. Execute this command to remove the flag (you need replace VM id)
    vim-cmd hbrsvc/vmreplica.disable 1011

Powershell command to Identify the Virtual Machine with CDROM Connect

Keeping CDROMs plugged into Virtual Machines can inhibit DRS/vMotion from working well for these Virtual Machines, as such it is best practice to remove CDROMs when not needed, so follow the commands to identify them.

List all Virtual Machine with CDROM connect:

Get-VM | Get-CDDrive | Where {$_.extensiondata.connectable.connected -eq $true} | Select Parent

Disconnect all CDROM from all Virtual Machine

Get-VM | Get-CDDrive | Where {$_.extensiondata.connectable.connected -eq $true} | Set-CDDrive -NoMedia -confirm:$false

Method to Install VMware PowerCLi

Offline Installation of VMware PowerCLI Module

  • Login to a desktop  with internet access and open powershell (Execute as administrator)
  • Find-Module -Name VMware.PowerCLI
  • Save-Module -Name VMware.PowerCLI -Path Path
  • Copy the files you downloaded to the offline desktop
  • Move the copied files to C:\Windows\System32\WindowsPowerShell\v1.0\Modules (Execute as administrator)

Install VMware PowerCLI Module From PC With Internet Connection

  • From a desktop with an internet connection open powershell (Execute as administrator)
  • Find-Module -Name VMware.PowerCLI
  • Install-Module -Name VMware.PowerCLI -Scope CurrentUser
  • Get-Command -Module *VMWare*

Failed to enter namespaces maintenance mode due to Error com.vmware.vapi errors.unauthenticated

You can’t put your host in maintenance due to this error “Failed to enter namespaces maintenance mode due to Error com.vmware.vapi errors.unauthenticated

It’s time to check if you have a certificate expired, login to VCSA over ssh and execute this command:
for store in $(/usr/lib/vmware-vmafd/bin/vecs-cli store list | grep -v TRUSTED_ROOT_CRLS); do echo “[*] Store :” $store; /usr/lib/vmware-vmafd/bin/vecs-cli entry list –store $store –text | grep -ie “Alias” -ie “Not After”;done;

The WCP certificate are expired

[*] Store : wcp
Alias : wcp
Not After : Jan 10 11:48:31 2023 GMT

To renew the certificate execute this command /usr/lib/vmware-vmca/bin/certificate-manager with option 6 “Replace Solution user certificates with VMCA certificates”

Disable vCLS

1.Log in to the vSphere client and navigate to the cluster on which you want to disable vCLS.
2.Copy the cluster domain ID from the URL of the browser. It should be similar to domain-c(number).
The URL will be something like this:

https://<fqdn-of-vCenter-server>/ui/app/cluster;nav=h/urn:vmomi:ClusterComputeResource:domain-c3607:1A5CDE27-53A4-435D-88B7-1A072F54A13C/summary

Copy the domainc##### part

3. go to vcenter –} advanced settings –} edit settings
4. Add a new entry, config.vcls.clusters.domain-c(###number).enabled. Use the domain ID copied in Step 2.
5. Set the Value to True
6. Click Save.