qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Kashyap Chamarthy <kchamart@redhat.com>
To: Stefan Hajnoczi <stefanha@gmail.com>
Cc: Kevin Wolf <kwolf@redhat.com>,
	Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>,
	Fam Zheng <famz@redhat.com>, qemu-devel <qemu-devel@nongnu.org>,
	"Denis V. Lunev" <den@openvz.org>, John Snow <jsnow@redhat.com>
Subject: Re: [Qemu-devel] Incremental backup call
Date: Tue, 23 Feb 2016 15:25:33 +0100	[thread overview]
Message-ID: <20160223142533.GB5450@tesla.redhat.com> (raw)
In-Reply-To: <CAJSP0QW=s2PN4AgZZ=OrrNt=FHBngy7JeUt3_GQsmn3pOEFPLQ@mail.gmail.com>

On Tue, Feb 16, 2016 at 02:02:58PM +0000, Stefan Hajnoczi wrote:
> Hi,
> There are several ongoing efforts to implement incremental
> backup-related features.
> 
> Let's have a voice/video conference to get everyone on the same page,
> avoid duplicated work, and get patches merged faster.
> 
> Agenda:
> 
>  * External incremental backup API.  Summarize requirements common to
> third-party backup appliances and agree on suitable API direction.
> 
>  * Persistent dirty bitmaps.  Agree on how qcow2 and/or qbm will hold
> bitmaps in various use cases.
> 
>  * Anything else?

I was in a listen-only mode on the call, here's some quick minutes
(read: haphazard scribbling) so please excuse grammar
thinkos/typos/missed points.  Feel free to correct/adjust.

-----------------------------------------------------------------------
- [denis-lunev] Migration support for dirty bitmaps?
- [stefanha] One discussion that might need to reset things is Fam's
  QEMU QBM (Qemu Bit Map)
- [stefanha] Incremental backups _should_ be possible with RAW
- [jsnow] Apart from just from having incremental backups for RAW
  devices, any reason why qcow2 _cannot_ be the bitmap provider?
- [kwolf] What are the actual requirements?
- [stefanha] Vladimir's series that modified qcow2 - the idea was that
  you don't _have_ to use qcow2 format, but you could use it as a bitmap
  container for other images.
- [kwolf] Something about VM state internal snapshots: where the VM
  state is saved into qcow2 file:
   - Don't store bitmaps in a qcow2 file
   - Stack the qcow2 on the specific image that the bitmap is for
   - [stefanha] What happens when there's guest I/O (?) 
- [kwolf] The question is: if it wouldn't be simple to extend qcow2 - to
  forward all writes to the backing file
- If we _don't_ want to use qcow2 to store this:
- [kwolf] Concern is consistency: doing one thing for qcow2; and other
  thing for other formats?
- [eblake] This is not the first time we're adding something on top of
  raw images
   - [eblake] bitmap on top of RAW - this concept has been floating on
     the list for several years
      - https://lists.nongnu.org/archive/html/qemu-devel/2013-08/msg03682.html
      - [kwolf] What is the use case?
         - Backing files with raw images
         - If you have a raw image file, you can use backing files with
           it; if at some point in time
- [eblake] Mentioned LUKS encryption of danpb (in comparision with QBM
  work?)
   - A seperate driver (general purpose) 'luks' format driver which can
     be layered over any other existing block driver.
   - Embedded LUKS inside qcow2
      - it's encrypted as _part_ of the qcow2 file
   - A general purpose 'luks' format driver which can be layered over
     any other existing block driver.
   - To differentiate intentionally encrypted as part of qcow2 vs. the
     guest data
   - [kwolf] One important difference: Dan didn't introduce a new file
     _format_ for qcow2.
  - [eblake] In a sense, LUKS _is_ a new file format - but indeed it's
    interoperating with existing format

- [stefanha] Is the least controversial part: getting the Qcow2 support
  in that Vladimir is working on?
- [kwolf] Concern: is the relationship with QBM -- I don't want to end
  up with duplicated things at the end
   - Once we accept this API, we can't change it
- [denis-lunev] A lot of resources/time has been invested in this.
  Specification about bitmaps.  Version-17 for this spec is too much.
- [kwolf] If you go forward with qcow2 path, then, we're not going to do
  the QBM approach.
- [fam] Qcow2 extension has made its progress
   - We should go ahead and make the extension in qcow2 and see how it
     goes
   - People will start complaining about missing features in raw (?)
   - Concern: in certain protocols like Ceph, people would tend to use
     Raw images, without any tools on top
- [stefanha] If we do what Kevin told: qcow2 will have a node - where
  the writes will be forwarded to backing file, what's holding up there
  (?)
   - You have a qcow2 file that doesn't have much data, except metadata
     and including bitmap
- [jsnow] We should move forward with qcow2 persistence approach.
   - We can re-discuss the merits of duplication again
- [stefanha] Question for Eric: In terms of committing an API, client
  applications, external plugins for backup/ related libvirt work?
   - [eblake] From libvirt's perspective, the biggest thing we need for
     2.6 is having QMP 'blockdev-add' for everything:
      - We want to get Ceph, NBD and Gluster all of those under QAPI, to
        be able to programatically address them from libvirt
         - We currently sometimes fallback to HMP
      - [kwolf] I don't think it's possible for 2.6 yet.  So far, we
        have NBD support on the list
      - [eblake] Going to look at 'blockdev-add' to see what's missing
        and what needs to be added
- [eblake] Ability to track persistent node names in libvirt XML
    - We're at the point now that every node creation can have a name.
    - libvirt does have some work to do take advantage of node names,
      remembering what names it has assigned
-----------------------------------------------------------------------


-- 
/kashyap

  parent reply	other threads:[~2016-02-23 14:25 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-16 14:02 [Qemu-devel] Incremental backup call Stefan Hajnoczi
2016-02-22 17:56 ` John Snow
2016-02-23 14:25 ` Kashyap Chamarthy [this message]
2016-02-23 17:10   ` John Snow

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20160223142533.GB5450@tesla.redhat.com \
    --to=kchamart@redhat.com \
    --cc=den@openvz.org \
    --cc=famz@redhat.com \
    --cc=jsnow@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@gmail.com \
    --cc=vsementsov@virtuozzo.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).