[I apologize for the duplicate. I forgot to add the mailing list to cc.]
Ian poked me about something important. Launching a VM in RHEV-M is consists
of 3 explicit steps:
1. Image (assembly actually - it includes OVF) is uploaded into RHEV-M
"Export Domain", which is an NFS share. This is done with cp(1).
2. RHEV-M is told to "import" this templave with a REST API call.
This allocates a volume in one of datacenter's main backing stores,
copies disk images (with qemu-img), and adds OVF to whatever lists.
3. Launching from "template", with another REST API call. This sets
up COW, virsh define, etc.
When I wrote existing dc-rhev-image in iwhd, I thought that step #2 would
be done by the Conductor. Ian told me that he has no code to do it, and
he would rather prefer that I hand him a template that is already "imported".
In the interests of helping the end-to-end chain working as soon as practical,
I have already starting implementing #2 in iwhd, but I still think it's not
something iwhd ought to do. When I'm done, we should take this code and
copy-paste it into Conductor immediately, and here's why.
First, there is management of additional locations, that iwhd has trouble
hiding: the Export domain versus Storage domain in RHEV-M. I am convinced
that whoever uses RHEV-M will end knowing that export domain exists.
Think for example that iwhd does not know how many "normal" storage
domains there are in RHEV-M, so my code selects the first it finds.
Second, each step can fail independently, and iwhd is an annoying layer
of opaque code. I am trying to make sure my error messages explain what
ran out of space as plainly as possible, but it may be ugly.
So, please give this a thought.
I perspective, IMHO, we should use our Red Hat connections and ask RHEV-M
developers to provide a way to upload VMs in the same way Amazon EC2 and
VMware vCloud do it, over HTTP, and directly into the main storage domain
instead of this "Export" domain. We would not be having this discussion
if they allowed direct uploads. Someone better file an RFE.
Show replies by date