Even though traffic generated is not primarily the issue, it’s still a waste of traffic - I think if opennebula adds the following functionality it would really improve the user experience.
When an image is launched, opennebula checks the host if the image exists or not - if it doesn’t exists or the MD5 hash doesn’t match, then starts transferring that image to OpenNebula host, afterwards sends the instructions (template, etc.) for the disk to be created directly by the host, followed by the VM launching.
If the image already exists, it simply sends the instructions to create the disk and then deploys the disk locally.
Thus only one transfer is required on the host, meaning that for deployments that do not have a fast private network (or has multiple clusters that are not in the same region) then the image must be only transferred once.
This saves bandwidth, as well as time for the user.
What do you think? I’m assuming this functionality is not possible with OpenNebula at this current moment but I don’t see any limitations that can stop this from becoming a reality.