[one-users] Setting the "SHAREABLE" attribute

Gareth Bult gareth at linux.co.uk
Thu Jan 30 04:47:28 PST 2014


Mmm, I'm not entirely sure "which" cache is turned off here, but the version of 
libvirt I seem to be running refuses to migrate an attached block device unless it's
marked as sharable. It's not that it fails physically, libvirt just refuses to do it ...

(I struggled for quite some time with being unable to migrate until I came across this ...)

[Ubuntu server 13.10]

-- 
	
Gareth Bult 
“The odds of hitting your target go up dramatically when you aim at it.” 
See the status of my current project at http://vdc-store.com 


----- Original Message -----
From: "Javier Fontan" <jfontan at opennebula.org>
To: "Gareth Bult" <gareth at linux.co.uk>
Cc: users at lists.opennebula.org
Sent: Thursday, 30 January, 2014 12:12:03 PM
Subject: Re: [one-users] Setting the "SHAREABLE" attribute

I've been digging a bit more in the shareable issue and it seems that
setting "shareable" to a disk just disables cache in qemu/kvm[1]:

--8<------
4158         virBufferAsprintf(&opt, ",cache=%s", mode);
4159     } else if (disk->shared && !disk->readonly) {
4160         virBufferAddLit(&opt, ",cache=off");
4161     }
------>8--

Isn't it enough to disable cache for disks that can be migrated?

[1] http://libvirt.org/git/?p=libvirt.git;a=blob;f=src/qemu/qemu_command.c;h=e1ff2872209de43a5d9591d7096ca887ed429df3;hb=HEAD#l4159

On Tue, Nov 19, 2013 at 1:16 PM, Gareth Bult <gareth at linux.co.uk> wrote:
> Hi,
>
> I've bypassed this for now by adding a line to "deploy" that says;
> /var/lib/one/remotes/hooks/vdc/deploy.py $domain
> #(just below cat > $domain)
>
> And adding the python script;
>
> #!/usr/bin/python
>
> import xml.etree.ElementTree as ET
> from sys import argv
> original = ET.parse(argv[1])
> params = original.findall(".//disk")
> for p in params: if p.get('device') == 'disk':
> p.insert(0,ET.Element("shareable",{}))
> original.write(argv[1])
>
> This makes all devices of type "disk" shareable.
>
> I *think* anyone using current versions of KVM/libvirt who want to do live
> migration will need this ... unless
> they set "cache=none", which doesn't always do great things for your
> performance ...
>
>
> --
> Gareth Bult
> "The odds of hitting your target go up dramatically when you aim at it."
>
>
>
> ________________________________
> From: "Javier Fontan" <jfontan at opennebula.org>
> To: "Gareth Bult" <gareth at linux.co.uk>
> Cc: users at lists.opennebula.org
> Sent: Tuesday, 19 November, 2013 11:54:07 AM
> Subject: Re: [one-users] Setting the "SHAREABLE" attribute
>
>
> Right now there is no way to set this value as the deployment file (libvirt
> xml file) is generated in the core and lacks this functionality.
>
> We are evaluating the best way to fix. Adding a "raw" parameter for DISKS
> will be enough or would it be better to have also a default RAW section for
> all the disks?
>
> There are more generic and maybe better ways to add this feature but we are
> really near to the 4.4 release and we are not sure if they can make the
> feature cut.
>
> Cheers
>
>
> On Mon, Nov 18, 2013 at 11:57 AM, Gareth Bult <gareth at linux.co.uk> wrote:
>>
>> Hi,
>>
>> For the most recent versions of libvirt, in order to do a live migration
>> with writethru cache turned
>> on, the "<SHAREABLE/>" attribute needs to be set in the DISK section of
>> the configuration. "virt-manager"
>> has a tick box for this in it's disk setup section .. is there an easy way
>> to implement this in OpenNebula?
>>
>> tia
>>
>> --
>> Gareth Bult
>> "The odds of hitting your target go up dramatically when you aim at it."
>>
>>
>>
>>
>> _______________________________________________
>> Users mailing list
>> Users at lists.opennebula.org
>> http://lists.opennebula.org/listinfo.cgi/users-opennebula.org
>>
>
>
>
> --
> Javier Fontán Muiños
> Developer
> OpenNebula - The Open Source Toolkit for Data Center Virtualization
> www.OpenNebula.org | @OpenNebula | github.com/jfontan
>



-- 
Javier Fontán Muiños
Developer
OpenNebula - The Open Source Toolkit for Data Center Virtualization
www.OpenNebula.org | @OpenNebula | github.com/jfontan



More information about the Users mailing list