From c5029e9831ab5063485877213987d6827c4d86f1 Mon Sep 17 00:00:00 2001 From: James Page Date: Mon, 4 Mar 2019 09:25:46 +0000 Subject: [PATCH] Disable BuildFailureWeigher Disable the BuildFailureWeigher used when weighting hosts during instance scheduling. A single build failure will result in a -1000000 weighting which effectively excludes the hypervisor from the scheduling decision. A bad image can result in build failures resulting in a heavy load on hypervisors which have not had a build failure with those that have effectively being ignored; the build failure count will be reset on a successful build but due to the high weighting this won't happen until all resources on known good hypervisors have been completely consumed. Change-Id: I4d4367ef20e2a20aee1e26d4a0ec69cad2ac69d6 Closes-Bug: 1818239 --- templates/pike/nova.conf | 7 +++++++ templates/rocky/nova.conf | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/templates/pike/nova.conf b/templates/pike/nova.conf index dce249f0..db81ed77 100644 --- a/templates/pike/nova.conf +++ b/templates/pike/nova.conf @@ -185,6 +185,13 @@ enabled_filters = {{ scheduler_default_filters }},{{ additional_neutron_filters enabled_filters = {{ scheduler_default_filters }} {% endif %} +# Disable BuildFailureWeigher as any failed build will result +# in a very low weighting for the hypervisor, resulting in +# instances all being scheduled to hypervisors with no build +# failures. +# https://bugs.launchpad.net/charm-nova-cloud-controller/+bug/1818239 +build_failure_weight_multiplier = 0.0 + [api] auth_strategy=keystone {% if vendor_data or vendor_data_url -%} diff --git a/templates/rocky/nova.conf b/templates/rocky/nova.conf index bf1f7cda..f5b2c729 100644 --- a/templates/rocky/nova.conf +++ b/templates/rocky/nova.conf @@ -191,6 +191,13 @@ enabled_filters = {{ scheduler_default_filters }},{{ additional_neutron_filters enabled_filters = {{ scheduler_default_filters }} {% endif %} +# Disable BuildFailureWeigher as any failed build will result +# in a very low weighting for the hypervisor, resulting in +# instances all being scheduled to hypervisors with no build +# failures. +# https://bugs.launchpad.net/charm-nova-cloud-controller/+bug/1818239 +build_failure_weight_multiplier = 0.0 + [api] auth_strategy=keystone {% if vendor_data or vendor_data_url -%}