Make chunk size configurable for swift-backed glance

Bug #1436647 reported by Jordan Callicoat
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
OpenStack-Ansible
Fix Released
Medium
Andy McCrae
Icehouse
Fix Released
Medium
Andy McCrae
Juno
Fix Released
Medium
Andy McCrae
Trunk
Fix Released
Medium
Andy McCrae

Bug Description

We are currently hard-coding the chunk size to 200MB when glance is backed by swift. The result is that customers with large images get a ton of segments created for each image. Once the number of objects gets into the thousands you notice lag on swift operations. Once it gets into the tens of thousands we start seeing very noticeable impact, timeouts booting instances, etc. I propose making the option configurable, and using the same 5G (5120M) chunk size used by Cloud Files as the default value.

Changed in openstack-ansible:
status: Triaged → In Progress
Revision history for this message
Andy McCrae (andrew-mccrae) wrote :

I've added the 2 large object variables as ansible variables so these can be overwritten if you want.

I haven't changed the default chunk size though - the chunk is buffered in memory so I'm not sure that adjusting the default is a sensible idea - If your host has a large amount of memory then it may be fine but I don't think we should mandate that as a 1 size fits all best value.

Additionally, if swift is performing poorly that should probably be investigated it seems like swift shouldn't have an issue handling large amount of objects.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to os-ansible-deployment (master)

Reviewed: https://review.openstack.org/169693
Committed: https://git.openstack.org/cgit/stackforge/os-ansible-deployment/commit/?id=ad691bc026c326877dde4d838762ead1ea0a8fa8
Submitter: Jenkins
Branch: master

commit ad691bc026c326877dde4d838762ead1ea0a8fa8
Author: Andy McCrae <email address hidden>
Date: Wed Apr 1 11:44:05 2015 +0100

    Set Glance large_object vars as ansible variables

    * Allow swift_store_large_object_size to be set
    * Allow swift_store_large_object_chunk_size to be set

    Change-Id: Iea115f5864a49f798830c30febf26d4fca3c43e5
    Partial-Bug: #1436647

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to os-ansible-deployment (juno)

Reviewed: https://review.openstack.org/169717
Committed: https://git.openstack.org/cgit/stackforge/os-ansible-deployment/commit/?id=ea0189bf60676db4ab588303c62d9d4e26f3e099
Submitter: Jenkins
Branch: juno

commit ea0189bf60676db4ab588303c62d9d4e26f3e099
Author: Andy McCrae <email address hidden>
Date: Wed Apr 1 12:59:30 2015 +0100

    Set Glance large_object vars as ansible variables

    * Allow swift_store_large_object_size to be set
    * Allow swift_store_large_object_chunk_size to be set

    Change-Id: Iea115f5864a49f798830c30febf26d4fca3c43e5
    Partial-Bug: #1436647

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to os-ansible-deployment (icehouse)

Reviewed: https://review.openstack.org/169719
Committed: https://git.openstack.org/cgit/stackforge/os-ansible-deployment/commit/?id=3902c9c6a9a64bc6a3c6e3ebb10525d17fabf1ec
Submitter: Jenkins
Branch: icehouse

commit 3902c9c6a9a64bc6a3c6e3ebb10525d17fabf1ec
Author: Andy McCrae <email address hidden>
Date: Wed Apr 1 12:59:30 2015 +0100

    Set Glance large_object vars as ansible variables

    * Allow swift_store_large_object_size to be set
    * Allow swift_store_large_object_chunk_size to be set

    Change-Id: Iea115f5864a49f798830c30febf26d4fca3c43e5
    Partial-Bug: #1436647
    (cherry picked from commit 7d608c197b08efc1f220e8b66c8135a825eeffe4)

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.