[Ovirt-devel] oVirt console

Richard W.M. Jones rjones at redhat.com
Fri Aug 1 12:57:27 UTC 2008


As some background, Hugh Brock asked me to look at how much work it
would be to add console access to guests from the oVirt WUI, properly
authenticated and encrypted and -- this is the key -- supporting
Windows users.

I previously wrote a VNC browser plugin based around the open source
gtk-vnc[i] and virt-viewer[ii] projects.  This hasn't worked out well
because, for reasons which are elusive, the browser plugin makes the
whole browser somewhat unstable.  And in any case it looks like the
plugin would be limited to Firefox on Linux.

My feeling is that instead of embedding the console in the browser,
with all the potential complexity and unstableness involved in that,
instead we should have a very small browser plugin which launches a
separate virt-viewer process.  This way, the browser plugin should be
very small and short-lived (so won't affect the stability of the
browser), should be easy to port, and all the open consoles will be
running as separate virt-viewer processes so again there is a benefit
of separation & stability.

To achieve this, we need the following steps:

(1) SASL support the VNC protocol:

  (a) Register one or two new VNC protocol extensions for, respectively,
      authentication & encryption using SASL.

  (b) Implement server-side protocols in upstream QEMU.  This will
      eventually lead to it being supported in projects that synch
      with QEMU, ie. KVM.

  (c) Implement client-side protocols in gtk-vnc.

(2) virt-viewer changed to register a callback to collect the required
    auth information

(3) Build the following chain of SASL dependencies on Windows, using
    the MinGW cross-compiler[iii]:

      cyrus-sasl-*[iv]
      krb5-libs[v]
      keyutils-libs[vi]

    These may require changes upstream.

(4) Build gtk-vnc and a virt-viewer binary for Windows.  (It will
    already be built for Linux eg. in Fedora).

(5) Write plugin(s) for Firefox on Linux / Windows using the NPAPI[vii].

(6) Write plugin for Windows / IE.

(7) Build packages.

Rich.

Links
-----

  [i] http://gtk-vnc.sourceforge.net/
 [ii] http://freshmeat.net/projects/virtviewer/
[iii] http://fedoraproject.org/wiki/SIGs/MinGW
 [iv] http://asg.web.cmu.edu/sasl/
  [v] http://web.mit.edu/kerberos/www/
 [vi] http://people.redhat.com/~dhowells/keyutils/
[vii] http://en.wikipedia.org/wiki/NPAPI

-- 
Richard Jones, Emerging Technologies, Red Hat  http://et.redhat.com/~rjones
virt-df lists disk usage of guests without needing to install any
software inside the virtual machine.  Supports Linux and Windows.
http://et.redhat.com/~rjones/virt-df/




More information about the ovirt-devel mailing list