Problem
- VMotion fails at 80%
- In vCenter Server, an error window appears with a message similar to one of the following
-
- A general system error occurred: Failed to write checkpoint data (offset 33558328, size 16384): Limit exceeded
- A general system error occurred: Failed waiting for data. Error bad0007. Bad parameter.
- A general system error occurred: failed to initiate VMotion dest (vim.fault.InvalidState).
- The vmware.log for the virtual machine being migrated has entries similar to:May 26 12:06:08.162: vmx| Migrate_SetFailure: Now in new log file.
May 26 12:06:08.167: vmx| Migrate_SetFailure: Failed to write checkpoint data (offset 33558528, size 16384): Limit exceeded
May 26 12:06:08.186: vmx| Msg_Post: Error
May 26 12:06:08.186: vmx| [vob.vmotion.write.outofbounds] VMotion [c0a8644e:1243364928717250] failed due to out of bounds write: offset 33558528 or size 16384 is greater than expected
May 26 12:06:08.186: vmx| [msg.checkpoint.migration.openfail] Failed to write checkpoint data (offset 33558528, size 16384): Limit exceeded.
May 26 12:06:08.187: vmx| —————————————-
May 26 12:06:08.190: vmx| MigrateWrite: failed: Limit exceeded - The hostd.log for the source or destination host may contain entries similar to:[2009-10-05 15:01:50.082 F6512B90 info ‘vm:/vmfs/volumes/fff91bd3-41793f11/ITGVMS01-13/ITGVMS01-13.vmx’] Question info: VMotion [a210935:125476923788 2447] failed due to out of bounds write: offset 33562624 or size 16384 is greater than expected
[2009-10-05 15:01:50.177 F66C96D0 verbose ‘vm:/vmfs/volumes/fff91bd3-41793f11/ITGVMS01-13/ITGVMS01-13.vmx’] Retrieved current VM state from found ry 5, 2
[2009-10-05 15:01:50.178 F66C96D0 verbose ‘vm:/vmfs/volumes/fff91bd3-41793f11/ITGVMS01-13/ITGVMS01-13.vmx’] VMotionLastStatusCb: Failed with error 536870918: Failed waiting for data. Error bad0006. Limit exceeded.
[2009-10-05 15:01:50.182 F66C96D0 info ‘VMotionDst (1254769237882447)’] ResolveCb: Failed with fault: (vmodl.fault.SystemError) { dynamicType = <unset>,
faultCause = (vmodl.MethodFault) null,
reason = “Failed waiting for data. Error bad0006. Limit exceeded.
Resolution
This issue is resolved in ESX/ESXi 4.0 Update 1. You can download ESX/ESXi 4.0 Update 1 from the vSphere download page.
Prior to ESX/ESXi 4.0 Update 1, this issue may occur if Video RAM (VRAM) is greater than 30MB for a virtual machine.
Note: Using VMotion to migrate a virtual machine with VRAM greater than 30MB to an ESX/ESXi 4.0 Update 1 host might prevent you from migrating it back to a host that does not have this fix.
To workaround this issue if you cannot upgrade to ESX/ESXi 4.0 Update 1, ensure that the amount of VRAM assigned to the virtual machine is 30MB or less.
vCenter Server 4.0
To change the amount of VRAM assigned to a virtual machine running on an ESX host managed by vCenter Server 4.0:
- Power off the virtual machine.
- Right-click on the virtual machine and click Edit Settings.
- Click Hardware > Video card > Enter total video RAM.
- Set the value to 30MB or less.
- Save the changes.
- Power on the virtual machine.
vCenter Server 2.5
To change the amount of VRAM assigned to a virtual machine running on an ESX host managed by vCenter Server 2.5:
- Power off the virtual machine.
- Record the path to the virtual machine configuration file (extension .vmx) on the ESX host.
- Right-click on the virtual machine and click Edit Settings > Options > General Options > Virtual Machine Configuration File.
- Log in to the ESX host as root using an SSH client.
- Make a backup copy of the .vmx file.
- The VRAM size is listed in the .vmx file for the virtual machine with a tag of svga.vramSize. It displays the value in bytes.
- Edit the .vmx file and change the value for svga.vramSize to 30MB or less.When set to 30MB, the entry reads svga.vramSize=31457280.
- Save the .vmx file.
- Remove the virtual machine from the Inventory in vCenter.
- Add the virtual machine to the Inventory in vCenter by browsing the datastore from vCenter to locate the .vmx file for the virtual machine, in the path noted at step 2 above.
- Right-click on the .vmx file and click Add to Inventory.
- Power on the virtual machine.