The nova-conductor service running in the cell
needs to be configured to talk to neutron for
things like deallocating networks during server
build failure. This changes the configure_neutron_nova
flows such that the top-level nova.conf is configured
as before, but we also configure each nova_cell*.conf
cell conductor config files to also be able to talk
to neutron.
Change-Id: Ic5e17298996b5fb085272425bb3b68583247aa34
Closes-Bug: #1777505
... | ... |
@@ -325,25 +325,27 @@ function configure_neutron_rootwrap { |
325 | 325 |
} |
326 | 326 |
|
327 | 327 |
# Make Neutron-required changes to nova.conf |
328 |
+# Takes a single argument which is the config file to update. |
|
328 | 329 |
function configure_neutron_nova_new { |
329 |
- iniset $NOVA_CONF DEFAULT use_neutron True |
|
330 |
- iniset $NOVA_CONF neutron auth_type "password" |
|
331 |
- iniset $NOVA_CONF neutron auth_url "$KEYSTONE_SERVICE_URI" |
|
332 |
- iniset $NOVA_CONF neutron username neutron |
|
333 |
- iniset $NOVA_CONF neutron password "$SERVICE_PASSWORD" |
|
334 |
- iniset $NOVA_CONF neutron user_domain_name "Default" |
|
335 |
- iniset $NOVA_CONF neutron project_name "$SERVICE_TENANT_NAME" |
|
336 |
- iniset $NOVA_CONF neutron project_domain_name "Default" |
|
337 |
- iniset $NOVA_CONF neutron auth_strategy $NEUTRON_AUTH_STRATEGY |
|
338 |
- iniset $NOVA_CONF neutron region_name "$REGION_NAME" |
|
339 |
- |
|
340 |
- iniset $NOVA_CONF DEFAULT firewall_driver nova.virt.firewall.NoopFirewallDriver |
|
330 |
+ local conf="$1" |
|
331 |
+ iniset $conf DEFAULT use_neutron True |
|
332 |
+ iniset $conf neutron auth_type "password" |
|
333 |
+ iniset $conf neutron auth_url "$KEYSTONE_SERVICE_URI" |
|
334 |
+ iniset $conf neutron username neutron |
|
335 |
+ iniset $conf neutron password "$SERVICE_PASSWORD" |
|
336 |
+ iniset $conf neutron user_domain_name "Default" |
|
337 |
+ iniset $conf neutron project_name "$SERVICE_TENANT_NAME" |
|
338 |
+ iniset $conf neutron project_domain_name "Default" |
|
339 |
+ iniset $conf neutron auth_strategy $NEUTRON_AUTH_STRATEGY |
|
340 |
+ iniset $conf neutron region_name "$REGION_NAME" |
|
341 |
+ |
|
342 |
+ iniset $conf DEFAULT firewall_driver nova.virt.firewall.NoopFirewallDriver |
|
341 | 343 |
|
342 | 344 |
# optionally set options in nova_conf |
343 |
- neutron_plugin_create_nova_conf |
|
345 |
+ neutron_plugin_create_nova_conf $conf |
|
344 | 346 |
|
345 | 347 |
if is_service_enabled neutron-metadata-agent; then |
346 |
- iniset $NOVA_CONF neutron service_metadata_proxy "True" |
|
348 |
+ iniset $conf neutron service_metadata_proxy "True" |
|
347 | 349 |
fi |
348 | 350 |
|
349 | 351 |
} |
... | ... |
@@ -568,9 +570,23 @@ function configure_neutron { |
568 | 568 |
function configure_neutron_nova { |
569 | 569 |
if is_neutron_legacy_enabled; then |
570 | 570 |
# Call back to old function |
571 |
- create_nova_conf_neutron "$@" |
|
571 |
+ create_nova_conf_neutron $NOVA_CONF |
|
572 |
+ if [[ "${CELLSV2_SETUP}" == "superconductor" ]]; then |
|
573 |
+ for i in $(seq 1 $NOVA_NUM_CELLS); do |
|
574 |
+ local conf |
|
575 |
+ conf=$(conductor_conf $i) |
|
576 |
+ create_nova_conf_neutron $conf |
|
577 |
+ done |
|
578 |
+ fi |
|
572 | 579 |
else |
573 |
- configure_neutron_nova_new "$@" |
|
580 |
+ configure_neutron_nova_new $NOVA_CONF |
|
581 |
+ if [[ "${CELLSV2_SETUP}" == "superconductor" ]]; then |
|
582 |
+ for i in $(seq 1 $NOVA_NUM_CELLS); do |
|
583 |
+ local conf |
|
584 |
+ conf=$(conductor_conf $i) |
|
585 |
+ configure_neutron_nova_new $conf |
|
586 |
+ done |
|
587 |
+ fi |
|
574 | 588 |
fi |
575 | 589 |
} |
576 | 590 |
|
... | ... |
@@ -366,31 +366,32 @@ function configure_mutnauq { |
366 | 366 |
} |
367 | 367 |
|
368 | 368 |
function create_nova_conf_neutron { |
369 |
- iniset $NOVA_CONF DEFAULT use_neutron True |
|
370 |
- iniset $NOVA_CONF neutron auth_type "password" |
|
371 |
- iniset $NOVA_CONF neutron auth_url "$KEYSTONE_AUTH_URI" |
|
372 |
- iniset $NOVA_CONF neutron username "$Q_ADMIN_USERNAME" |
|
373 |
- iniset $NOVA_CONF neutron password "$SERVICE_PASSWORD" |
|
374 |
- iniset $NOVA_CONF neutron user_domain_name "$SERVICE_DOMAIN_NAME" |
|
375 |
- iniset $NOVA_CONF neutron project_name "$SERVICE_PROJECT_NAME" |
|
376 |
- iniset $NOVA_CONF neutron project_domain_name "$SERVICE_DOMAIN_NAME" |
|
377 |
- iniset $NOVA_CONF neutron auth_strategy "$Q_AUTH_STRATEGY" |
|
378 |
- iniset $NOVA_CONF neutron region_name "$REGION_NAME" |
|
369 |
+ local conf="$1" |
|
370 |
+ iniset $conf DEFAULT use_neutron True |
|
371 |
+ iniset $conf neutron auth_type "password" |
|
372 |
+ iniset $conf neutron auth_url "$KEYSTONE_AUTH_URI" |
|
373 |
+ iniset $conf neutron username "$Q_ADMIN_USERNAME" |
|
374 |
+ iniset $conf neutron password "$SERVICE_PASSWORD" |
|
375 |
+ iniset $conf neutron user_domain_name "$SERVICE_DOMAIN_NAME" |
|
376 |
+ iniset $conf neutron project_name "$SERVICE_PROJECT_NAME" |
|
377 |
+ iniset $conf neutron project_domain_name "$SERVICE_DOMAIN_NAME" |
|
378 |
+ iniset $conf neutron auth_strategy "$Q_AUTH_STRATEGY" |
|
379 |
+ iniset $conf neutron region_name "$REGION_NAME" |
|
379 | 380 |
|
380 | 381 |
if [[ "$Q_USE_SECGROUP" == "True" ]]; then |
381 | 382 |
LIBVIRT_FIREWALL_DRIVER=nova.virt.firewall.NoopFirewallDriver |
382 |
- iniset $NOVA_CONF DEFAULT firewall_driver $LIBVIRT_FIREWALL_DRIVER |
|
383 |
+ iniset $conf DEFAULT firewall_driver $LIBVIRT_FIREWALL_DRIVER |
|
383 | 384 |
fi |
384 | 385 |
|
385 | 386 |
# optionally set options in nova_conf |
386 |
- neutron_plugin_create_nova_conf |
|
387 |
+ neutron_plugin_create_nova_conf $conf |
|
387 | 388 |
|
388 | 389 |
if is_service_enabled q-meta; then |
389 |
- iniset $NOVA_CONF neutron service_metadata_proxy "True" |
|
390 |
+ iniset $conf neutron service_metadata_proxy "True" |
|
390 | 391 |
fi |
391 | 392 |
|
392 |
- iniset $NOVA_CONF DEFAULT vif_plugging_is_fatal "$VIF_PLUGGING_IS_FATAL" |
|
393 |
- iniset $NOVA_CONF DEFAULT vif_plugging_timeout "$VIF_PLUGGING_TIMEOUT" |
|
393 |
+ iniset $conf DEFAULT vif_plugging_is_fatal "$VIF_PLUGGING_IS_FATAL" |
|
394 |
+ iniset $conf DEFAULT vif_plugging_timeout "$VIF_PLUGGING_TIMEOUT" |
|
394 | 395 |
} |
395 | 396 |
|
396 | 397 |
# create_mutnauq_accounts() - Set up common required neutron accounts |
... | ... |
@@ -8,10 +8,11 @@ _XTRACE_NEUTRON_NU=$(set +o | grep xtrace) |
8 | 8 |
set +o xtrace |
9 | 9 |
|
10 | 10 |
function neutron_plugin_create_nova_conf { |
11 |
+ local conf="$1" |
|
11 | 12 |
NOVA_OVS_BRIDGE=${NOVA_OVS_BRIDGE:-"br-int"} |
12 |
- iniset $NOVA_CONF neutron ovs_bridge $NOVA_OVS_BRIDGE |
|
13 |
+ iniset $conf neutron ovs_bridge $NOVA_OVS_BRIDGE |
|
13 | 14 |
LIBVIRT_FIREWALL_DRIVER=nova.virt.firewall.NoopFirewallDriver |
14 |
- iniset $NOVA_CONF DEFAULT firewall_driver $LIBVIRT_FIREWALL_DRIVER |
|
15 |
+ iniset $conf DEFAULT firewall_driver $LIBVIRT_FIREWALL_DRIVER |
|
15 | 16 |
} |
16 | 17 |
|
17 | 18 |
function neutron_plugin_install_agent_packages { |