I used to be able to do this in shared workstation mode:
$ /usr/bin/vmrun -T ws-shared -h https://localhost:943/sdk -u user1 listRegisteredVM Total registered VMs: 23 [ha-datacenter/standard] WinVista/winVista.vmx [ha-datacenter/standard] RHEL6_x64/RHEL6.vmx [ha-datacenter/standard] VCS41_node1/VCS4.vmx [ha-datacenter/standard] VCS41_node2/VCS4.vmx [ha-datacenter/standard] VCS41_node3/VCS4.vmx [ha-datacenter/standard] VCS41_node4/VCS4.vmx [ha-datacenter/standard] VCS51_node1/VCS5.vmx [ha-datacenter/standard] VCS51_node2/VCS5.vmx [ha-datacenter/standard] VCS51_node3/VCS5.vmx [ha-datacenter/standard] WinXP/winXPPro.vmx [ha-datacenter/standard] VCS51_node4/VCS5.vmx [....]
Now, on VMW 12, I just get this failure:
$ /usr/bin/vmrun -T ws-shared -h https://localhost:943/sdk -u user1 listRegisteredVM Host password: Unable to connect to host. Error: The specified service provider was not found
Fortunately, vmrun (part of the VIX API bundle) is quite flexible and I just
found a workaround.
On a normal VMW 12 install, there's a text config file that lists the API endpoints:
$ cat /usr/lib/vmware-vix/vixwrapper-config.txt [....] # Workstation 12.0.0 ws 19 vmdb 12.0.0 Workstation-12.0.0 player 19 vmdb 12.0.0 Workstation-12.0.0 # Workstation 12.0.1 ws 19 vmdb 12.0.1 Workstation-12.0.0 player 19 vmdb 12.0.1 Workstation-12.0.0 # EOF
On VMW 11, you'll note that the 'ws-shared' entries are present whereas they are missing from VMW 12.
$ cat /usr/lib/vmware-vix/vixwrapper-config.txt [....] # Workstation 11.0.0 ws 17 vmdb 11.0.0 Workstation-11.0.0-and-vSphere-6.0.0 player 17 vmdb 7.0.0 Workstation-11.0.0-and-vSphere-6.0.0 ws-shared 17 none 11.0.0 Workstation-11.0.0-and-vSphere-6.0.0 # Workstation 11.1.0 ws 17 vmdb 11.1.0 Workstation-11.0.0-and-vSphere-6.0.0 player 17 vmdb 7.1.0 Workstation-11.0.0-and-vSphere-6.0.0 ws-shared 17 none 11.1.0 Workstation-11.0.0-and-vSphere-6.0.0 # Workstation 11.1.2 ws 17 vmdb 11.1.2 Workstation-11.0.0-and-vSphere-6.0.0 player 17 vmdb 7.1.2 Workstation-11.0.0-and-vSphere-6.0.0 ws-shared 17 none 11.1.2 Workstation-11.0.0-and-vSphere-6.0.0 # ESX/vSphere/Server2.0 support viserver 12 none 2.0.0 Workstation-11.0.0-and-vSphere-6.0.0 esx 12 none 4.0.0 Workstation-11.0.0-and-vSphere-6.0.0
The workaround is a two-part process:
- copy the libs from a VMW11 to your VMW12 install.
That's only the /usr/lib/vmware-vix/Workstation-11.0.0-and-vSphere-6.0.0
directory.
- edit vixwrapper-config.txt on VMW12 to add the missing entries and point to the libs you just copied over.
$ cd /usr/lib/vmware-vix $ diff -c vixwrapper-config.txt.orig vixwrapper-config.txt *** vixwrapper-config.txt.orig Fri Oct 30 11:52:49 2015 --- vixwrapper-config.txt Fri Nov 20 15:59:39 2015 *************** *** 26,34 **** --- 26,36 ---- # Workstation 12.0.0 ws 19 vmdb 12.0.0 Workstation-12.0.0 player 19 vmdb 12.0.0 Workstation-12.0.0 + ws-shared 19 none 12.0.0 Workstation-11.0.0-and-vSphere-6.0.0 # Workstation 12.0.1 ws 19 vmdb 12.0.1 Workstation-12.0.0 player 19 vmdb 12.0.1 Workstation-12.0.0 + ws-shared 19 none 12.0.1 Workstation-11.0.0-and-vSphere-6.0.0 # EOF
That's the end of the story, vmrun works again with VMW 12 in Shared VMWare Workstation mode...:
$ /usr/bin/vmrun -T ws-shared -h https://localhost:943/sdk -u user1 listRegisteredVM Host password: Total registered VMs: 42 [ha-datacenter/standard] VCS41_node1/VCS4.vmx [ha-datacenter/standard] VCS41_node2/VCS4.vmx [ha-datacenter/standard] VCS41_node3/VCS4.vmx [ha-datacenter/standard] VCS41_node4/VCS4.vmx [ha-datacenter/standard] VCS51_node1/VCS5.vmx [ha-datacenter/standard] VCS51_node2/VCS5.vmx [ha-datacenter/standard] VCS51_node3/VCS5.vmx [ha-datacenter/standard] WinXP/winXPPro.vmx [ha-datacenter/standard] VCS51_node4/VCS5.vmx [ha-datacenter/standard] DOS622/dos.vmx [ha-datacenter/standard] Beini_122/Beini.vmx [....]
For your convenience, I placed a zip file here with the proper files on my site.
Extract with:
$ sudo unzip -o -d / vmrun_ws-shared_VMW12.zip