From: "Benoît Canet" <benoit.canet@irqsave.net>
To: Andy Grover <agrover@redhat.com>
Cc: "Benoît Canet" <benoit.canet@irqsave.net>,
kwolf@redhat.com, qemu-devel@nongnu.org,
"Stefan Hajnoczi" <stefanha@redhat.com>,
pbonzini@redhat.com
Subject: Re: [Qemu-devel] tcmu-runner and QEMU
Date: Thu, 4 Sep 2014 17:59:21 +0200 [thread overview]
Message-ID: <20140904155921.GA12900@irqsave.net> (raw)
In-Reply-To: <5408821B.4070708@redhat.com>
The Thursday 04 Sep 2014 à 08:15:39 (-0700), Andy Grover wrote :
> On 09/04/2014 06:24 AM, Benoît Canet wrote:
> >>There are other commands for snapshots and backup which are issued via
> >>QMP.
> >>
> >>It might even make sense to make the tcmu interface available at
> >>run-time in QEMU like the run-time NBD server. This allows you to get
> >>at read-only point-in-time snapshots while the guest is accessing the
> >>disk. See the nbd-server-start command in qapi/block.json.
> >>
> >>Stefan
> >
> >Andy: ping
> >
> >I hope we didn't scaried you with our monster block backend and it's
> >associated QMP socket ;)
>
> Hi Benoît,
>
> No, I've gone off to work on a initial proof-of-concept implementation of a
> qemu-lio-tcmu.so module, hopefully it'll be ready to look at shortly and
> then we can shoot arrows at it. :)
Great !!
>
> But in the meantime, do you have a use case or user story for the QMP
> support that might help me understand better how it might all fit together?
>
Ok,
1) The cloud end user story
---------------------------
My customer has implemented the AWS EC2 API to build his cloud.
Simply said they are an AWS EC2 clone.
The EC2 api provide a way for the end users (customers of my customer) to
take snapshots of their VMs volumes programatically.
Openstack surelly provide this too.
The end users are taking snapshot every days since it's an easy way for
them to have a point in time snapshot of their virtual machine.
They can accumulate over 600 snapshots as the days pass.
So the end users really needs snapshots.
The EC2 compatible cloud only sane way to trigger a snapshotis to use a QMP socket.
Right now my customer provide virtualized instances but the new use case is to provide
bare metal instances. tcmu could be used for this.
I guess the openstack people will want to do the same at some point.
The point is that the end users would still want to take snapshots of their bare metal
instances volumes. Not having this would break the EC2 API and make the instances
unusuable.
2) The cloud provider story
---------------------------
End users make snapshot like crazy and eventually the QCOW2 backing chain will
make QEMU open more than FD_MAX files at once. QEMU will crash.
Also the cloud provider has interest to shorten the backing chains
(drop the oldest snapshots) in order to minimize the risk caused by a common
QCOW2 ancestor snapshot corruption.
QEMU allows to do this with streaming. Streaming is triggered with a QMP command.
3) The CEPH user story
----------------------
I know Red Hat is big on CEPH so:
CEPH provide it's own kind of snapshotting. QEMU support it via QMP.
4) The any block operation you want to do with QEMU storage story
-----------------------------------------------------------------
simple things such as collecting a block device statistic is also done via QMP.
And so on ...
you can look in qapi/block-core.json to have an idea of QMP usefullness while
working with QEMU block devices.
Best regards
Benoît
> Regards -- Andy
>
>
next prev parent reply other threads:[~2014-09-04 16:00 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-08-29 17:22 [Qemu-devel] tcmu-runner and QEMU Benoît Canet
2014-08-29 18:38 ` Andy Grover
2014-08-29 18:51 ` Benoît Canet
2014-08-29 22:36 ` Andy Grover
2014-08-29 22:46 ` Benoît Canet
2014-08-30 14:46 ` Richard W.M. Jones
2014-08-30 15:53 ` Benoît Canet
2014-08-30 16:02 ` Richard W.M. Jones
2014-08-30 16:04 ` Richard W.M. Jones
2014-08-30 17:22 ` Benoît Canet
2014-08-30 21:50 ` Benoît Canet
2014-08-30 16:51 ` Benoît Canet
2014-08-31 20:03 ` Andy Grover
2014-08-31 20:38 ` Benoît Canet
2014-09-01 8:32 ` Paolo Bonzini
2014-09-01 8:08 ` Paolo Bonzini
2014-09-02 9:25 ` Stefan Hajnoczi
2014-09-03 0:20 ` Andy Grover
2014-09-03 7:34 ` Paolo Bonzini
2014-09-03 13:11 ` Stefan Hajnoczi
2014-09-04 13:24 ` Benoît Canet
2014-09-04 15:15 ` Andy Grover
2014-09-04 15:59 ` Benoît Canet [this message]
2014-09-04 20:16 ` Stefan Hajnoczi
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=20140904155921.GA12900@irqsave.net \
--to=benoit.canet@irqsave.net \
--cc=agrover@redhat.com \
--cc=kwolf@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@redhat.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).