vCenter Server chooses from a list of ESX/ESXi hosts that can see shared datastores. vCenter Server picks the first one (when a download is done via the datastore browser in vSphere Client) or the last one (when a download is done via a browser connected to vCenter Server).
You can view which host vCenter Server is using by looking at trivia enabled vpxd logging for entries similar to:
Sending soap request to [TCP:<host2>:443]:<API-Name-Related to datastore browser>
where <host2> is the ESX/ESXi host that vCenter Server is using.
Example log output:
trivia 'vmomi.soapStub[36]' opID=C0BF1A5F-000003B2-db] Sending soap request to [<cs p:0000000021e0f6d0, TCP:esx12345.vmware.com:443>]: searchDatastore {}
For more information, see Enabling trivia logging in VirtualCenter (1001584).
Note: If you are trying to download a file such as a VMX from a powered-on VM on an ESXi host not currently selected by VPXD as the file access host, the download will fail because the file access host will not have access to the locked file.