Project

General

Profile

coordination #100688

Updated by okurz about 2 years ago

## Observation ** Description 
 In vmware 7.0, the VNC vnc server is completely removed. However the svirt backend that is used to do vmware virtualization tests heavily relies on VNC vnc to interact with guests. guest. So we have to rework the this backend to make it compatible with vmware 7.0, while keeping the current way still works for vmware 6.5. 
 

 ** Vmware7.0 supported connection ways to get graphic connection with guest: 

 In vSphere 7.0, the ESXi built-in VNC server has been removed. Users will no longer be able to connect to a virtual machine using a VNC client by setting the RemoteDisplay.vnc.enable configure to be true.  
 Instead, users should use the VM Console via the vSphere Client, the ESXi Host Client, or the VMware Remote Console, to connect virtual machines. Customers desiring VNC access to a VM should use the VirtualMachine.AcquireTicket("webmks") API, which offers a VNC-over-websocket connection. The webmks ticket offers authenticated access to the virtual machine console. For more information, please refer to the VMware HTML Console SDK Documentation(http://www.vmware.com/support/developer/html-console/). 

 ### ** Impact of this ticket ticket: 
 It blocks all VT test on vmware 7.0. 
 According to latest info from Ralf, vmware cloud will potentially be used by SAP as a replacement of xen. So we should give high enough priority to vmware testing. And 7.0 is the current latest vmware version. 

 ## Acceptance criteria 
 * **AC1:** There is support for Vmware7.0 in os-autoinst to get a graphical connection with guests comparable to existing openQA tests 

 ## Suggestions 
 * Research task #106083 : Learn about VirtualMachine.AcquireTicket("webmks") API first and refine ticket to understand if we can use "VNC as-is" or need further tunneling, etc. 
 * Download evaluation version of VMWare 7, install it locally (your notebook or workstation), try to get something running locally 
 * Look into the `VirtualMachine.AcquireTicket("webmks") API` thingy 
 * Optional: Integration tests using evaluation version of vmware. Alternative: Document how to test manually, e.g. just in the git commit 
 * Create pull request and ask domain experts to test in their near-production or production environment before going ahead

Back