From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:52669) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Rumqz-0002BB-GU for qemu-devel@nongnu.org; Tue, 07 Feb 2012 10:21:13 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Rumqq-0008M0-Nu for qemu-devel@nongnu.org; Tue, 07 Feb 2012 10:21:09 -0500 Received: from mail-lpp01m010-f45.google.com ([209.85.215.45]:65020) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Rumqq-0008Ls-IA for qemu-devel@nongnu.org; Tue, 07 Feb 2012 10:21:00 -0500 Received: by lahi5 with SMTP id i5so4657312lah.4 for ; Tue, 07 Feb 2012 07:20:59 -0800 (PST) MIME-Version: 1.0 In-Reply-To: <4F313C69.1050203@codemonkey.ws> References: <73865e0ce364c40e0eb65ec6b22b819d@mail.gmail.com> <4F312854.3080404@redhat.com> <4F313C69.1050203@codemonkey.ws> Date: Tue, 7 Feb 2012 15:20:59 +0000 Message-ID: From: Stefan Hajnoczi Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [RFC PATCH] replication agent module List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Anthony Liguori Cc: Kevin Wolf , dlaor@redhat.com, qemu-devel@nongnu.org, Ori Mamluk , Luiz Capitulino On Tue, Feb 7, 2012 at 2:59 PM, Anthony Liguori wro= te: > On 02/07/2012 07:50 AM, Stefan Hajnoczi wrote: >> >> On Tue, Feb 7, 2012 at 1:34 PM, Kevin Wolf =A0wrote: >>> >>> Am 07.02.2012 11:29, schrieb Ori Mamluk: >>>> >>>> Repagent is a new module that allows an external replication system to >>>> replicate a volume of a Qemu VM. >> >> >> I recently joked with Kevin that QEMU is on its way to reimplementing >> the Linux block and device-mapper layers. =A0Now we have drbd, thanks! >> :P > > > I don't think it's a joke. =A0Do we really want to get into this space? = =A0Why > not just use drbd? > > If it's because we want to also work with image formats, perhaps we shoul= d > export our image format code as a shared library and let drbd link agains= t > it. When the guest disk image is on an LVM volume the picture looks like this: Guest -> QEMU -> drbd -> LVM volume When an image file is in use we need a way for Linux to access it: Guest -> QEMU -> drbd -> local NBD server The local NBD server runs the qcow2, qed, etc code. Both scenarios are possible today without modifications to QEMU code. For reference, here is the drbd website http://www.drbd.org/, it's described as "network based raid-1". Looking seriously at drbd is worthwhile because it already implements the advanced features that this prototype patch omits. Take a look at the documentation at http://www.drbd.org/docs/working/. Checksums, rate of synchronization, congestion policies, I/O error handling policies, and so on are all supported already. I suspect using drbd would require more management stack integration rather than QEMU patches. For example, libvirt would need to launch NBD servers and drbd. Stefan