[pve-devel] [PATCH qemu-server 4/4] implement PoC migration to remote cluster/node

Alexandre DERUMIER aderumier at odiso.com
Wed Mar 11 08:55:41 CET 2020


Hi,

Thinking about cross-cluster migration,

is there any plan to share storage across different cluster?
It's not uncommon to  have multiple cluster as we are currently limited by corosync, and a shared storage with differents pools.
It could avoid data copy and allow simple live migration (through the new websocket)


The main problem is unique ids.  Guid could be a solution, but only implemented for disk id, 
we couln't track orphans disk associations with vmid. 

and using guid for vmid too, we can't use tap|veth current scheme, as they are limited 15 bytes. 
(guid are 128bits, so 16 bytes  + an extra byte for nic number).


Or maybe find a way to generate smaller guid without colission ?

I found an article with some 64bits guid and twitter snowflake algorithm for example

https://www.callicoder.com/distributed-unique-id-sequence-number-generator/
https://github.com/twitter-archive/snowflake/tree/snowflake-2010


Of course, this should be optionnal. but if an guid is detected, we could allow cross cluster live migration without disk migration.








----- Mail original -----
De: "Thomas Lamprecht" <t.lamprecht at proxmox.com>
À: "pve-devel" <pve-devel at pve.proxmox.com>, "Fabian Grünbichler" <f.gruenbichler at proxmox.com>, "aderumier" <aderumier at odiso.com>, "dietmar" <dietmar at proxmox.com>
Envoyé: Mardi 10 Mars 2020 10:04:11
Objet: Re: [pve-devel] [PATCH qemu-server 4/4] implement PoC migration to remote cluster/node

On 3/10/20 9:22 AM, Fabian Grünbichler wrote: 
> do we need a stored mapping for intra-cluster migration as well? we 
> could put the same entities into the node config as well, and the 
> order of precedence would be: 

It could seem a bit strange to users to be able to have a convenience 
mapping for remotes but not for the cluster.. 

Thinking more about this, it could be better to have no mapping, as it 
could get outdated fast and we need to poll the current remote basic 
situation always anyway before doing something. 

We can show it really good gui-wise (without extra calls to remotes) 
so for that we do not need it. And for API/CLI users - they can have 
save their own mapping and pass it along? 




More information about the pve-devel mailing list