All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
To: "Daniel P. Berrange" <berrange@redhat.com>
Cc: amit.shah@redhat.com, david@gibson.dropbear.id.au,
	qemu-devel@nongnu.org, quintela@redhat.com
Subject: Re: [Qemu-devel] More structured migration URIs?
Date: Mon, 5 Jan 2015 12:37:23 +0000	[thread overview]
Message-ID: <20150105123723.GG5244@work-vm> (raw)
In-Reply-To: <20150105122930.GK29381@redhat.com>

* Daniel P. Berrange (berrange@redhat.com) wrote:
> On Mon, Jan 05, 2015 at 12:14:25PM +0000, Dr. David Alan Gilbert wrote:
> > Hi,
> >   I keep thinking of things where it might make sense to add
> > options onto the migration URIs and wondered if it makes
> > sense to restructure the migration URIs; my proposal would be:
> > 
> >   a) Restructure tcp:hhhh:pppp into   protocol=tcp,host=hhhh,port=pppp
> >   b) Have a requirement that protocol= is the first entry in the list
> >   c) If it doesn't start protocol= then it's the old format.
> >   d) This would also change in the 'migrate' command to keep it symmetric
> > 
> > Eric/Daniel does this make sense for libvirt?
> > 
> > My current set of things I might want to add are:
> >   1) A flag saying if a return channel is needed
> >      For sockets qemu can open this afterwards when needed, but Dave Gibson's
> >      review of my postcopy world pointed out that it might not be that
> >      easy for all protocols to open the reverse later.
> >   2) Flags for opening multiple sockets/FDs - e.g. to pass the pages down
> >      a separate fd.
> > 
> > Thoughts?
> 
> The QEMU migration URI is exposed via the libvirt API to applications, so
> they can control the host/port of the target explicitly (to override
> libvirt's default guess of a suitable host/port).

Ah OK, that's a shame.

> These extra things that you suggest adding are not things we neccessarily
> want to expose to applications. So if QEMU changed the format, libvirt
> would probably not accept this new format from applications - we would
> force applications to always use the URI syntax and only allow host+port
> to be specified. Internally libvirt would translate that to the new
> key/value pair format, and add the extra flags / options as needed. We
> would possibly add some options to our public API to configure extra
> features as desired, separately from the URI.

It all gets a bit more complicated when an application could specify
an arbitrary exec: uri through that API, rather than you knowing what it's
doing.

> More generally though, what is the advantage of encoding new things in
> the migration URI, as opposed to adding new parameters to the QMP
> migration command. The use of URIs in this scenario is really a hang
> over from days of HMP. If we were designing the migration command today
> I don't think we'd use URIs at all - we'd just have a QMP command with
> explicit parameters for the hostname, the port number and anything else
> we might want to set.  So if there are new features I'd be inclined to
> just add more optional parameters to the QMP migration command and not
> touch the URI format at all.

I was only interested in adding options to the -incoming side rather than the
'migrate' side, but thought if I was changing the URI syntax I may as well
make it consistent.   If you wanted to add options to the -incoming side
what would be easiest for you?

Dave

> 
> Regards,
> Daniel
> -- 
> |: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
> |: http://libvirt.org              -o-             http://virt-manager.org :|
> |: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
> |: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK

  reply	other threads:[~2015-01-05 12:37 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-01-05 12:14 [Qemu-devel] More structured migration URIs? Dr. David Alan Gilbert
2015-01-05 12:29 ` Daniel P. Berrange
2015-01-05 12:37   ` Dr. David Alan Gilbert [this message]
2015-01-05 12:45     ` Daniel P. Berrange
2015-01-05 14:21       ` Dr. David Alan Gilbert
2015-01-05 17:02       ` Eric Blake

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=20150105123723.GG5244@work-vm \
    --to=dgilbert@redhat.com \
    --cc=amit.shah@redhat.com \
    --cc=berrange@redhat.com \
    --cc=david@gibson.dropbear.id.au \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.