[libvirt] Fail to start 2nd guest

Stefan Hajnoczi stefanha at gmail.com
Mon Feb 27 13:31:30 UTC 2017


On Mon, Feb 27, 2017 at 08:50:03PM +0800, Xiong Zhou wrote:
> On Mon, Feb 27, 2017 at 10:11:04AM +0000, Stefan Hajnoczi wrote:
> > On Mon, Feb 27, 2017 at 05:40:50PM +0800, Xiong Zhou wrote:
> > > It worked fine on Linus tree commit:
> > >   7bb0338 Merge tag 'rodata-v4.11-rc1' of git://git.kernel.org/pub/scm/..
> > > 
> > > failed to start 2nd domain on this commit:
> > > 37c8596 Merge tag 'tty-4.11-rc1' of git://git.kernel.org/pub/scm/..
> > > (this commit probably is not the first bad, i didn't do the bisecting)
> > > 
> > > 
> > > sh-4.2# uname -r
> > > 4.10.0-master-37c8596+
> > > sh-4.2# rpm -qv qemu
> > > qemu-2.0.0-1.el7.6.x86_64
> > > sh-4.2# ps ajxf | grep qemu
> > > ...
> > > sh-4.2# virsh list
> > >  Id    Name                           State
> > > ----------------------------------------------------
> > >  1     73h                            running
> > > 
> > > sh-4.2# virsh start 73us
> > > error: Failed to start domain 73us
> > > error: internal error: qemu unexpectedly closed the monitor: ((null):11497): Spice-Warning **: reds.c:2499:reds_init_socket: listen: Address already in use
> > > 2017-02-27T09:33:42.335708Z qemu-kvm: failed to initialize spice server
> > 
> > The error message says that the spice remote desktop cannot listen on
> > -spice port=5900,addr=127.0.0.1.
> > 
> > Did you hardcode port 5900 in the domain XML?  That could explain why
> No.
> > the second guest fails to launch - you need to use unique port numbers
> > or let libvirt automatically assign them.  Check the domain XML:
> > 
> >   <graphics type='spice' port='-1' tlsPort='-1' autoport='yes'>
> 
> It looks like:
> 
>     <graphics type='spice' autoport='yes'>
>       <listen type='address'/>
>       <image compression='off'/>
>     </graphics>
> 
> 
> > 
> > Another possibility is that a process running on the host is already
> > using port 5900.  Perhaps a guest or VNC server that was launched
> > outside of libvirt?  You can check this with:
> > 
> >   netstat -alpn | grep 5900
> # netstat -alpn | grep 5900
> tcp        0      0 127.0.0.1:5900          0.0.0.0:*               LISTEN      11065/qemu-kvm      

Please check that 11065/qemu-kvm was launched by the same libvirtd and
its domain XML also uses autoport='yes'.

I have CCed the libvirt mailing list because they may be able to explain
why there is a collision on TCP port 5900.

Stefan
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 455 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20170227/cbd1de09/attachment-0001.sig>


More information about the libvir-list mailing list