nova/nova/conf
Balazs Gibizer 968981b585 Reserve DISK_GB resource for the image cache
If the nova compute image cache is on the same disk as the instance
directory then the images in the cache will consume the same disk
resource as the nova instances which can lead to disk overallocation.

This patch adds a new config option
[workarounds]/reserve_disk_resource_for_image_cache . If it is set the
libvirt driver will reserve DISK_GB resources in placement for the
actual size of the image cache.

This is a low complexity solution with known limitations:
* Reservation is updated long after the image is downloaded
* This code allows the reservation to push the provider into negative
available resource if the reservation + allocations exceed the total
inventory.

Change-Id: If874f018ea996587e178219569c2903c2ee923cf
Closes-Bug: #1878024
(cherry picked from commit 89fe504abf)
2020-05-20 07:25:32 +00:00
..
__init__.py ksa auth conf and client for Cyborg access 2020-03-21 12:03:37 -07:00
api.py nova-net: Remove final references to nova-network 2020-01-08 13:54:12 +00:00
availability_zone.py Default AZ for instance if cross_az_attach=False and checking from API 2019-10-31 10:08:46 -04:00
base.py Ensure config regexes match the entire string 2019-02-13 08:16:45 -05:00
cache.py conf: Make list->dict conversion more specific 2016-09-14 12:10:29 +00:00
cinder.py Default AZ for instance if cross_az_attach=False and checking from API 2019-10-31 10:08:46 -04:00
compute.py Create and bind Cyborg ARQs. 2020-03-21 12:03:38 -07:00
conductor.py conf: Remove '[conductor] topic' opt 2018-03-12 13:26:08 +00:00
configdrive.py conf: Rename 'configuration drive' to 'config drive' 2019-06-20 18:23:14 +01:00
console.py Allow TLS ciphers/protocols to be configurable for console proxies 2020-02-12 15:05:22 -06:00
consoleauth.py Remove nova-consoleauth 2019-07-05 15:04:47 +00:00
cyborg.py ksa auth conf and client for Cyborg access 2020-03-21 12:03:37 -07:00
database.py Add useful error log when _determine_version_cap raises DBNotAllowed 2019-08-07 13:13:06 -04:00
devices.py Support different vGPU types per pGPU 2020-04-09 17:54:26 +02:00
ephemeral_storage.py Parse algorithm from cipher for ephemeral disk encryption 2017-04-26 11:19:43 -04:00
glance.py Deprecate [glance]api_servers 2019-10-30 16:18:31 -05:00
guestfs.py conf: Resolve Sphinx errors 2018-07-02 14:00:12 +01:00
hyperv.py hacking: Resolve W605 (invalid escape sequence) 2019-06-24 14:24:06 -05:00
imagecache.py Consolidate [image_cache] conf options 2019-11-13 11:09:03 -06:00
ironic.py Merge "Remove [ironic]api_endpoint option" 2019-05-03 21:08:38 +00:00
key_manager.py Add secret=true to fixed_key configuration parameter 2018-12-03 14:39:51 -05:00
keystone.py Use ksa adapter for keystone conf & requests 2017-11-30 22:33:01 +00:00
libvirt.py add [libvirt]/max_queues config option 2019-12-02 15:46:50 +00:00
mks.py Use URIOpt 2017-07-18 00:38:24 +00:00
netconf.py nova-net: Kill it 2020-01-14 21:25:56 +00:00
neutron.py Add config option for neutron client retries 2020-03-19 15:25:58 +00:00
notifications.py Change the default of notification_format to unversioned 2019-06-04 10:36:45 +02:00
novnc.py Allow TLS ciphers/protocols to be configurable for console proxies 2020-02-12 15:05:22 -06:00
opts.py conf: Make list->dict conversion more specific 2016-09-14 12:10:29 +00:00
paths.py Make nova build reproducible 2018-03-09 13:12:39 +01:00
pci.py docs: Clarify configuration steps for PF devices 2019-12-02 16:31:28 +00:00
placement.py Delete the placement code 2019-04-28 20:06:15 +00:00
powervm.py Powervm configuration cleanup 2018-06-13 11:48:30 -05:00
quota.py nova-net: Remove remaining nova-network quotas 2019-12-02 17:39:23 +00:00
rdp.py Use URIOpt 2017-07-18 00:38:24 +00:00
remote_debug.py Use HostAddressOpt for opts that accept IP and hostnames 2017-04-03 16:40:36 +05:30
rpc.py compute: Use long_rpc_timeout in reserve_block_device_name 2019-11-26 08:50:34 +00:00
scheduler.py Add transform_image_metadata request filter 2020-03-24 17:28:50 +00:00
serial_console.py hacking: Resolve W605 (invalid escape sequence) 2019-06-24 14:24:06 -05:00
service.py conf: Deprecate 'network_manager' 2018-06-22 15:04:48 +01:00
service_token.py Service token is not experimental 2017-11-21 17:36:32 +00:00
servicegroup.py conf: Use new-style choice values 2018-09-12 09:45:06 -06:00
spice.py conf: Resolve Sphinx errors 2018-07-02 14:00:12 +01:00
upgrade_levels.py nova-net: Kill it 2020-01-14 21:25:56 +00:00
utils.py Get auth from context for glance endpoint 2017-11-21 10:26:42 -06:00
vendordata.py Use a service account to make vendordata requests. 2017-01-26 13:39:46 +00:00
vmware.py vmware: Remove vestigial nova-network support 2019-11-29 17:20:03 +00:00
vnc.py Remove 'nova-xvpvncproxy' 2019-12-23 14:20:28 +00:00
workarounds.py Reserve DISK_GB resource for the image cache 2020-05-20 07:25:32 +00:00
wsgi.py Add missing ws seperator between words 2018-11-26 23:42:18 +00:00
xenserver.py Deprecate the XenAPIDriver 2019-09-06 11:36:22 -04:00
zvm.py z/VM Driver: Spawn and destroy function of z/VM driver 2018-07-16 11:35:11 +08:00