I have some big files inside VM which I need to copy to ESXi host datastore. What is the best/fastest method? Right now I am using vSphere Client inside the VM. VM is running in virtual network with another VM acting as a router to the outside world. As ESXi has different public IP than te router, traffic goes out to the physical network switch and back in over the same NIC. This is connected only at 100 Mbit, so the real speed is only about 4 MB/s.

Is it somehow possible to connect a VM to the VMkernel management network, so that ESX would handle the traffic itself?

Or is it possible to mount the vmdk of VM via command-line and copy the files to datastore locally?

  • Can you complete this bit please ...VM which I need to ESXi host datastore. . Is it access that is missing in the question or copy ..? – Oli Dec 20 '12 at 12:17
  • Well, if you start copying now, it'll be done in... – ewwhite Dec 20 '12 at 12:21
  • It should be "which I need to copy to the datastore" – Marki555 Dec 20 '12 at 12:37
  • why do you only get 4MB/s on your 100mbit network? – chewbakka Dec 20 '12 at 12:44
  • It's because the data from VM public IP travel to the physical switch and back to ESXi IP on the same NIC. So in reality it is 2x 4 MB/s over the wire. – Marki555 Dec 20 '12 at 13:04

If you add another NIC to the VM and create another VMkernel port and put them on a new IP range and making sure they VM and host are on the same vSwitch.
Then from the VM connect to the EXSi on the new IP then the transfer will say within the ESXi host and not leave the out via your NIC.

You could also create a new vSwitch which is not connected to a physical NIC to make sure the traffic stays with the host.

The vSphere client can also be a bit slow at file transfers, you might find using Veeam's FastSCP speeds up the transfer.

  • Thanks, this works! I have created new VMkernel port, added it to my internal vSwitch and assigned it IP from the subnet I am using on the VMs. – Marki555 Dec 20 '12 at 15:10

You could set up an NFS mount point, copy the files over to the NFS mount point outside the ESX i environment (pref on a 1Gb or 10gb lan), and then once copied, attach this NFS mount point to the ESXi environment. Other than that, browse datastore and upload the file and wait for Santa :)

  • But why copy it over the lan when I just want to copy from inside vmdk in datastore to the same datastore on the same physical machine... there must be a way how to do it :) – Marki555 Dec 20 '12 at 13:05
  • in that case, browse datastore the vmdk is on, right click, copy and paste? – Oli Dec 20 '12 at 13:18
  • I need files from inside the vmdk (not entire vmdk), that's why I'm asking if it is possible to mount/access the contents from vmdk locally on the esxi host... – Marki555 Dec 20 '12 at 13:32

You can add a "Host onlly" nic to your vm and a virtual nick to your ESXI and configure them to be on the same subnet, this is going to be much faster.

  • Do you know how to connect VM network with ESX kernel network? I have both ESX and VM IPs in the same subnet and the traffic still goes to external switch... – Marki555 Dec 20 '12 at 13:38
  • By adding a "Host onlly" nic – m0ntassar Dec 20 '12 at 13:43
  • Isn't "host only" a VMware workstation network type not an ESXi network type – Epaphus Dec 20 '12 at 14:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.