Browse code

Set [scheduler]workers=$API_WORKERS

Since blueprint placement-claims in Pike, the Nova FilterScheduler
uses the placement service to make resource allocation 'claims'
before sending the build request to the chosen compute host to
perform the legacy style resource claim. This allows us to safely
scale out the number of scheduler workers when using the FilterScheduler.

The [scheduler]workers option defaults to ncpu if using the
FilterScheduler (which is the default scheduler driver) so to avoid
out of memory issues, we need to set $API_WORKERS scheduler workers
if using the FilterScheduler in devstack.

Depends-On: Ifdcd363d7bc22e73d76d69777483e5aaff4036e3
Change-Id: Ieae234eb5388560b3f66bf60c156a91a8e831bc4

Matt Riedemann authored on 2018/02/19 07:14:48
Showing 1 changed files
... ...
@@ -413,6 +413,9 @@ function create_nova_conf {
413 413
     iniset $NOVA_CONF DEFAULT rootwrap_config "$NOVA_CONF_DIR/rootwrap.conf"
414 414
     iniset $NOVA_CONF scheduler driver "$SCHEDULER"
415 415
     iniset $NOVA_CONF filter_scheduler enabled_filters "$FILTERS"
416
+    if [[ $SCHEDULER == "filter_scheduler" ]]; then
417
+        iniset $NOVA_CONF scheduler workers "$API_WORKERS"
418
+    fi
416 419
     iniset $NOVA_CONF DEFAULT default_floating_pool "$PUBLIC_NETWORK_NAME"
417 420
     if [[ $SERVICE_IP_VERSION == 6 ]]; then
418 421
         iniset $NOVA_CONF DEFAULT my_ip "$HOST_IPV6"