From: Anthony Liguori <anthony@codemonkey.ws>
To: "Daniel P. Berrange" <berrange@redhat.com>
Cc: qemu-devel@nongnu.org, Juan Quintela <quintela@redhat.com>
Subject: Re: [Qemu-devel] Re: [PATCH 3/5] QMP: Introduce MIGRATION events
Date: Tue, 25 May 2010 11:33:15 -0500 [thread overview]
Message-ID: <4BFBFBCB.2070806@codemonkey.ws> (raw)
In-Reply-To: <20100525162549.GQ31759@redhat.com>
On 05/25/2010 11:25 AM, Daniel P. Berrange wrote:
> On Tue, May 25, 2010 at 06:04:17PM +0200, Juan Quintela wrote:
>
>> Anthony Liguori<anthony@codemonkey.ws> wrote:
>>
>>> On 05/25/2010 10:35 AM, Juan Quintela wrote:
>>>
>>
>>>> problem here is that libvirt start target with -S, and waits to do the
>>>> "cont" as soon as possible. As of know, only way to do it is to poll
>>>> info migrate on source faster.
>>>>
>>>>
>>> Why does it do that??
>>>
>>> That sound like a terrible idea.
>>>
>> Becaues migration is not reliable, and they don't have a way to issue
>> cont only in one of the sides :(
>>
>> We make migration protocol reliable, or management application have to
>> decide when migration suceeded or not.
>>
>> This new events help then a lot. But they issue the cont really fast
>> (before migration ends). I don't remember why they did that.
>>
> The use of '-S / cont' isn't really because of reliability. There
> are several scenarios though. There's a migrate API option to leave
> the guest paused upon completion, hence we need to start it with -S
> to stop it auto-running upon completion.
That's a strange API. Why would you want to do that? Why not just stop
and then migrate? You're just wasting bandwidth doing a live migration
and then leaving it stopped. This is a critical period of time for the
guest and generally speaking, you don't want to involve many layers of
management tooling in these decisions because the result is going to be
that you break the migration downtime contract.
> With some disk locking
> approaches we need todo a lock transfer before allowing the dest
> to continue running.
QEMU is going to read the disk before the migration completes so the
lock transfer is not going to work with the current implementation (it
needs to read the disk to do probing). I assume this is not something
that's actually been implemented.
> It could be optimized to avoid the -S /cont
> in cases where those two scenarios aren't relevant, but only if
> we can get a separate async notification of when migration starts
> and completes on the destination, so we can notify mgmt apps that
> need this lifecycle event.
>
Migration completes == guest starts running. You'll get a notification
of that but you're not getting that now because you're doing -S which
I'd argue is a functional problem on the part of libvirt (you're
breaking the downtime contract).
I'm not sure why you would need a notification of when migration starts
(since you know when you've started migration).
Regards,
Anthony Liguori
> So in summary these lifecycle events on source + dest for start,
> complete, fail, cancel are all focused on allowing libvirt to
> remove its existing hacks in migration support for current QEMU.
>
> Regards,
> Daniel
>
next prev parent reply other threads:[~2010-05-25 16:33 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-05-25 14:21 [Qemu-devel] [PATCH v2 0/5] Add QMP migration events Juan Quintela
2010-05-25 14:21 ` [Qemu-devel] [PATCH 1/5] Exit if incoming migration fails Juan Quintela
2010-05-25 18:01 ` Luiz Capitulino
2010-05-25 18:37 ` [Qemu-devel] " Juan Quintela
2010-05-25 18:52 ` Anthony Liguori
2010-05-25 14:21 ` [Qemu-devel] [PATCH 2/5] Factorize common migration incoming code Juan Quintela
2010-05-25 14:21 ` [Qemu-devel] [PATCH 3/5] QMP: Introduce MIGRATION events Juan Quintela
2010-05-25 15:09 ` Anthony Liguori
2010-05-25 15:35 ` [Qemu-devel] " Juan Quintela
2010-05-25 15:52 ` Daniel P. Berrange
2010-05-25 15:57 ` Anthony Liguori
2010-05-25 16:04 ` Juan Quintela
2010-05-25 16:10 ` Anthony Liguori
2010-05-25 18:13 ` Luiz Capitulino
2010-05-25 16:04 ` Daniel P. Berrange
2010-05-25 16:04 ` Juan Quintela
2010-05-25 16:25 ` Daniel P. Berrange
2010-05-25 16:33 ` Anthony Liguori [this message]
2010-05-25 16:43 ` Juan Quintela
2010-05-26 10:33 ` Daniel P. Berrange
2010-05-26 14:54 ` Anthony Liguori
2010-05-26 15:15 ` Daniel P. Berrange
2010-05-26 16:55 ` Anthony Liguori
2010-05-27 13:48 ` Luiz Capitulino
2010-05-27 15:58 ` Juan Quintela
2010-05-27 16:07 ` Luiz Capitulino
2010-05-27 16:07 ` Anthony Liguori
2010-05-26 10:16 ` Daniel P. Berrange
2010-05-25 18:21 ` Luiz Capitulino
2010-05-25 18:38 ` Juan Quintela
2010-05-25 15:48 ` [Qemu-devel] " Daniel P. Berrange
2010-05-25 18:31 ` Luiz Capitulino
2010-05-25 18:51 ` Anthony Liguori
2010-05-26 13:14 ` Luiz Capitulino
2010-05-25 14:21 ` [Qemu-devel] [PATCH 4/5] QMP: Emit migration events on incoming migration Juan Quintela
2010-05-25 14:21 ` [Qemu-devel] [PATCH 5/5] QMP: Emit migration events on outgoing migration Juan Quintela
-- strict thread matches above, loose matches on Subject: below --
2010-05-24 8:25 [Qemu-devel] [PATCH 0/5] Add QMP migration events Juan Quintela
2010-05-24 8:25 ` [Qemu-devel] [PATCH 3/5] QMP: Introduce MIGRATION events Juan Quintela
2010-05-24 9:04 ` [Qemu-devel] " Paolo Bonzini
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=4BFBFBCB.2070806@codemonkey.ws \
--to=anthony@codemonkey.ws \
--cc=berrange@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=quintela@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).