Add disk-allocation-ration config option

We already support configuring ram and cpu overcommit so
this patch adds the ability to control disk overcommit.

Change-Id: Ib172e8b48cb34de4beb9cec1a277dc43ded36eed
Closes-Bug: 1726346
This commit is contained in:
Edward Hope-Morley 2017-10-23 12:11:35 +01:00
parent 5b85e562f4
commit af5a4ec747
9 changed files with 18 additions and 0 deletions

View File

@ -234,6 +234,14 @@ options:
.
Increasing this value will increase instance density on compute nodes
at the potential expense of instance performance.
disk-allocation-ratio:
type: float
default: 0.0
description: |
Increase the amount of disk space that nova can overcommit to guests.
.
Increasing this value will increase instance density on compute nodes
with an increased risk of hypervisor storage becoming full.
single-nova-consoleauth:
type: boolean
default: true

View File

@ -282,6 +282,8 @@ class NovaConfigContext(context.WorkerConfigContext):
ctxt['scheduler_default_filters'] = config('scheduler-default-filters')
if config('pci-alias'):
ctxt['pci_alias'] = config('pci-alias')
ctxt['disk_allocation_ratio'] = config('disk-allocation-ratio')
ctxt['cpu_allocation_ratio'] = config('cpu-allocation-ratio')
ctxt['ram_allocation_ratio'] = config('ram-allocation-ratio')
addr = resolve_address(INTERNAL)

View File

@ -34,6 +34,7 @@ ec2_workers = {{ workers }}
scheduler_default_filters = {{ scheduler_default_filters }}
cpu_allocation_ratio = {{ cpu_allocation_ratio }}
ram_allocation_ratio = {{ ram_allocation_ratio }}
disk_allocation_ratio = {{ disk_allocation_ratio }}
use_syslog={{ use_syslog }}
my_ip = {{ host_ip }}

View File

@ -34,6 +34,7 @@ ec2_workers = {{ workers }}
scheduler_default_filters = {{ scheduler_default_filters }}
cpu_allocation_ratio = {{ cpu_allocation_ratio }}
ram_allocation_ratio = {{ ram_allocation_ratio }}
disk_allocation_ratio = {{ disk_allocation_ratio }}
use_syslog={{ use_syslog }}
my_ip = {{ host_ip }}

View File

@ -40,6 +40,7 @@ pci_alias = {{ pci_alias }}
{% endif %}
cpu_allocation_ratio = {{ cpu_allocation_ratio }}
ram_allocation_ratio = {{ ram_allocation_ratio }}
disk_allocation_ratio = {{ disk_allocation_ratio }}
use_syslog={{ use_syslog }}
my_ip = {{ host_ip }}

View File

@ -40,6 +40,7 @@ pci_alias = {{ pci_alias }}
{% endif %}
cpu_allocation_ratio = {{ cpu_allocation_ratio }}
ram_allocation_ratio = {{ ram_allocation_ratio }}
disk_allocation_ratio = {{ disk_allocation_ratio }}
use_syslog={{ use_syslog }}
my_ip = {{ host_ip }}

View File

@ -37,6 +37,7 @@ pci_alias = {{ pci_alias }}
{% endif %}
cpu_allocation_ratio = {{ cpu_allocation_ratio }}
ram_allocation_ratio = {{ ram_allocation_ratio }}
disk_allocation_ratio = {{ disk_allocation_ratio }}
use_syslog={{ use_syslog }}
my_ip = {{ host_ip }}

View File

@ -30,6 +30,7 @@ osapi_compute_workers = {{ workers }}
cpu_allocation_ratio = {{ cpu_allocation_ratio }}
ram_allocation_ratio = {{ ram_allocation_ratio }}
disk_allocation_ratio = {{ disk_allocation_ratio }}
use_syslog={{ use_syslog }}
my_ip = {{ host_ip }}

View File

@ -312,6 +312,8 @@ class NovaComputeContextTests(CharmTestCase):
self.config('cpu-allocation-ratio'))
self.assertEqual(ctxt['ram_allocation_ratio'],
self.config('ram-allocation-ratio'))
self.assertEqual(ctxt['disk_allocation_ratio'],
self.config('disk-allocation-ratio'))
@mock.patch.object(context, 'format_ipv6_addr')
@mock.patch.object(context, 'resolve_address')