compute/hypervisor: Update libvirtd flags for block_migrations

In case of a live-migration w/o shared storage, the base image (backing
file) is shared on all compute nodes, but with only NON_SHARED_INC
(default) flag libvirt do a merge of image and backing file during the
transfer. This result in a big and not sparsify image.

LP: #1350857
This commit is contained in:
Sebastien Badia 2014-08-06 01:46:13 +02:00
parent 70f99aec3b
commit 026916cb4c
2 changed files with 5 additions and 3 deletions

View File

@ -222,9 +222,10 @@ Host *
# Extra config for nova-compute
nova_config {
'libvirt/inject_key': value => false;
'libvirt/inject_partition': value => '-2';
'libvirt/live_migration_flag': value => 'VIR_MIGRATE_UNDEFINE_SOURCE,VIR_MIGRATE_PEER2PEER,VIR_MIGRATE_LIVE,VIR_MIGRATE_PERSIST_DEST';
'libvirt/inject_key': value => false;
'libvirt/inject_partition': value => '-2';
'libvirt/live_migration_flag': value => 'VIR_MIGRATE_UNDEFINE_SOURCE,VIR_MIGRATE_PEER2PEER,VIR_MIGRATE_LIVE,VIR_MIGRATE_PERSIST_DEST';
'libvirt/block_migration_flag': value => 'VIR_MIGRATE_UNDEFINE_SOURCE,VIR_MIGRATE_PEER2PEER,VIR_MIGRATE_LIVE,VIR_DOMAIN_BLOCK_REBASE_COPY,VIR_DOMAIN_BLOCK_REBASE_SHALLOW';
}
class { 'ceilometer::agent::compute': }

View File

@ -250,6 +250,7 @@ describe 'cloud::compute::hypervisor' do
should contain_nova_config('libvirt/inject_key').with('value' => false)
should contain_nova_config('libvirt/inject_partition').with('value' => '-2')
should contain_nova_config('libvirt/live_migration_flag').with('value' => 'VIR_MIGRATE_UNDEFINE_SOURCE,VIR_MIGRATE_PEER2PEER,VIR_MIGRATE_LIVE,VIR_MIGRATE_PERSIST_DEST')
should contain_nova_config('libvirt/block_migration_flag').with('value' => 'VIR_MIGRATE_UNDEFINE_SOURCE,VIR_MIGRATE_PEER2PEER,VIR_MIGRATE_LIVE,VIR_DOMAIN_BLOCK_REBASE_COPY,VIR_DOMAIN_BLOCK_REBASE_SHALLOW')
end
context 'with dbus on Ubuntu' do