Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix(eos_designs): Remove EVPN related config if VRF 'default' is not EVPN enabled #2888

Conversation

ClausHolbechArista
Copy link
Contributor

Change Summary

Remove EVPN related config if VRF 'default' is not EVPN enabled

Related Issue(s)

For EVPN networks carrying VRF 'default' the best practice is to use the overlay (EVPN l3vni) for services, but keep loopbacks in the underlay. To avoid the services from being routed in the underlay, AVD implements route-maps and prefix-lists when VRF 'default' is defined on an EVPN VTEP.
It is possible to disable EVPN under the VRF configuration by setting address_families:[] in which case the VRF should not be added to EVPN configuration, and the route-maps and prefix-lists should not be created at all.
Before this fix, the route-maps and prefix-lists were still configured even if the VRF was not configured for EVPN. The VRF was also configured with a VNI under the VXLAN interface.

Component(s) name

arista.avd.eos_designs

Proposed changes

  • Detect if VRF 'default' has evpn address-family enabled (true by default)
  • Only configure the underlay filtering route-map/prefix-lists if EVPN is enabled for VRF 'default'
  • Only configure VNI for VRFs where EVPN is enabled and the overlay is EVPN-VXLAN (changed from pure EVPN check - which would also be true with EVPN-MPLS)

How to test

Added a molecule test case for this corner case.
No other changes to molecule outputs.

Checklist

User Checklist

  • N/A

Repository Checklist

  • My code has been rebased from devel before I start
  • I have read the CONTRIBUTING document.
  • My change requires a change to the documentation and documentation have been updated accordingly.
  • I have updated molecule CI testing accordingly. (check the box if not applicable)

@ClausHolbechArista ClausHolbechArista requested a review from a team as a code owner May 24, 2023 12:12
@github-actions github-actions bot added role: eos_designs issue related to eos_designs role state: CI Updated CI scenario have been updated in the PR labels May 24, 2023
@ClausHolbechArista ClausHolbechArista added this to To Do in DK-PROJECT-02 via automation May 24, 2023
@ClausHolbechArista ClausHolbechArista added this to the v4.0.0-rc2 milestone May 24, 2023
@ClausHolbechArista ClausHolbechArista added the cherry-pick-for-3.8.x PR to be cherry-picked to releases/v3.8.x brach later label May 24, 2023
@ClausHolbechArista ClausHolbechArista force-pushed the fix/eos_designs/default-vrf-without-evpn branch from 32dff48 to 6220c73 Compare May 24, 2023 14:43
…/inventory/host_vars/evpn-vtep-with-default-vrf-not-evpn.yml

Co-authored-by: Carl Buchmann <carl.buchmann@arista.com>
Copy link
Member

@carlbuchmann carlbuchmann left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@carlbuchmann carlbuchmann merged commit ba1af3c into aristanetworks:devel May 29, 2023
32 checks passed
DK-PROJECT-02 automation moved this from To Do to Done May 29, 2023
Shivani-chourasiya pushed a commit to Shivani-chourasiya/ansible-avd that referenced this pull request Jul 14, 2023
carlbuchmann pushed a commit that referenced this pull request Jul 14, 2023
…EVPN enabled (#2888) (#3041)

Co-authored-by: Claus Holbech <holbech@arista.com>
@carlbuchmann carlbuchmann removed the cherry-pick-for-3.8.x PR to be cherry-picked to releases/v3.8.x brach later label Aug 11, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
rn: Fix(eos_designs) role: eos_designs issue related to eos_designs role state: CI Updated CI scenario have been updated in the PR
Projects
DK-PROJECT-02
  
Done
Development

Successfully merging this pull request may close these issues.

None yet

2 participants