NLnet Virtual Distro Dispatcher Project

Milestone 5

16-4-2010

Work done

WP5 (from 11-1-2010 to 16-4-2010)

In WP5 we faced a big issue: performance. We did several tests and analysis. Experience and results are summarized in the “Mapping system level to desktop level performance” report. This is meant to be a metodology to be used for understanding system behaviour from user's point of view and hence dimensioning components whenever a specific deployment of VDD is needed. The work was underestimated or, better, our formulation of the problem was probably too complex, that's why closing it required quite a long time. On top of that, such work has been useful to improve system as soon as new perfomance insights were gained. This slowed down the process too, but we deemed it necessary. As we realized that we needed a long time to close the deliverable, we anticipated WP6 works, by running usability tests in parallel with system tests and implementing and testing the dispatching over the Internet. This way, Deliverable 6 is going to be handed in in close succession.

Debugging and tuning of system and its components have also been done. Two more machines, with three Desktop Environments each, have been set up: Gentoo 10 and Ubuntu Karmic. The full list of available machines is: Debian Lenny, Ubuntu Jaunty, Ubuntu Karmic, Centos 5, Fedora 11, Gentoo 10 (all of them including Gnome, KDE and XFCE Desktop Environments), Windows XP and Windows 7, for a total of 20 different desktops available for single or multiple selection from terminal. On all of them, packages and libraries needed for the tests were installed (see performance report for details). All the system was passed to 64-bits, including the host and every single virtual machine. This was also an opportunity to revise and validate the whole installation procedure (Xen, LTSP, virtual machines, privacy solution, launching scripts, etc.) from scratch. As terminals are not 64-bits machine, specific 32-bits kernels have been set for bootstrapping. This is configurable even in a mixed situation and with all sorts of kernel. After the bootstrap, terminals are ready for receiveing 64-bits desktops dispatchment, even if they are 32-bits. We did not register a considerable improvement of perfomance with such a change of system architecture (tests are mainly desktop-oriented, and hence more I/O bound, than CPU-bound). During tests, instead, a leakage in network was noticed (too many packets dropped). One host network card was indeed mulfunctioning. We needed to exclude it to avoid leakage.

Some improvements on GUI has also been done (see screenshots on the website), also thanks to feedback received from usability tests.

Finally, serv2 has been made reachable from the outside, both for working remotely (our community is small, but still some helps arrive from people not on the project at the moment) and for testing dispatchment over the Internet.

About community building, we kept updating the site, the blog, the development session, we answered forum posts (still very few). We understood that the process of community creation is much longer than what we imagined. We believe it will work if good relationships will be pregressively established. The contact with Linux Revolution could be one of those, both from a technical and a commercial point of view. Common components are numerous: boot, load-balancer, account management, configuration management, reporting, security model. Both us and them are now concentrated on ours/their own project. But our future-work check list is already populated with several points from LTSP Cluster project. Besides, it seems that things are moving fast in the field of desktop virtualization. In particular, RedHat is developing something very similar to VDD (http://www.redhat.com/virtualization/rhev/desktop) and Ulteo too (http://www.ulteo.com ). Another relevant signal is that Microsoft announced changements to their desktop licences: “Beginning July 1, 2010, Windows Client Software Assurance and new Virtual Desktop Access license customers will have the right to access their virtual Windows desktop and their Microsoft Office applications hosted on VDI technology on secondary, non-corporate network devices, such as home PCs and kiosks”

(http://www.microsoft.com/Presspass/press/2010/mar10/03-18DesktopVirtPR.mspx ).

Deliverables

Deliverables for the WP5 are:

- Report on mapping system level to desktop level performance including tests

- Host-based GUI implemented

- Documentation

They are presented in the following.

Report on mapping system level to desktop level performance including tests

Work done and results are summarized in the attached report.

(Host-based) GUI implemented

We already implemented the host-based GUI in Deliverable 4, as we found it more effective to focus on it. In Deliverable 4, we also did a simple and trivial web-based GUI, but we do not find it neither useful, nor fast, as compared to the host-based one. This is due to the fact that using LTSP, a user interacts with the system from the terminal just like he or she was on the host.

Regarding the management of the system (both local and remote), we wanted to make it easier by introducing a graphical interface for administration purposes too. We integrated in VDD, a virtual machine management system, that can help in the creation and management of virtual machines (see Figure 1).

Figure 1

It is not web based, but it has got a client-server facility. In order to be managed within virt-manager (http://virt-manager.et.redhat.com/), virtual machines must be imported in the the xenstore, so that libvirt library can recognize and manage them (see documentation on the website for details).

Figure 2

After having done so for every virtual machine we intend to manage graphically, two management modes are enabled:

1) local management (on xen host) ;

2) remote management (from a client) .

The function “create new virtual machine” (Figure 3 and 4 show two phases of an installation process, Microsoft Windows in the example) is active only in mode 1, whereas in both modes, it is possible to shutdown, boot and reboot existing virtual machines, and to watch their state, including machine details and resource usage (Figure 2).

Figure 3

Figure 4

Documentation

The online version is 0.4. We are now working on version 0.5.