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): Add platform match criteria for network_ports #4786

Open
1 task done
kpbush30 opened this issue Dec 4, 2024 · 0 comments · May be fixed by #4798
Open
1 task done

Feat(eos_designs): Add platform match criteria for network_ports #4786

kpbush30 opened this issue Dec 4, 2024 · 0 comments · May be fixed by #4798
Assignees
Labels
type: enhancement New feature or request

Comments

@kpbush30
Copy link

kpbush30 commented Dec 4, 2024

Enhancement summary

When applying network port profiles using the network_ports data structure, add the ability to target device hostnames with regex AND platform. This is helpful, especially in larger deployments, where hostname convention may not indicate platform differences that make it difficult to apply port profiles/configuration across large groups of devices.

Which component of AVD is impacted

eos_designs

Use case example

This is highly dependent on a customer's environment, hostname convention, and platform selection. In a use case where access switches are a combination of 24 and 48 port switches (or 750 chassis) and hostname convention does not take into account platform specifics, you must use complex regex to try and peel off specific switches. The use case is applying blanket access port profiles across all switches (especially in a large campus). The same benefit is recognized in datacenter as well.

The model below would overlap and requires breakout of match criteria or increasingly complex regex to target switches of specific platforms based on hostname alone.

network_ports:

    # Regex matching the full hostname of one or more switches.
    # This expression catches all hostnames regardless of platform
  - switches:
      - "floor[1-3].*sw[0-9]+.*"
      
    switch_ports:
      - {{ 'Ethernet1-48' | range_expand }}
      
  - switches:
      - "floor[1-3].*sw[0-9]+.*"
      
     switch_ports:
      - {{ 'Ethernet1-24' | range_expand }}

Describe the solution you would like

The ability to match on the filtered list AND the device platform assigned would make this more efficient in applying port configurations. Example below can easily target the same hostname regex with the ability to target 24 vs 48 port systems.

network_ports:

    # Regex matching the full hostname of one or more switches.
    # This expression catches all hostnames regardless of platform
  - switches:
      - "floor[1-3].*sw[0-9]+.*"
     platforms:
       - 720XPM-48Y6
     switch_ports:
      - {{ 'Ethernet1-48' | range_expand }}
      
  - switches:
      - "floor[1-3].*sw[0-9]+.*"
     platforms:
       - 720XPM-24Y6
     switch_ports:
      - {{ 'Ethernet1-24' | range_expand }}

Describe alternatives you have considered

Other than a long list of port profiles to match each switch.

Additional context

No response

Contributing Guide

  • I agree to follow this project's Code of Conduct
@kpbush30 kpbush30 added the type: enhancement New feature or request label Dec 4, 2024
@kpbush30 kpbush30 changed the title Feat:(eos_designs): Add platform match criteria for network_ports Feat(eos_designs): Add platform match criteria for network_ports Dec 9, 2024
@kpbush30 kpbush30 linked a pull request Dec 9, 2024 that will close this issue
4 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant