Bug 2210151 - FrrBgpAsn should be a per-role parameter
Summary: FrrBgpAsn should be a per-role parameter
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-tripleo-heat-templates
Version: 17.1 (Wallaby)
Hardware: x86_64
OS: Linux
medium
medium
Target Milestone: z1
: 17.1
Assignee: Luca Miccini
QA Contact: Eduardo Olivares
URL:
Whiteboard:
Depends On: 2235325
Blocks:
TreeView+ depends on / blocked
 
Reported: 2023-05-26 00:00 UTC by phalmos
Modified: 2023-09-28 20:42 UTC (History)
14 users (show)

Fixed In Version: openstack-tripleo-heat-templates-14.3.1-1.20230519151022.el9ost
Doc Type: Enhancement
Doc Text:
In RHOSP 17.1.1, the RHOSP Orchestration service (heat) parameter, `FrrBgpAsn`, can now be set on a per-role basis instead of being a global parameter for RHOSP 17.1 environments that use RHOSP dynamic routing.
Clone Of:
Environment:
Last Closed: 2023-09-20 00:29:44 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
OpenStack gerrit 888522 0 None NEW Make FrrBgpAsn a per-role parameter 2023-07-19 06:03:18 UTC
Red Hat Issue Tracker OSP-25400 0 None None None 2023-05-26 00:01:05 UTC
Red Hat Issue Tracker RHOSPDOC-1435 0 None None None 2023-09-28 20:42:41 UTC
Red Hat Product Errata RHBA-2023:5138 0 None None None 2023-09-20 00:30:15 UTC

Description phalmos 2023-05-26 00:00:45 UTC
Description of problem:
Creating an override in the networking templates to set FrrBgpAsn and  FrrOvnBgpAgentAsn to a user specified value is not being put into the container config.

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


How reproducible:
100%

Steps to Reproduce:

1.Create a template override as described in the docs to override the ASN 

network-environment.yaml

...

  Controller3Parameters:
    NeutronBridgeMappings: ["provider1:br-ex", "provider2:br-vlan"]
    ControlPlaneSubnet: r3
    OVNCMSOptions: "enable-chassis-as-gw"
    FrrOvnBgpAgentDriver: 'ovn_bgp_driver'
    FrrOvnBgpAgentExposeTenantNetworks: false
    FrrOvnBgpAgentAsn: 65535
    FrrBgpAsn: 65535

...

2. Run deployment script with environment files

-e /home/stack/templates/containers-prepare-parameter.yaml \
-e /home/stack/templates/overcloud-vip-deployed.yaml \
-e /home/stack/templates/overcloud-networks-deployed.yaml \
-e /home/stack/templates/deployed_metal.yaml \
-r /home/stack/templates/roles_data_spine_leaf.yaml \
-n /home/stack/templates/network_data.yaml \
-e /home/stack/templates/network-environment.yaml \
-e /home/stack/templates/nodes_data.yaml \
-e /usr/share/openstack-tripleo-heat-templates/environments/services/frr.yaml \
-e /usr/share/openstack-tripleo-heat-templates/environments/services/neutron-ovn-dvr-ha.yaml \
-e /home/stack/templates/inject-trust-anchor-hiera.yaml \

3. 

Actual results:

values defined in the frr container config /var/lib/config-data/ansible-generated/frr/etc/frr/frr.conf are the default values.

"! Ansible managed

frr version 7.0
frr defaults traditional
hostname ctrl-1-0
log file /var/log/frr/frr.log informational
log timestamp precision 3
service integrated-vtysh-config
line vty


router bgp 65000
  bgp router-id 10.10.0.57
  bgp log-neighbor-changes
  bgp graceful-shutdown
  no bgp default ipv4-unicast
  no bgp ebgp-requires-policy"
...




Expected results:
/var/lib/config-data/ansible-generated/frr/etc/frr/frr.conf to contain values defined in documented variables:
FrrOvnBgpAgentAsn
FrrBgpAsn




Additional info:

Just trying this deployment for the first time.  I expected the ASN values I had set in the network-environment.yaml to populate into the frr container config.  Instead I got the default values.

Comment 1 Luca Miccini 2023-05-26 06:08:09 UTC
Hey Paul, I think you need to place the templates where you override those values *after* /usr/share/openstack-tripleo-heat-templates/environments/services/frr.yaml .
My suggestion would be to put all the /usr/share stuff at the beginning and have the customized templates after. Any chance you can give it a try?

Comment 2 phalmos 2023-05-26 15:38:15 UTC
I changed the position of the template in the deploy script with no change to the outcome.  Luca mentioned the variables are global and not scoped to a role.  After moving them to a global scope the values updated correctly in the container configs.  I can foresee a need to have these values scoped to a role for DCN deployments and other architectures requiring more than 1 ASN.  I guess we can change this from a bug to an RFE.  Please let me know if you need any other information.

Comment 3 Dan Sneddon 2023-07-13 21:56:50 UTC
(In reply to phalmos from comment #2)
> I changed the position of the template in the deploy script with no change
> to the outcome.  Luca mentioned the variables are global and not scoped to a
> role.  After moving them to a global scope the values updated correctly in
> the container configs.  I can foresee a need to have these values scoped to
> a role for DCN deployments and other architectures requiring more than 1
> ASN.  I guess we can change this from a bug to an RFE.  Please let me know
> if you need any other information.

I think it makes sense to enable this to be a role parameter. Thank you very much for your testing and feedback.

Comment 26 errata-xmlrpc 2023-09-20 00:29:44 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.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/RHBA-2023:5138


Note You need to log in before you can comment on or make changes to this bug.