From af59e6d953326904eed034ef6cc19dd54b82b805 Mon Sep 17 00:00:00 2001 From: Pierre Riteau Date: Mon, 16 Oct 2023 17:31:05 +0200 Subject: [PATCH] Resolve slow fact gathering when seed SNAT is off Stop configuring the seed host as gateway when seed SNAT is disabled (which is the default since Xena), otherwise overcloud hosts may take a long time to gather facts until their network configuration is applied (probably because DNS servers are thought to be reachable until the gateway is changed or removed). Closes-Bug: #2039461 Change-Id: Ib847d3420dee374cec067cd8af519b510be04120 (cherry picked from commit 9980a8f891edac8f21d0cde9ee1e756a40c7be3b) --- ansible/kolla-bifrost-hostvars.yml | 8 ++++---- .../configdrive-gateway-62366f613e6eaac9.yaml | 14 ++++++++++++++ 2 files changed, 18 insertions(+), 4 deletions(-) create mode 100644 releasenotes/notes/configdrive-gateway-62366f613e6eaac9.yaml diff --git a/ansible/kolla-bifrost-hostvars.yml b/ansible/kolla-bifrost-hostvars.yml index e43bcd7e6..c74a4f88b 100644 --- a/ansible/kolla-bifrost-hostvars.yml +++ b/ansible/kolla-bifrost-hostvars.yml @@ -19,10 +19,10 @@ ipv4_interface_mac: "{% raw %}{{ extra.pxe_interface_mac | default }}{% endraw %}" ipv4_address: "{{ admin_oc_net_name | net_ip }}" ipv4_subnet_mask: "{{ admin_oc_net_name | net_mask }}" - # If the admin network does not have a gateway defined, use the - # seed as a gateway to allow external access until other networks have - # been configured. - ipv4_gateway: "{{ admin_oc_net_name | net_gateway or admin_oc_net_name | net_ip(seed_host) }}" + # If the admin network does not have a gateway defined and seed SNAT is + # enabled, use the seed as a gateway to allow external access until other + # networks have been configured. Otherwise, do not set any gateway. + ipv4_gateway: "{{ admin_oc_net_name | net_gateway or admin_oc_net_name | net_ip(seed_host) if seed_enable_snat | bool }}" ipv4_nameserver: "{{ resolv_nameservers }}" network_mtu: "{{ admin_oc_net_name | net_mtu or '1500' }}" vlan_id: "{{ '' if admin_oc_net_name == provision_oc_net_name else (admin_oc_net_name | net_vlan) }}" diff --git a/releasenotes/notes/configdrive-gateway-62366f613e6eaac9.yaml b/releasenotes/notes/configdrive-gateway-62366f613e6eaac9.yaml new file mode 100644 index 000000000..f43684f03 --- /dev/null +++ b/releasenotes/notes/configdrive-gateway-62366f613e6eaac9.yaml @@ -0,0 +1,14 @@ +--- +upgrade: + - | + If the admin network does not have a gateway defined and + ``seed_enable_snat`` is ``false``, which is the default, overcloud hosts + will not have a default gateway immediately after provisioning anymore. A + default gateway on another network can still be applied during the host + configuration step. +fixes: + - | + Fixes slow fact gathering in some environments by not configuring the seed + host as the initial default gateway for overcloud hosts when + ``seed_enable_snat`` is ``false``, which is the default. + `LP#2039461 `__