On Tue, Dec 11, 2007 at 09:48:22AM -0600, Anthony Liguori wrote:
> Richard W.M. Jones wrote:
> 
> Actually, this was the original intention of the -name parameter.  What 
> a management tool would want to do is:
> 
> 1) if -name is specified by user, generate one with uuidgen
> 2) pass -name <name> and -pidfile /path/to/well/known/location/name.pid
> 
> This will ensure uniqueness of name without requiring the creation tool 
> to maintain any state (so no daemon is required).  Right now, you would 
> also have to store a monitor socket in that well known path.  However, 
> I'm working on a VNC tunnels patch right now that would allow the 
> monitor to be tunneled through a VNC session.  The idea here is that a 
> management tool could just store a hint about the VNC location and then 
> you can get at the rest of the character devices through the VNC session.
> 
> Otherwise, you end up with a bunch of temporary sockets for things like 
> the monitor, serial devices, parallel devices, etc.

Tunnelling things like the serial devices / parallel devices over VNC
would be very useful, as using a pty/file isn't useful for remote
management. Tunnelling the monitor over VNC is questionable though because
it has very significant security implications - if you can connect to the
VNC server, you essentially own the entire user account that the VM is
running under since the monitor can be used to map arbitrary files into
the guest VM. Now this may be useful in some cases, but for libvirt we
really just want the monitor accessible locally via a well-known UNIX
socket. Also, VNC ports are typically auto-allocated at startup so not
neccessary a good predictable access method.

The reason libvirt use the PTY & direct PID ownership was because we stared
off with QEMU 0.8.0. We should really just mandate use of QEMU 0.9.0 with
libvirt now since its been around quite a while. Then we could just run
with  -daemonize, -pidfile and -monitor unix:/well/known/path.

Dan.
-- 
|=- Red Hat, Engineering, Emerging Technologies, Boston.  +1 978 392 2496 -=|
|=-           Perl modules: http://search.cpan.org/~danberr/              -=|
|=-               Projects: http://freshmeat.net/~danielpb/               -=|
|=-  GnuPG: 7D3B9505   F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505  -=| 


Reply via email to