From: "Daniel P. Berrangé" <berrange@redhat.com>
To: Peter Xu <peterx@redhat.com>
Cc: Juan Quintela <quintela@redhat.com>,
Paolo Bonzini <pbonzini@redhat.com>,
qemu-devel@nongnu.org, Markus Armbruster <armbru@redhat.com>,
Leonardo Bras <leobras@redhat.com>,
qemu-block@nongnu.org, Stefan Hajnoczi <stefanha@redhat.com>,
Eric Blake <eblake@redhat.com>, Fam Zheng <fam@euphon.net>,
Thomas Huth <thuth@redhat.com>,
libvir-list@redhat.com
Subject: Re: [RFC 4/6] migration: Deprecate -incoming <uri>
Date: Fri, 23 Jun 2023 09:23:18 +0100 [thread overview]
Message-ID: <ZJVWdgXWad2w+za3@redhat.com> (raw)
In-Reply-To: <ZJRuw19Rc1LlPQId@x1n>
On Thu, Jun 22, 2023 at 11:54:43AM -0400, Peter Xu wrote:
> On Thu, Jun 22, 2023 at 10:59:58AM +0100, Daniel P. Berrangé wrote:
> > I've mentioned several times before that the user should never need to
> > set this multifd-channels parameter (nor many other parameters) on the
> > destination in the first place.
> >
> > The QEMU migration stream should be changed to add a full
> > bi-directional handshake, with negotiation of most parameters.
> > IOW, the src QEMU should be configured with 16 channels, and
> > it should connect the primary control channel, and then directly
> > tell the dest that it wants to use 16 multifd channels.
> >
> > If we're expecting the user to pass this info across to the dest
> > manually we've already spectacularly failed wrt user friendliness.
>
> I can try to move the todo even higher. Trying to list the initial goals
> here:
>
> - One extra phase of handshake between src/dst (maybe the time to boost
> QEMU_VM_FILE_VERSION) before anything else happens.
>
> - Dest shouldn't need to apply any cap/param, it should get all from src.
> Dest still need to be setup with an URI and that should be all it needs.
There are a few that the dest will still need set explicitly. Specifically
the TLS parameters - tls-authz and tls-creds, because those are both
related to --object parameters configured on the dst QEMU. Potentially
there's an argument to be made for the TLS parameters to be part fo the
initial 'migrate' and 'migrate-incoming' command data, as they're
specifically related to the connection establishment, while (most) of
the other params are related to the migration protocol running inside
the connection.
A few other parameters are also related to the connection establishment,
most notably the enablement multifd, postcopy and postcopy-pre-empt.
I think with those ones we don't need to set them on the src either.
With the new migration handshake we should probably use multifd
codepaths unconditionally, with a single channel. By matching with
the introduction of new protocol, we have a nice point against which
to deprecate the old non-multifd codepaths. We'll need to keep the
non-multifd code around *alot* longer than the normal deprecation
cycle though, as we need mig to/from very old QEMUs.
The enablement of postcopy could be automatic too - src & dst can
both detect if their host OS supports it. That would make all
migrations post-copy capable. The mgmt app just needs to trigger
the switch to post-copy mode *if* they want to use it.
Likewise we can just always assume postcopy-pre-empt is available.
I think 'return-path' becomes another one we can just assume too.
With regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
next prev parent reply other threads:[~2023-06-23 8:24 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-06-12 19:33 [RFC 0/6] Migration deprecated parts Juan Quintela
2023-06-12 19:33 ` [RFC 1/6] migration: skipped field is really obsolete Juan Quintela
2023-06-20 12:01 ` Daniel P. Berrangé
2023-06-22 17:49 ` Juan Quintela
2023-06-12 19:33 ` [RFC 2/6] migration: migrate 'inc' command option is deprecated Juan Quintela
2023-06-20 12:05 ` Daniel P. Berrangé
2023-06-22 18:11 ` Juan Quintela
2023-06-12 19:33 ` [RFC 3/6] migration: migrate 'blk' " Juan Quintela
2023-06-20 12:06 ` Daniel P. Berrangé
2023-06-22 18:12 ` Juan Quintela
2023-06-12 19:33 ` [RFC 4/6] migration: Deprecate -incoming <uri> Juan Quintela
2023-06-12 19:41 ` Peter Xu
2023-06-12 20:51 ` Juan Quintela
2023-06-12 21:19 ` Peter Xu
2023-06-20 12:13 ` Daniel P. Berrangé
2023-06-22 19:34 ` Juan Quintela
2023-06-20 12:10 ` Daniel P. Berrangé
2023-06-20 14:45 ` Peter Xu
2023-06-22 8:28 ` Paolo Bonzini
2023-06-22 8:52 ` Juan Quintela
2023-06-22 9:22 ` Thomas Huth
2023-06-22 15:25 ` Peter Xu
2023-06-22 19:37 ` Juan Quintela
2023-06-22 9:45 ` Paolo Bonzini
2023-06-22 10:01 ` Juan Quintela
2023-06-22 15:24 ` Peter Xu
2023-06-22 16:03 ` Paolo Bonzini
2023-06-22 9:59 ` Daniel P. Berrangé
2023-06-22 15:54 ` Peter Xu
2023-06-22 16:33 ` Daniel P. Berrangé
2023-06-22 19:20 ` Peter Xu
2023-06-23 7:17 ` Daniel P. Berrangé
2023-06-23 14:34 ` Peter Xu
2023-06-23 8:23 ` Daniel P. Berrangé [this message]
2023-06-23 14:51 ` Peter Xu
2023-06-23 15:03 ` Daniel P. Berrangé
2023-06-21 7:08 ` Thomas Huth
2023-06-22 2:22 ` Juan Quintela
2023-06-22 8:30 ` Paolo Bonzini
2023-06-22 18:12 ` Juan Quintela
2023-06-12 19:33 ` [RFC 5/6] migration: Deprecate block migration Juan Quintela
2023-06-21 11:45 ` Stefan Hajnoczi
2023-06-22 18:17 ` Juan Quintela
2023-06-12 19:33 ` [RFC 6/6] migration: Deprecated old compression method Juan Quintela
2023-06-21 7:14 ` Thomas Huth
2023-06-22 19:21 ` Juan Quintela
2023-06-21 10:31 ` Daniel P. Berrangé
2023-06-22 19:32 ` Juan Quintela
2023-06-13 7:48 ` [RFC 0/6] Migration deprecated parts Jiri Denemark
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=ZJVWdgXWad2w+za3@redhat.com \
--to=berrange@redhat.com \
--cc=armbru@redhat.com \
--cc=eblake@redhat.com \
--cc=fam@euphon.net \
--cc=leobras@redhat.com \
--cc=libvir-list@redhat.com \
--cc=pbonzini@redhat.com \
--cc=peterx@redhat.com \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=quintela@redhat.com \
--cc=stefanha@redhat.com \
--cc=thuth@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).