summaryrefslogtreecommitdiffstats
path: root/nova/utils.py
diff options
context:
space:
mode:
authorChris Behrens <cbehrens@codestud.com>2013-05-15 20:00:04 +0000
committerChris Behrens <cbehrens@codestud.com>2013-06-05 20:37:33 +0000
commit3a89638691b1e9eb167886793c7819be4fd8dc4f (patch)
treeeed3b5ffab2449a1d432ebef7afd3d899f574e21 /nova/utils.py
parente9687d8bc7c5ba3ea4e348f61d2e658ad5099144 (diff)
downloadnova-3a89638691b1e9eb167886793c7819be4fd8dc4f.tar.gz
nova-3a89638691b1e9eb167886793c7819be4fd8dc4f.tar.xz
nova-3a89638691b1e9eb167886793c7819be4fd8dc4f.zip
Allocate networks in the background
Setting up networks and allocating IP addresses has the potential to take an undesirable amount of time, blocking the build of a new instance. We can parallelize some work by querying for this information *while* a new instance is being provisioned in the virt driver. This adds a wrapper around the NetworkInfo model which allows one to query for network information in a greenthread. When a code path is hit that actually needs the network information, it waits for the greenthread to finish, if it hasn't already. Network allocation will only be async for virt drivers that accept this NetworkInfo model. Other drivers that expect the legacy format end up waiting for the operation to complete before driver.spawn is called. Implements blueprint async-network-alloc Change-Id: I389f939b9a36bc20b3b66e98d006d694622bd963
Diffstat (limited to 'nova/utils.py')
0 files changed, 0 insertions, 0 deletions