[Openstack-operators] Setting IOthreads on a Nova Instance

pushpesh sharma pushpesh.eck at gmail.com
Tue Jun 16 13:02:01 UTC 2015


Thanks for your response. So there is no better way, it seems.

On Fri, Jun 12, 2015 at 3:06 PM, Sebastien Han <seb at redhat.com> wrote:
> Unfortunately crucial flags like ‘iothreads’ and ‘io’ don’t exist in Nova.
> They are also part of the simple patches that take ages (and eventually get abandoned) to be merged.
> I don’t think editing all of your instance is a good way to do it either.
> If you want to hack an instance, you should probably edit all xml files on your system and simply restart the VM using virsh itself.
> As far as I remember there is on file in /var/lib/nova/instances/<id> and one somewhere in /etc/libvirt
>> On 12 Jun 2015, at 08:49, pushpesh sharma <pushpesh.eck at gmail.com> wrote:
>> Hi list,
>> I need some expert opinion on some problem I am facing with
>> OpenStack+Ceph environment.
>> I running a 3+ node cluster with OpenStack Juno. It is using ceph RBDs
>> as cinder volumes. Functionally setup is working fine. However my
>> expectation are related to block performance of RBDs inside a VM.
>> I am observing a throttling effect in 100%- 4K RR iops after a point.
>> Lots of CPU
>> cycles got wasted in iowait. I suspect a single iothread per VM is
>> causing this.I came to know about few tuning parameter that libvirt
>> provides. It looks pretty straight forward to set these parameter
>> in domain xml . However I am not able to do so. I didn't find any way
>> to pass these
>> parameter form nova directly, and when I edit domain.xml directly
>> using 'virsh edit' the changes vanish even after saving the xml
>> properly.(I know it is not a clean way to this, but a hack)
>> It could be validation problem:-
>> ############
>> #virsh dumpxml instance-000000c5 > vm.xml
>> #virt-xml-validate vm.xml
>> Relax-NG validity error : Extra element cpu in interleave
>> vm.xml:1: element domain: Relax-NG validity error : Element domain
>> failed to validate content
>> vm.xml fails to validate
>> ##################
>> Second approach I took was to setting QoS in volumes types. But there
>> is no option to set iothreads per volume, there are parameters related
>> to max_read/wrirte ops/bytes.
>> Thirdly, editing Nova flavor and proving extra specs like
>> hw:cpu_socket/thread/core, can change guest CPU topology however again
>> no way to set iothread. It does accept hw_disk_iothreads(no type check
>> in place, i believe ), but can not pass the same in domain.xml.
>> Please suggest me a way to set the same.
>> --
>> -Pushpesh
>> _______________________________________________
>> OpenStack-operators mailing list
>> OpenStack-operators at lists.openstack.org
>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators
> Cheers.
> ––––
> Sébastien Han
> Senior Cloud Architect
> "Always give 100%. Unless you're giving blood."
> Mail: seb at redhat.com
> Address: 11 bis, rue Roquépine - 75008 Paris


More information about the OpenStack-operators mailing list