Bug 2031110

Summary: Long t-h-t role name causes OVNMacAddressPort tag to exceed the neutron tag length limit
Product: Red Hat OpenStack Reporter: Ollie Walsh <owalsh>
Component: openstack-tripleo-heat-templatesAssignee: Harald Jensås <hjensas>
Status: CLOSED ERRATA QA Contact: Jason Paroly <jparoly>
Severity: high Docs Contact:
Priority: high    
Version: 16.2 (Train)CC: dcha, hjensas, jparoly, mburns, mkrcmari, pbabbar, sputhenp
Target Milestone: z2Keywords: Regression, Triaged
Target Release: 16.2 (Train on RHEL 8.4)   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: openstack-tripleo-heat-templates-11.6.1-2.20220116004909.64b2e88.el8ost Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-03-23 22:29:33 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:    
Bug Blocks: 2058170    

Description Ollie Walsh 2021-12-10 14:30:58 UTC
Description of problem:
In 16.2.0/16.2.1 the role name is used to generate the PortName for OVNMacAddressPort.
This is used on the tripleo_ovn_mac_port_name port tag.
The tag length limit is 60 characters in 16.2.x which can easily be exceeded if the role name is relatively long such as the `DistributedComputeHCIScaleOut` role.

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

How reproducible: 100%

Steps to Reproduce: Deploy overcloud using a role name that is over 24 characters.

Actual results:

dcn0.DistributedComputeHCIScaleOut.0.DistributedComputeHCIScaleOutOVNChassisMacPorts.0.OVNMacAddressPort:

  resource_type: OS::Neutron::Port

  physical_resource_id: d44d794c-a9df-4f8a-b06a-5f814508b46e

  status: CREATE_FAILED

  status_reason: |

    BadRequest: resources.OVNMacAddressPort: Invalid input for operation: 'tripleo_ovn_mac_port_name=DistributedComputeHCIScaleOut-ovn-mac-0' exceeds maximum length of 60.

    Neutron server returns request_ids: ['req-cef2a094-e938-4766-8d5c-27cf519ed28f']

Expected results: Deploy succeeds.

Comment 1 Ollie Walsh 2021-12-10 14:50:05 UTC
*** Bug 2031111 has been marked as a duplicate of this bug. ***

Comment 2 Donghwi Cha 2021-12-15 02:41:12 UTC
Hi Ollie. Thanks for opening Bugzilla on behalf of me. 

I am adding more info here
- DistributedComputeHCIScaleOut is the default role name in case of DCN with Hyperconvered option
- Issue happens on the level of undercloud heat operation during resource creation on the event of DCN overcloud creation 
- Deployment will fail always when using the default role name of the DCN HCI scaleout nodes 
- DCN HCI scaleout node role is the only option for adding node after DCN HCI Full node of scaling out OSD


Hi Harald. 

I appreciate your work, and while your patch is developed and applied to upstream, 
would there be any possible workaround? 

I can think of only one option, shorting role name (ie DistributedComputeHCIScaleOut -> DcnHciScaleOut),
but it would be great if you can help to see whether there is any impact or possible propagation of issue further after changing role name in this particular set of architecture.

Comment 3 Ollie Walsh 2021-12-15 11:07:26 UTC
(In reply to Donghwi Cha from comment #2)
> Hi Ollie. Thanks for opening Bugzilla on behalf of me. 
> 
> I am adding more info here
> - DistributedComputeHCIScaleOut is the default role name in case of DCN with
> Hyperconvered option
> - Issue happens on the level of undercloud heat operation during resource
> creation on the event of DCN overcloud creation 
> - Deployment will fail always when using the default role name of the DCN
> HCI scaleout nodes 
> - DCN HCI scaleout node role is the only option for adding node after DCN
> HCI Full node of scaling out OSD
> 
> 
> Hi Harald. 
> 
> I appreciate your work, and while your patch is developed and applied to
> upstream, 
> would there be any possible workaround? 
> 
> I can think of only one option, shorting role name (ie
> DistributedComputeHCIScaleOut -> DcnHciScaleOut),
> but it would be great if you can help to see whether there is any impact or
> possible propagation of issue further after changing role name in this
> particular set of architecture.

Hi,

Using a custom role with a shorter name to workaround should not cause any issues.

However for any existing DistributedComputeHCIScaleOut nodes it will not be possible to change the role (except scale-down and scale-up). In this case I think the only option is to manually modify t-h-t to remove the lines from network/ports/ovn_mac_addr_port.yaml.

Thanks,
Ollie

Comment 16 errata-xmlrpc 2022-03-23 22:29:33 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 (Moderate: Red Hat OpenStack Platform 16.2 (openstack-tripleo-heat-templates) security update), 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/RHSA-2022:0995