From de3c2ec04b1c3f112a0bb1975e22122e39b1da29 Mon Sep 17 00:00:00 2001 From: Rajesh Tailor Date: Mon, 12 Aug 2019 14:38:02 +0530 Subject: [PATCH] Add new role parameters for cpu/ram/disk allocation ratio This change adds three new role parameters `NovaCPUAllocationRatio`, `NovaRAMAllocationRatio` and `NovaDiskAllocationRatio` for configuring cpu_allocation_ratio, ram_allocation_ratio and disk_allocation_ratio. The default values for CPU and Disk allocation ratio are taken as 0.0 as it will be updated by update_available_resource method as mentioned in [1]. [1] https://specs.openstack.org/openstack/nova-specs/specs/stein/implemented/initial-allocation-ratios.html Conflicts: deployment/nova/nova-compute-container-puppet.yaml puppet/services/nova-base.yaml Related: https://bugzilla.redhat.com/show_bug.cgi?id=1909661 Change-Id: Ia3c62668b0c1469e31aa8cd2c984b460eb06d970 (cherry picked from commit 5066737451035de19383bf1f7a2afa5334d7d361) --- puppet/services/nova-compute.yaml | 24 +++++++++++++++++++ .../allocation_ratio-4a8ecf4cdf5fb7e2.yaml | 13 ++++++++++ 2 files changed, 37 insertions(+) create mode 100644 releasenotes/notes/allocation_ratio-4a8ecf4cdf5fb7e2.yaml diff --git a/puppet/services/nova-compute.yaml b/puppet/services/nova-compute.yaml index 1d585a0577..2a8c0e204c 100644 --- a/puppet/services/nova-compute.yaml +++ b/puppet/services/nova-compute.yaml @@ -241,6 +241,24 @@ parameters: type: boolean tags: - role_specific + NovaCPUAllocationRatio: + type: number + description: Virtual CPU to physical CPU allocation ratio. + default: 0.0 + tags: + - role_specific + NovaRAMAllocationRatio: + type: number + description: Virtual RAM to physical RAM allocation ratio. + default: 1.0 + tags: + - role_specific + NovaDiskAllocationRatio: + type: number + description: Virtual disk to physical disk allocation ratio. + default: 0.0 + tags: + - role_specific conditions: enable_live_migration_tunnelled: @@ -301,6 +319,9 @@ resources: nova::compute::resume_guests_state_on_host_boot: NovaResumeGuestsStateOnHostBoot resume_guests_state_on_host_boot: NovaResumeGuestsStateOnHostBoot nova::compute::rbd::ephemeral_storage: NovaEnableRbdBackend + nova::cpu_allocation_ratio: NovaCPUAllocationRatio + nova::ram_allocation_ratio: NovaRAMAllocationRatio + nova::disk_allocation_ratio: NovaDiskAllocationRatio - values: {get_param: [RoleParameters]} - values: NovaVcpuPinSet: {get_param: NovaVcpuPinSet} @@ -361,6 +382,9 @@ resources: NovaLibvirtMemStatsPeriodSeconds: {get_param: NovaLibvirtMemStatsPeriodSeconds} NovaResumeGuestsStateOnHostBoot: {get_param: NovaResumeGuestsStateOnHostBoot} NovaEnableRbdBackend: {get_param: NovaEnableRbdBackend} + NovaCPUAllocationRatio: {get_param: NovaCPUAllocationRatio} + NovaRAMAllocationRatio: {get_param: NovaRAMAllocationRatio} + NovaDiskAllocationRatio: {get_param: NovaDiskAllocationRatio} outputs: role_data: diff --git a/releasenotes/notes/allocation_ratio-4a8ecf4cdf5fb7e2.yaml b/releasenotes/notes/allocation_ratio-4a8ecf4cdf5fb7e2.yaml new file mode 100644 index 0000000000..1e29b9240d --- /dev/null +++ b/releasenotes/notes/allocation_ratio-4a8ecf4cdf5fb7e2.yaml @@ -0,0 +1,13 @@ +--- +features: + - | + Add new role parameters `NovaCPUAllocationRatio`, `NovaRAMAllocationRatio` + and `NovaDiskAllocationRatio` which allows to configure `cpu_allocation_ratio`, + `ram_allocation_ratio` and `disk_allocation_ratio`. + Default value for NovaCPUAllocationRatio is 0.0 + Default value for NovaRAMAllocationRatio is 1.0 + Default value for NovaDiskAllocationRatio is 0.0 + + The default values for CPU and Disk allocation ratio + are taken 0.0 as mentioned in [1]. + [1] https://specs.openstack.org/openstack/nova-specs/specs/stein/implemented/initial-allocation-ratios.html