From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NuA1N-0001CY-M3 for qemu-devel@nongnu.org; Tue, 23 Mar 2010 15:44:13 -0400 Received: from [140.186.70.92] (port=44075 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NuA1K-0000ym-AD for qemu-devel@nongnu.org; Tue, 23 Mar 2010 15:44:13 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1Nu9m3-0002dq-Bh for qemu-devel@nongnu.org; Tue, 23 Mar 2010 15:28:24 -0400 Received: from mail-pw0-f45.google.com ([209.85.160.45]:60692) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Nu9m3-0002dg-4C for qemu-devel@nongnu.org; Tue, 23 Mar 2010 15:28:23 -0400 Received: by pwi9 with SMTP id 9so4525711pwi.4 for ; Tue, 23 Mar 2010 12:28:22 -0700 (PDT) Message-ID: <4BA91653.1020706@codemonkey.ws> Date: Tue, 23 Mar 2010 14:28:19 -0500 From: Anthony Liguori MIME-Version: 1.0 Subject: Re: [Qemu-devel] Re: [libvirt] Supporting hypervisor specific APIs in libvirt References: <4BA7C40C.2040505@codemonkey.ws> <20100323145105.GV16253@redhat.com> <4BA8D8A9.7090308@codemonkey.ws> <201003231557.19474.paul@codesourcery.com> <4BA8E6FC.9080207@codemonkey.ws> <4BA901B5.3020704@redhat.com> In-Reply-To: <4BA901B5.3020704@redhat.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Avi Kivity Cc: "libvir-list@redhat.com" , Paul Brook , qemu-devel@nongnu.org On 03/23/2010 01:00 PM, Avi Kivity wrote: > On 03/23/2010 06:06 PM, Anthony Liguori wrote: >>> I thought the monitor protocol *was* our API. If not, why not? >> >> It is. But our API is missing key components like guest >> enumeration. So the fundamental topic here is, do we introduce these >> missing components to allow people to build directly to our interface >> or do we make use of the functionality that libvirt already provides >> if they can plumb our API directly to users. >> > > Guest enumeration is another API. > > Over the kvm call I suggested a qemu concentrator that would keep > track of all running qemus, and would hand out monitor connections to > users. It can do the enumeration (likely using qmp). Libvirt could > talk to that, like it does with other hypervisors. If you think about network management, it's the difference between having a central management server that you add physical machines to, verses having physical machines use an advertisement mechanism (like mDNS or SLP). The later mechanism scales better and tends to be more robust. For instance, it's very common for VNC servers to advertise themselves via mDNS and it's also common for VNC clients to support this. It requires no central server to keep track of VNC instances and generally provides much better usability. Regards, Anthony Liguori