[Engine-devel] VM hibernation to storage domain

Jon Choate jchoate at redhat.com
Mon Dec 12 20:31:50 UTC 2011


On 12/12/2011 02:10 PM, Yaniv Kaul wrote:
> On 12/12/2011 21:04, Jon Choate wrote:
>> On 12/12/2011 01:46 PM, Yaniv Kaul wrote:
>>> On 12/12/2011 19:22, Jon Choate wrote:
>>>> Is there any reason anyone can think of why we would need to 
>>>> specify a specific storage domain for a VM to use when it 
>>>> hibernates?  Ideally we could just grab any storage domain that has 
>>>> space and use it for hibernation (as long a we remember where we 
>>>> did it!).
>>>>
>>>> thoughts?
>>>> _______________________________________________
>>>> Engine-devel mailing list
>>>> Engine-devel at ovirt.org
>>>> http://lists.ovirt.org/mailman/listinfo/engine-devel
>>>
>>> Probably for the same reason we enforce all VMs disks to be on the 
>>> same storage domain. Habit.
>> Eliminating this dependency would be part of the feature to allow VMs 
>> to have their disks on multiple storage domains.
>>> But I also think it make sense, for the hibernation file to be in 
>>> the same SD as the system disk. There's also a higher chance that 
>>> domain will be online and available to the host.
>>> Y.
>> Is it possible for ovirt-engine to identify which disk is the system 
>> disk?
>
> In several ways:
> 1. Guess.
> 2. The first
> 3. Use the one with the 'Is Bootable' flag.
Those all seem to have the possibility of getting the wrong disk.  If 
the cost of getting the wrong disk is low anyway then I would argue that 
we don't need to find the system disk and we could hibernate alongside 
any disk.

> Y.
>
>>
>> What should the algorithm be for determining a storage domain to 
>> hibernate a diskless VM?
>
> None, we should only support S4 and say farewell to the external 
> hibernation. I don't think there is a good enough reason to keep it 
> (Ayal might disagree, but I disagree with his reasons).
>
>>
>> It seems like things would be simplified if we did not restrict 
>> ourselves and could use any available storage domain regardless of 
>> whether the vm has disks or not.
>
> Perhaps. What's the real benefit, except of freedom of choice? I 
> personally would look at compressing that hibernation file, btw. 
> Always annoyed me the size of it, and I expect fast compression to 
> enable faster suspend-resume cycles. I believe libvirt support some 
> compression methods.
> Y.
>
The benefit is that we have one code path for hibernation.  The user 
likely doesn't understand what happens during hibernation and likely 
doesn't care where the data is stored so we should choose the easiest 
path for us to implement. My (perhaps naive) assumption is that all 
storage domains are just as reliable and choosing one randomly will not 
be any worse than any algorithm we could design.



More information about the Engine-devel mailing list