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

Feat(eos_designs): Optional dedicated MLAG peer group for VRFs #4881

Merged
merged 25 commits into from
Jan 29, 2025

Conversation

Vibhu-gslab
Copy link
Contributor

@Vibhu-gslab Vibhu-gslab commented Jan 15, 2025

Change Summary

Currently MLAG-IPv4-UNDERLAY-PEER is used for the iBGP session between MLAG pairs in the underlay and overlay. This approach can be misleading due to the use of UNDERLAY word in the BGP peer group name.

The following is an example of the configuration that AVD generates today

router bgp xxxx 
   neighbor MLAG-IPv4-UNDERLAY-PEER peer group
   neighbor MLAG-IPv4-UNDERLAY-PEER remote-as 65000.1
   neighbor MLAG-IPv4-UNDERLAY-PEER next-hop-self
   neighbor MLAG-IPv4-UNDERLAY-PEER description DC1-CL2
   neighbor MLAG-IPv4-UNDERLAY-PEER password 7 xxxx
   neighbor MLAG-IPv4-UNDERLAY-PEER send-community
   neighbor MLAG-IPv4-UNDERLAY-PEER maximum-routes 12000
   neighbor MLAG-IPv4-UNDERLAY-PEER route-map RM-MLAG-PEER-IN in

   address-family ipv4
      neighbor MLAG-IPv4-UNDERLAY-PEER activate

   vrf BLUE
      rd 192.168.100.1:1002
      route-target import evpn 1002:1002
      route-target export evpn 1002:1002
      router-id 192.168.100.1
      neighbor 172.16.1.1 peer group MLAG-IPv4-UNDERLAY-PEER
      redistribute connected

Related Issue(s)

Fixes #4826
Fixes #4916

Component(s) name

arista.avd.eos_designs

Proposed changes

Plan for this issue to be non-breaking:
1/ introduce a new knob to use_separate_mlag_peer_group_for_overlay: with a default of false.
2/ add a peer_group in bgp_peer_groups for MLAG overlay to be used when the toggle from 1/ is true

How to test

Molecule testing

Checklist

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)

Copy link

Review docs on Read the Docs

To test this pull request:

# Create virtual environment for this testing below the current directory
python -m venv test-avd-pr-4881
# Activate the virtual environment
source test-avd-pr-4881/bin/activate
# Install all requirements including PyAVD
pip install "pyavd[ansible] @ git+https://github.com/Vibhu-gslab/avd.git@mlag_peer_group_4826#subdirectory=python-avd" --force
# Point Ansible collections path to the Python virtual environment
export ANSIBLE_COLLECTIONS_PATH=$VIRTUAL_ENV/ansible_collections
# Install Ansible collection
ansible-galaxy collection install git+https://github.com/Vibhu-gslab/avd.git#/ansible_collections/arista/avd/,mlag_peer_group_4826 --force
# Optional: Install AVD examples
cd test-avd-pr-4881
ansible-playbook arista.avd.install_examples

@github-actions github-actions bot added state: CI Updated CI scenario have been updated in the PR state: Documentation role Updated role: eos_designs issue related to eos_designs role labels Jan 15, 2025
@github-actions github-actions bot added state: CI Updated CI scenario have been updated in the PR and removed state: CI Updated CI scenario have been updated in the PR labels Jan 16, 2025
@Vibhu-gslab Vibhu-gslab force-pushed the mlag_peer_group_4826 branch 2 times, most recently from 072841d to 4c2087d Compare January 17, 2025 10:37
@Vibhu-gslab Vibhu-gslab marked this pull request as ready for review January 17, 2025 11:24
@Vibhu-gslab Vibhu-gslab requested review from a team as code owners January 17, 2025 11:24
@Vibhu-gslab Vibhu-gslab requested a review from gmuloc January 17, 2025 11:24
@Vibhu-gslab Vibhu-gslab marked this pull request as draft January 21, 2025 09:04
@Vibhu-gslab Vibhu-gslab changed the title Refactor(eos_designs): Dedicated MLAG peer group for overlay tenants Refactor(eos_designs): Dedicated MLAG peer group for vrf Jan 21, 2025
@Vibhu-gslab Vibhu-gslab force-pushed the mlag_peer_group_4826 branch 2 times, most recently from bdfb890 to af8454c Compare January 21, 2025 13:15
@Vibhu-gslab Vibhu-gslab marked this pull request as ready for review January 21, 2025 13:33
@Vibhu-gslab Vibhu-gslab requested a review from gmuloc January 21, 2025 13:36
@Vibhu-gslab Vibhu-gslab marked this pull request as draft January 22, 2025 07:00
@Vibhu-gslab Vibhu-gslab marked this pull request as ready for review January 22, 2025 10:54
@Vibhu-gslab Vibhu-gslab requested a review from gmuloc January 22, 2025 10:54
@Vibhu-gslab Vibhu-gslab requested a review from gmuloc January 23, 2025 12:15
@gmuloc
Copy link
Contributor

gmuloc commented Jan 23, 2025

@ksantos01 can you test the PR and see if that works for you?

@ClausHolbechArista ClausHolbechArista added this to the v5.2.0 milestone Jan 27, 2025
@ClausHolbechArista
Copy link
Contributor

@ksantos01 do you have time to test this PR this week? Then we can get it into 5.2 releasing on Friday.

@ClausHolbechArista ClausHolbechArista changed the title Refactor(eos_designs): Dedicated MLAG peer group for vrf Feat(eos_designs): Optional dedicated MLAG peer group for VRFs Jan 29, 2025
Copy link

@ksantos01 ksantos01 left a comment

Choose a reason for hiding this comment

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

I have tested it and it works for my use case

@gmuloc gmuloc merged commit 829f6ef into aristanetworks:devel Jan 29, 2025
44 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
rn: Feat(eos_designs) role: eos_designs issue related to eos_designs role state: CI Updated CI scenario have been updated in the PR state: Documentation role Updated
Projects
None yet
5 participants