Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 2176046

Summary: Octavia DCN playbook fails to add subnets to the routers
Product: Red Hat OpenStack Reporter: Gregory Thiemonge <gthiemon>
Component: tripleo-ansibleAssignee: Gregory Thiemonge <gthiemon>
Status: CLOSED ERRATA QA Contact: Omer Schwartz <oschwart>
Severity: low Docs Contact:
Priority: low    
Version: 17.1 (Wallaby)Keywords: Triaged
Target Milestone: beta   
Target Release: 17.1   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: tripleo-ansible-3.3.1-1.20230322222820.b65b485.el9ost Doc Type: No Doc Update
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-08-16 01:14:17 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Gregory Thiemonge 2023-03-07 09:14:15 UTC
Description of problem:
When running the Octavia playbook to configure it for a multi-DCN environment the playbook doesn't add a subnet to a router

Version-Release number of selected component (if applicable):
17.1

How reproducible:
100%
- deploy Edge/DCN environment
- run the Octavia playbook

Steps to Reproduce:
1. deploy Edge/DCN environment
2. run the Octavia DCN playbook
3. check the interfaces_info of the lb-mgmt-router, it doesn't contain lb-mgmt-subnet

Actual results:
network is not correctly configured

Expected results:


Additional info:

to run the playbook we need:

create an octavia-dcn-parameters.yaml file with:

octavia_controller_availability_zone: az-central
octavia_availability_zones:
  az-central: # no cidr needed, it uses the already existing subnet
  az-dcn1:
    lb_mgmt_subnet_cidr: 172.47.0.0/16
  az-dcn2:
    lb_mgmt_subnet_cidr: 172.48.0.0/16
octavia_backbone_tenant_cidr: 172.49.0.0/16

$ ansible-playbook -i overcloud-deploy/central/config-download/central/tripleo-ansible-inventory.yaml /usr/share/ansible/tripleo-playbooks/octavia-dcn-deployment.yaml -e @octavia-dcn-parameters.yaml -e stack=central -v
[..]
TASK [octavia_overcloud_dcn_config : Add subnets to lb-mgmt routers] ***********                                                                                                               
changed: [undercloud] => (item=az-central) => {"ansible_loop_var": "item", "changed": true, "cmd": "subnet_id=$(openstack subnet show -f value -c id lb-mgmt-subnet)\nif ! openstack router show lb-mgmt-router -f json -c interfaces_info |  jq -r \".interfaces_info[].subnet_id\" | grep -q $subnet_id; then\n  openstack router add subnet    lb-mgmt-router    lb-mgmt-subnet\n  echo \"subnet added\"\nfi\n", "delta": "0:00:09.158506", "end": "2023-03-07 09:05:47.106511", "item": "az-central", "msg": "", "rc": 0, "start": "2023-03-07 09:05:37.948005", "stderr": "BadRequestException: 400: Client Error for url: https://overcloud.redhat.local:13696/v2.0/routers/209e7fe1-6661-41e6-aecd-8ae1be545dfe/add_router_interface, Bad router request: Subnet for router interface must have a gateway IP.", "stderr_lines": ["BadRequestException: 400: Client Error for url: https://overcloud.redhat.local:13696/v2.0/routers/209e7fe1-6661-41e6-aecd-8ae1be545dfe/add_router_interface, Bad router request: Subnet for router interface must have a gateway IP."], "stdout": "subnet added", "stdout_lines": ["subnet added"]}
[..]

$ openstack router show lb-mgmt-router
+-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+
| Field                   | Value                                                                                                                                   |
+-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+
| admin_state_up          | UP                                                                                                                                      |
| availability_zone_hints | az-central                                                                                                                              |
| availability_zones      | az-central                                                                                                                              |
| created_at              | 2023-03-07T09:05:24Z                                                                                                                    |
| description             |                                                                                                                                         |
| external_gateway_info   | null                                                                                                                                    |
| flavor_id               | None                                                                                                                                    |
| id                      | 209e7fe1-6661-41e6-aecd-8ae1be545dfe                                                                                                    |
| interfaces_info         | [{"port_id": "d6dfa89b-ed80-4caa-afc4-d7b676466f6d", "ip_address": "172.49.1.92", "subnet_id": "2f395dcc-9165-4e6a-8e7b-db932a3e9fb4"}] |
| name                    | lb-mgmt-router                                                                                                                          |
| project_id              | f106f40d73694811b73cf25146ab11cc                                                                                                        |
| revision_number         | 3                                                                                                                                       |
| routes                  | destination='172.47.0.0/16', gateway='172.49.0.146'                                                                                     |
|                         | destination='172.48.0.0/16', gateway='172.49.1.71'                                                                                      |
| status                  | ACTIVE                                                                                                                                  |
| tags                    |                                                                                                                                         |
| updated_at              | 2023-03-07T09:11:08Z                                                                                                                    |
+-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+
$ openstack subnet list | grep 2f395dcc-9165-4e6a-8e7b-db932a3e9fb4
| 2f395dcc-9165-4e6a-8e7b-db932a3e9fb4 | lb-mgmt-backbone-subnet | 9c6871e0-894f-4b8f-9319-8aff958c0c2f | 172.49.0.0/16  |

it should have had a interface on lb-mgmt-subnet


as a workaround we can configure a gateway on the lb-mgmt-subnet before running the playbook.

$ openstack subnet set --gateway 172.24.0.1 lb-mgmt-subnet

Comment 15 errata-xmlrpc 2023-08-16 01:14:17 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (Release of components for Red Hat OpenStack Platform 17.1 (Wallaby)), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHEA-2023:4577