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

Bug 2210151

Summary: FrrBgpAsn should be a per-role parameter
Product: Red Hat OpenStack Reporter: phalmos
Component: openstack-tripleo-heat-templatesAssignee: Luca Miccini <lmiccini>
Status: CLOSED ERRATA QA Contact: Eduardo Olivares <eolivare>
Severity: medium Docs Contact:
Priority: medium    
Version: 17.1 (Wallaby)CC: dalvarez, dsneddon, eolivare, gregraka, gurpsing, joflynn, knoha, lmartins, lmiccini, ltomasbo, mariel, mburns, migawa, pgrist
Target Milestone: z1Keywords: FutureFeature, RFE, Triaged
Target Release: 17.1   
Hardware: x86_64   
OS: Linux   
Whiteboard:
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.
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-09-20 00:29:44 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:
Bug Depends On: 2235325    
Bug Blocks:    

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