[libvirt] Xen Migration does not work

-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 I'm try to migrate using libvirt: virsh # migrate 0802367323_PIQ002 xen://xen002.local/ libvir: Xen Daemon error : POST operation failed: xend_post: error from xen daemon: (xend.err 'Missing parameter: node') virsh -v 0.4.6 Stefan -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iEYEAREKAAYFAkjpagoACgkQYH1+F2Rqwn0yogCfd0+rK0mNrLpmmwclAjRpevlg w4EAn2VOWooBbch7awWpRJs/1Sn7G5ZW =6eZd -----END PGP SIGNATURE-----

-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 Stefan de Konink schreef:
I'm try to migrate using libvirt:
virsh # migrate 0802367323_PIQ002 xen://xen002.local/ libvir: Xen Daemon error : POST operation failed: xend_post: error from xen daemon: (xend.err 'Missing parameter: node')
virsh -v 0.4.6
Xen 3.3 def domain_migrate(self, domid, dst, live=False, port=0, node=-1, ssl=None): """Start domain migration. @param domid: Domain ID or Name @type domid: int or string. @param dst: Destination IP address @type dst: string @keyword live: Live migration @type live: bool @keyword port: relocation port on destination @type port: int @keyword node: use node number for target @type node: int @keyword ssl: use ssl connection @type ssl: bool @rtype: None @raise XendError: Failed to migrate @raise XendInvalidDomain: Domain is not valid """ And I don't have a clue what 'node' means in this respect. Stefan -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iEYEAREKAAYFAkjqC4AACgkQYH1+F2Rqwn3XKwCeJSoYXQN2HdfFMvgbdUNb+zxF +WMAnRyHy8rknbfgUsnx/9M7J+3VM5uz =CvM/ -----END PGP SIGNATURE-----

-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 Stefan de Konink schreef:
Stefan de Konink schreef:
I'm try to migrate using libvirt:
virsh # migrate 0802367323_PIQ002 xen://xen002.local/ libvir: Xen Daemon error : POST operation failed: xend_post: error from xen daemon: (xend.err 'Missing parameter: node')
virsh -v 0.4.6
Xen 3.3
The xend/server/SrvDomain.py includes: def do_migrate(self, _, req): fn = FormFn(self.xd.domain_migrate, [['dom', 'int'], ['destination', 'str'], ['live', 'int'], ['port', 'int'], ['node', 'int'], ['ssl', 'int']]) return fn(req.args, {'dom': self.dom.domid}) Since FormFn does a check on the required parameter, 4077 /* Make the call. */ 4078 ret = xend_op (domain->conn, domain->name, 4079 "op", "migrate", 4080 "destination", hostname, 4081 "live", live, 4082 "port", port, 4083 "resource", "0", /* required, xend ignores it */ "node", "-1", /* what does it do? */ "ssl", "0", 4084 NULL); Could probably fix it. But I don't know if the right approach is now to switch back to the development branch or, kindly request, a 0.4.6.1 Stefan -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iEYEAREKAAYFAkjqEnUACgkQYH1+F2Rqwn0cvQCggQjYvaiJN6WUcQyHBAJKsajP /ooAn0lgATaSnOrOUrRhc/347iZ9qEUd =0/O8 -----END PGP SIGNATURE-----

On Mon, Oct 06, 2008 at 03:28:21PM +0200, Stefan de Konink wrote:
Stefan de Konink schreef:
Stefan de Konink schreef:
I'm try to migrate using libvirt:
virsh # migrate 0802367323_PIQ002 xen://xen002.local/ libvir: Xen Daemon error : POST operation failed: xend_post: error from xen daemon: (xend.err 'Missing parameter: node')
virsh -v 0.4.6
Xen 3.3
The xend/server/SrvDomain.py includes:
def do_migrate(self, _, req): fn = FormFn(self.xd.domain_migrate, [['dom', 'int'], ['destination', 'str'], ['live', 'int'], ['port', 'int'], ['node', 'int'], ['ssl', 'int']]) return fn(req.args, {'dom': self.dom.domid})
Since FormFn does a check on the required parameter,
4077 /* Make the call. */ 4078 ret = xend_op (domain->conn, domain->name, 4079 "op", "migrate", 4080 "destination", hostname, 4081 "live", live, 4082 "port", port, 4083 "resource", "0", /* required, xend ignores it */ "node", "-1", /* what does it do? */ "ssl", "0", 4084 NULL);
A diff is really nicer to avoid ambiguities !
Could probably fix it.
Well what happens if you make that change ? Is the migration successful ? If you can verify with the change ? Then it's worth checking further, for example that this doesn't break older versions of Xen, which should be the case, if i understand xend/Args.py correctly it will only use parameters requested in teh spec so extra args will be dropped.
But I don't know if the right approach is now to switch back to the development branch or, kindly request, a 0.4.6.1
We have no such patch in the devel branch that I can think of. And I don't see the relation to a new release with a different numbering scheme. Care to explain ? Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ daniel@veillard.com | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/

On Mon, Oct 06, 2008 at 03:29:46AM +0200, Stefan de Konink wrote:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512
I'm try to migrate using libvirt:
virsh # migrate 0802367323_PIQ002 xen://xen002.local/ libvir: Xen Daemon error : POST operation failed: xend_post: error from xen daemon: (xend.err 'Missing parameter: node')
Looks like the latest version of Xen adds yet another required migration parameter. Luckily it seems like older Xen should ignore unneeded parameters.. so does this work? Rich. -- Richard Jones, Emerging Technologies, Red Hat http://et.redhat.com/~rjones Read my OCaml programming blog: http://camltastic.blogspot.com/ Fedora now supports 68 OCaml packages (the OPEN alternative to F#) http://cocan.org/getting_started_with_ocaml_on_red_hat_and_fedora

-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 Richard W.M. Jones schreef:
On Mon, Oct 06, 2008 at 03:29:46AM +0200, Stefan de Konink wrote:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512
I'm try to migrate using libvirt:
virsh # migrate 0802367323_PIQ002 xen://xen002.local/ libvir: Xen Daemon error : POST operation failed: xend_post: error from xen daemon: (xend.err 'Missing parameter: node')
Looks like the latest version of Xen adds yet another required migration parameter.
Luckily it seems like older Xen should ignore unneeded parameters.. so does this work?
I didn't test it but from what I read in the new code, is the form function checks if specific parameters are available. Not if others are explicitly unavailable ;) So I'm a happy user now by patching libvirt. (If you could comment on my other question of this week about the actual implementation of using virMigrate, would be appreciated) Stefan -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iEYEAREKAAYFAkjs2wQACgkQYH1+F2Rqwn07xQCfYqmOCdL6NWmNO3c/cHAg8ul9 rtUAniGJzTvznUenAzBdYDTM5nlu1G4w =3YQ7 -----END PGP SIGNATURE----- --- src/xend_internal.c.old 2008-09-22 15:12:12.000000000 +0200 +++ src/xend_internal.c 2008-10-06 16:33:42.825335891 +0200 @@ -4268,6 +4268,8 @@ "live", live, "port", port, "resource", "0", /* required, xend ignores it */ + "node", "-1", /* required, don't know what it is */ + "ssl", "0", /* required, should we support it? */ NULL); VIR_FREE (hostname);
participants (3)
-
Daniel Veillard
-
Richard W.M. Jones
-
Stefan de Konink