Report on virtualisation technology as used at the EPO for ...


Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Report on virtualisation technology as used at the EPO for ...

  1. 1. Report on virtualisation technology as used at the EPO for Online Filing software testing Virtualisation technology lets one computer do the job of multiple computers, all sharing the resources - including CPU, memory, disk and network - of a single computer. Virtual machines, a common solution for desktop virtualisation, are containers running a guest operating system, independent of the host operating system. The EPO uses a virtual machine for Online Filing software development and testing, but it does not officially support the use of the Online Filing software in virtual environments, as the software has not been validated or released for them. However, many users are successfully running the Online Filing software using a variety of virtualisation technologies and deployments. The EPO has therefore set up a knowledge base to facilitate the sharing of information and experience within the Online Filing user community. You can add your tips, tricks and questions to the "Virtualisation" section of the Online Services forum at All contributions are welcome. A. Purpose of the document This document describes the virtualisation techniques used for testing the Online Filing software. 1. Definitions • virtual machine: a container running a guest operating system, independent of the host operating system • virtual server: a server hosting multiple operating systems and multiple applications locally and in remote locations, freeing you from physical and geographical limitations • Online Filing software: tool used for computer-based filing of patent applications, designed as a server- client software solution. User guidance available at (Downloadcenter->Documentation) • VMWare: software used as a virtualisation platform 2. Abbreviations • OS operating system • VM virtual machine • OLF Online Filing • IP internet protocol • NAT network address translation
  2. 2. B. Overview 1. Intended use A virtual machine is a container that runs a guest operating system, independent of the host operating system. The intended use of virtual machines at the EPO is desktop virtualisation for OLF software development and testing purposes. This deployment allows different operating systems to be run on a single workstation. A virtual server is able to host multiple operating systems and multiple applications locally and in remote locations, freeing you from physical and geographical limitations. Currently this approach requires additional investment in hardware and software infrastructure, and to date it has not been used at the EPO for OLF software development. The intended use of virtualisation for OLF software at the EPO is to support the development and testing process. The main reasons are: • efficient use of hardware resources, resource availability • energy savings and lower capital expenditure • faster and easier access to OLF on different operating systems and deployments • better management and fast access to earlier/different versions and builds • fast installation, easy administration and fast backup 2. Selection of virtualisation solutions The EPO virtualisation environment used to develop and test the OLF product software is categorised as non- product software. According to this category, the virtualisation solution needs to handle the following requirements: • support for multiple 32-bit/64-bit OSs on the same machine for the most common Windows/Linux derivatives • support for multiple virtual desktops containing OLF servers and multiple thin clients • no restrictions on dedicated hardware or OS setup • no additional investment in hardware or software or administration knowledge • full integration into the distributed test network and remote connectivity There are multiple solutions and companies offering virtual servers and virtual machines. The big players include: VMWare, Microsoft, Citrix. The solution which fulfils all the above-mentioned requirements is provided by VMWare with its products VMWare Player and Workstation for Desktop Virtualisation ( According to the VMWare Compatibility List (CL), the Player and Workstation have no additional hardware preconditions and are able to run on the existing hardware and operating systems used in the EPO development and testing environment. As of today, the CL can be found under: • • •
  3. 3. C. Deployment and environment 1. Runtime environment at the EPO VMWare Player and Workstation are used as a virtual machine for desktop virtualisation. The user can stop and start the virtual machine deployed on his computer or on a remote computer. With the more advanced VMWare Workstation he can take snapshots, and manage snapshots already taken. Spatially, the following OLF test cases are performed within this virtual environment: • installation and integration of various OLF server/client setups • interoperability/communication between server/client in different OSs • OS-related topics according to OLF server/client releases The following figure shows a deployment used for OLF testing. The matrix within the table shows the OS used on the host computer and virtual machine to perform the tests. Server any hosting OS Virtual machine Workstation Windows Workstation any OS Workstation any OS guest Windows VM Workstation VM player guest Windows guest Windows OLF server OLF client OLF client OLF client OS on host OS on guest OLF client OLF server Local PMS system Windows XP XP 32-bit X X X X 32-bit XP 64-bit X X X Win03 32-bit X X X Vista 32-bit enterpr. X X X Figure: Test deployment used for OLF testing The hosting workstation in the test environment meets the following conditions: • OS: Windows XP 32-bit Professional Version 2002 SP3 2.5 (English language) • hardware: Intel Pentium Dual CPU E2220 2.40GHz; 3.25GB of RAM The virtual machines in the test deployment are implemented by VMWare Player or Workstation as listed below. • VMWare Player 2.5.3 (for Windows systems) | 2009/08/21 | Build: 185404 • VMWare Workstation 6.5.3 (for Windows systems) 6.5.3 | 2009/08/21 | Build: 185404 • OS used within the virtual machine selected as shown in the table above (English language) • Hardware to host the virtual machine was selected from the VMWare hardware compatibility list
  4. 4. 2 Deployments All the deployments listed in the following chapters have been used for OLF testing and have their own advantages in terms of serviceability, testability and costs. The configurations for setting up the virtual machine deployments described in the following sections 2.1-2.5 are listed in Chapter 3. 2.1 Deployment: Virtual OLF server/clients hosted on same computer In the deployments listed below, the external devices such as smart card reader, CD/DVD and HDD are shared between the host and guest OS. • The local OLF installation is done in the guest OS. This deployment comprises both the OLF server and OLF client parts on the same virtual machine. It is a standalone application and excludes connectivity to further OLF clients. • The OLF client and OLF server are installed on the same virtual machine. This deployment allows further OLF clients to be connected. • The OLF client installed on the virtual machine is connected like any other OLF client to the OLF server installed on the host computer. • The OLF client installed on a virtual machine is connected like any other OLF client to the OLF server installed on another virtual machine. Figure: Virtualisation of OLF client/server on the same host computer. 2.2 Deployment: Virtual OLF server/client and remote desktop of OLF client hosted on same computer In addition to the real and virtual OLF clients, host computer "A" allows a Remote Desktop connection to another computer "B". Based on this connection, the OLF client installed on computer "B" is available on computer "A" and works with the smart card deployed on computer "A". Figure: Usage of the virtual OLF client via Remote Desktop
  5. 5. 2.3 Deployment: Remote use of the virtual OLF client/server via Remote Desktop A virtual machine hosted on computer "A" can be used via the Remote Desktop application (Start - Run - mstsc.exe) on another computer "B". Based on the Remote Desktop connection, the OLF client can be started and controlled from computer "B". The local resources of computer "B" such as hard disk and smart card can be used for the OLF client. The OLF server hosted on computer "A" can be installed directly on host computer "A" (real) or it can be installed within a virtual machine (virtual). Figure: Remote use of the virtual OLF client/server via Remote Desktop To implement this deployment, the IP conflict between the guest OS within the virtual machine and the host OS has to be resolved. Such conflicts exist because with the NAT network configuration of the virtual machine the host and guest OS are both sharing the same IP and port for Remote Desktop for the outside world. One solution is port forwarding. The NAT has to be configured in order to forward a port to the guest OS on the virtual machine. The VMWare Workstation supports this port forwarding configuration as shown in the following steps. • Open -> Virtual network settings -> NAT tab -> click on "EDIT" -> "Port Forwarding" -> in the "incoming TCP ports" section, click ADD • For the host port, pick a free port such as 9999 • For the virtual machine IP address enter the IP of the guest OS and port 3389 for Remote Desktop • For remote access to other virtual machines, additional port forwarding configuration has to be added. • For remote access to the guest OS from computer "B" via Remote Desktop, the host IP and the new identified port on the host are needed as parameters: "mstsc /V:VMWare_HOST_ip:9999" 2.4 Deployment: Virtual OLF clients on computer "B" access the real OLF server on computer "A"
  6. 6. A virtual machine with guest OS and OLF client hosted on a computer "B" can be connected to the real OLF installed on computer "A". The local resources of computer "B" such as hard disk and smart card can be used to work with the virtual OLF client. The OLF server hosted on computer "A" can be installed directly on the host computer (real) or within a virtual machine (virtual). Figure: Virtual OLF client on computer "B" communicates with real OLF server on computer "B" 2.5 Deployment: Virtual OLF clients on computer "B" access the virtual OLF server on computer "A" Implementation of this scenario is under investigation. Figure: Virtual OLF client on computer "B" communicates with virtual OLF server on computer "B"
  7. 7. 3 VM settings, configurations, troubleshooting Topics Settings VM settings For VM Player and Workstation • Settings as made by a typical installation of VM Player and Windows • Network adapter NAT allows the guest Windows to access the internet • Min. 500 MB memory allocation for VM Player Guest OS For VM Player and Workstation connection to network • Ping from each guest OS to local host must work • Ping from each guest OS to OLF server OS must work • The internet must be accessible to the guest OS (network = NAT) • The host computer must be able to access the shared folders of the guest OS explorer IP quest OSname of shared folder ( NAT/bridge For VM Player and Workstation network configu- • The most stable network for OLF virtualisation is the NAT switch static IP ration • A NAT with dynamic IP works for most deployments. For OLF deployments where an external computer needs to use the guest IP, conflicts with the IP/port of the host will cause instability. Port forwarding can be applied to solve the problem. • A bridge for OLF virtualisation causes instability between the server and the client connection. Bridge is not recommended. Connection For VM Player and Workstation between OLF client If the File Manager starts but the application filing window (procedure) does not start and server • if the network configuration on a guest OS connected to the OLF server is set to bridge, then lost switch to NAT • then reboot all real and virtual OSs connected to the OLF server, including the host OS of the OLF server • Check also the configuration files of each procedure-services on the OLF-Server C:Program FilesEPO_OLF5procedure-nameconfigep*.CONF File # Server IP address IPAddress= shall be the OLF-Server IP Drag-and- For VM Player drop from host to • Create a shared folder on VM guest OS guest not • Establish the connection from the host OS to the guest computer (VM player) (type in working explorer IP of the questname of share folder ( Slow For VM Player interactions with window • Install the VMWare tools. These tools improve some guest OS behaviour. Hints for tools and OLF installation are given below in this table GUI • Turn off transition effects in Display Properties -> Appearance -> Effects OLF crash For VM Player and Workstation of OLF • In case of frozen OLF GUI, restart VW • In order to prevent the GUI freezing, schedule a restart of services (every 2 hours) and a restart of VMWare (once per day) Smart card For VM Player not recognised • Check if the computer management on VMWare detects the card reader. If the card reader is plugged in, it will be listed in the device manager list. Compare the guest and host device manager list (see figure). • If the device is not in the device list of the guest OS, then unplug/plug the card reader and reboot the OS reader. • Check and modify the VMWare configuration file *.vmx o add the setting usb.present = "TRUE" o start VMWare o in running VM, the smart card device has to be connected to the VM Player. This can be done using the VM GUI device look-up table or the VMWare bar
  8. 8. (right mouse click) • Smart card can only be used by the host or by a virtual machine at one time. If more virtual machines are hosted on the same computer, the connection to the smart card reader has to be first disconnected from one virtual machine and then connected to the other virtual machines. For connecting and disconnecting, the VMWare GUI must be used. Smart card For VM Player and Workstation driver is missing • Helpful checks for the smart card are the "OLF smart card checker" and the "smart card icon", which appears red in the Windows bar for problems with the driver • If the smart card can not be recognised although the smart card reader o is in the device manager list o and is disconnected from other virtual machines o and is connected to this virtual machine, then check if the smart card driver is installed within the guest OS. For the EPO Smart Card solution, the "Gemplus" software must be listed in Programs or installed software. • Install the smart card driver within the virtual machine and reboot the guest OS • The software for the smart card reader must be installed on the guest OS. A reboot is needed. Download of the software Gemplus CD/DVD For VM Player and Workstation driver is not Add the following setting to the *.vmx file of your VMWare and start VMWare recognised by VMWare scsi1:0.present="TRUE" scsi1:0.autodetect="TRUE" scsi1:0.filename="autodetect" scsi1:0.deviceType = "cdrom-raw" Host's For VM Player shared folders, "VMWare tools" must be installed in the guest OS to get the driver for the VMWare shared drag-and- folders feature. This installation allows copy-and-paste, file drag-and-drop and folder sharing. drop from The following steps are needed to install the tools in the VM Player. guest to • Download the VMWare Workstation executable host • Then extract the windows.iso using the following command line o VMWare-workstation*.exe /a /v" /qb TARGETDIR=""%temp%workstation_extracted""" o explorer %temp%workstation_extracted • Copy the windows.iso to the Player directory. • In order to tell the CD-ROM to point to an iso image, modify the *.vmx file as follows: ide1:0.present = "true" ide1:0.deviceType = "cdrom-image" ide1:0.filename = "windows.iso" ide1:0.startConnected = "TRUE" • After the start of VMWare Player, the tools folder will contain the VMWare tools installer. After installation and reboot of the VM Player, shared folders and drag-and-drop will work.
  9. 9. An alternative to VMWare tools is to use SAMBA Host's For VM Player and Workstation shared folders not In addition to the installed "VMWare tools", the following settings in the VMWare *.vmx file may accessible help to customise the shared folders feature: guestOS = "name of the guestOS" sharedFolder0.enabled = "TRUE" sharedFolder0.present = "TRUE" sharedFolder0.writeAccess = "TRUE" sharedFolder0.readAccess = "TRUE" sharedFolder0.hostPath = "C:folder1folder2" sharedFolder0.guestName =" name of the guestOS " #sharedFolder0.eXpiration = "session" sharedFolder0.expiration = "never" sharedFolder.maxNum = "1" hgfs.mapRootShare = "TRUE" Remote For VM Player and Workstation Desktop on virtual • The VMWare configuration setting and the guest OS setting have to allow Remote Desktop. machine The virus and firewall on the guest OS have to allow the Remote Desktop application. • The NAT configuration has to allow port forwarding in order to forward a port (any free port) on the host IP to (Remote Desktop) port 3389 on the guest OS IP. The VMWare Workstation supports this port forwarding as described in section 2.3. Remote For VM Player and Workstation Desktop and smart The Remote Desktop settings have to allow the use of local smart cards for the Remote cards Desktop. The v5.1GemSafe software libraries used for smart cards have timing issues with writing back certificates. Using Remote Desktop, this issue may slow down communication. This problem did not appear with the GemSafe versions after v5.1.
  10. 10. D. Requirements and validation concept for virtual machines as test environment The main focus with virtualisation at the EPO lies on hardware reduction in the test process. For testing, different deployments are used (Chapter C). In all deployments, the guest OS Windows 32-bit and 64-bit mode is hosted on Windows XP in 32-bit mode. Validation of the virtual machines in each deployment must be performed on the basis of the test cases listed below. Successful execution of the test cases proves the validity of non-product software to be used for the intended purpose. Some of the issues arising from the tests can be fixed using the settings/troubleshooting hints table from chapter C. Due to the virtualisation concept, VW users should be aware that this solution is not intended for performance or timer-critical tests. Requirement ID Test case and step description Expected results 1: OS-Installation • Insert “OS” CD, press any key during start-up to Installation should boot the CD succeed without any Inside the virtual machine, • During installation, answer the questions warnings or errors – each of the following OSs regarding hostname, IP, time zone and admin check all 3 parts of must be installable without password the event log as errors: • Log in after installation and verify the event log described in step 5. - XP, Vista 32/64 (application, system & security), no warnings or - Win Server 2003 32/64 errors must show up (Start – Run –eventvwr.exe) 2: Correct-OS-Installation • Start command-line shell (Start – Run – cmd) The “winver” and the • Check OS version with “winver.exe” shell must show the The installed OS must • Compare with OS version shown in command- same OS version report the correct OS line shell and build version information 3: Driver-Availability • Open the device manager (Start – Run – In all driver checks devmgmt.msc) the status should be The display, network and • Under “Display Adapters” select the “VGA” “working properly” disk driver must be working, adapter driver and check the status of the with a status reported as adapter “properties” – “general” “running” • Under “Network Adapters” select the “Network” adapter driver and check the status of the adapter under “Properties” – “General” • Under “Disk Drives” select the “Disk Device” adapter driver and check the status of the device under “Properties” – “General” 4: Smart-Card-Connection • Open the device manager (Start – Run – A plugged-in smart devmgmt.msc) card reader must be The computer management • Under “Smart Card Readers” select the reader listed in the device on VMWare must detect the device and check the status of the device under manager with status card reader “Properties” – “General” “working properly” 5: Access-On-Drives • Open the DOS shell (Start – Run – cmd) File listing should • Check access to C drive: with “dir c:” appear. Access to local C drive and • Check access to CD-ROM drive with “dir d:” CD must work correctly 6: Network-Connection • Open the DOS shell (Start – Run – cmd) Reply from host IP • Use the ping command to check connectivity to and OLF server IP All computers needed for each IP target which will be used for networking must be received networking must be with no lost packet reachable via ping 7: Remote-Desktop • Allow users to connect remotely to this computer Login screen from on “My computer” – “Properties” – "Remote” tab the system must The VM must be reachable – "Enable“ show up. with a remote desktop • From any Windows client, open an RDP session connection with “mstsc /v:IP-Adr-of-Server” 8: Snapshot For snapshots an upgrade of VM Player to ABC On the system licence or Workstation is needed (not free). recovered from the Full functionality for • Create a snapshot with VMWare workstation. snapshot, tests 2-7 snapshot • Recover VMWare from a snapshot and retest must be passed. Requirements 2-7