We had couple of hardware failures, forcing us to build virtual machines using Oracle VirtualBox until we rebuilt the hardware. At organization level we have VMware standardized and according to the plans, initiated migrations from VirtualBox couple of days back.
New machines were created from ESXi 7 host, database backups were restored and applications were online & everything looked fine until we couldn’t get hold of a “chap” who provided us a small MS SQL based application that printed some Governmental forms (Arabic). To insure his “software” wouldn’t be pirated, he had password set to the database user account himself & dictated his own terms.
This forced us to think about alternatives and we decided to build another VM using disks from VirtualBox VM, painfully realizing, it was NOT that easy, however pretty doable.
Few points that I want to add here are:
ESXi creates the machine for EFI boot when much of the VMs you create using VirtualBox are using BIOS for firmware. Hence make sure that you will go to VM Options, Boot Options and select Firmware as “BIOS” before booting the VM after attaching the disks converted from VDI to vmdk following instructions from the above provided link.
Convert the VDI disks to fixed size before converting them to vmdk. This insures marginal performance gains, especially when disks are used for databases.
Use Winscp for large file transfers incase if you are using Windows & uploading disks to ESXi environments. Built-in datastore uploads could error out when file sizes are beyond a particular size. We had 2 vmdk files, exceeding 400GB and the 1st file upload stopped responding after 71%. We managed to upload these files (1 after another) in next 50 minutes using Winscp.
Insure your ESXi datastore has enough free storage because you will be converting the uploaded vmdk disks once again to suite the environment. Another suggestion is, do not convert multiple disks at same time. Going one after another insures that you get the maximum resources to convert files.
Above given link mentions about editing vmdk descriptor to change adapter type. In our case, it was not necessary. Adapter type was set “lsilogi” when we checked those files after last level conversions using vmkfstools. However, you must insure the same.