Release Notes for Ansible AVD 2.x.x¶
Documentation for AVD version 2.x.x
available here
Warning
Starting arista.avd version 2.0, eos_l3ls_evpn
has been renamed to eos_designs
and a fallback mechanism has been deployed to support both name. Please update your playbooks accordingly as eos_l3ls_evpn
will be removed in a future release.
Release 2.2.1¶
Fixed issues¶
-
eos_designs:
- Incorrect topology/ip calculation when
max_l3leaf_to_spine_links
> 1 - Update documentation for l3_interface sub-interfaces
- Incorrect topology/ip calculation when
Release 2.2.0¶
Data model modifications¶
This section provides an overview of only the data model that have changed from the previous release that would require user modifications. See the release notes and role documentation for all new additions.
- Key name for CVP Structured Config Folder
# Old Data model
structured_cvp_name: 'cvp'
structured_cvp: '{{ structured_dir }}/{{ structured_cvp_name }}'
# New Data model
structured_cvp_dir_name: 'cvp'
structured_cvp_dir: '{{ structured_dir }}/{{ structured_cvp_dir_name }}'
New features¶
-
eos_designs (eos_l3ls_evpn):
- Add support for setting BGP Weight on BGP neighbors defined under tenant VRFs
- Add support for adding raw EOS CLI directly from
eos_designs
data model - Add support for subinterfaces as tenant l3_interfaces
- Add data model Warnings or Errors
- Add support for not setting mgmt_ip on devices
- Add support for configurable
short_esi
prefix - Ansible 3.x support
-
eos_cli_config_gen:
- Add support for igmp ssm aware
- Add support for interface_profiles
- Add option to not generate device documentation
- Add option to not generate default configuration
- Add support for switchport phone config
- Add support for setting router pim sparse-mode ssm range
- Add support for additional PTP parameters
- Add support for setting bgp weight on vrf neighbors
- Add option to define custom daemon
- Add option to set default originate for peer groups
- Add support for service routing configuration
- Add support for adding EOS CLI directly from
eos_cli_config_gen
data model - Add support for NTP authentication
-
plugins:
- Add option to generate Warnings or Errors from
arista.avd.defined
test plugin
- Add option to generate Warnings or Errors from
-
documentation:
- Add contribution guide
Fixed issues¶
-
eos_designs:
- Add missing
delegate_to: localhost
to some eos_designs tasks - Use directory vars in all tasks instead of static paths
- Remove Unused
profile
key fromconnected_endpoints
output - Fix config issue for endpoint adapters with unsorted
switches
variable - Fix missing Vlan filtering on
l2leaf
whenl3leaf
‘s filter definitions are set asl3leaf.defaults.filter
- Fix
peer_interface
set to wrong value onspine
when using rfc5549 - Fix various issues with rfc5549 depending on how values are set
- Fix wrong descriptions and
peer_interface
on spines whenl3leaf
‘suplink_to_spine_interfaces
is defined onnode
-level - Fix wrong descriptions on port-channel between
l3leaf
andl2leaf
- Add missing
- eos_cli_config_gen:
- Use directory vars in all tasks instead of static paths
- Fix missing
default
VRF from generated TerminAttr configuration - Fix missing
access vlan
when switchport mode is dot1q tunnel - Add missing documentation of icmp redirect
- Remove extra spaces from rendering of ntp with default VRF
- Add missing documentation of
gateway
andipv6_gateway
onmanagement_ interfaces
Release 2.1.1¶
New Features¶
-
eos_designs (eos_l3ls_evpn):
- BGP: add support for address-family IPv6 prefix-lists
- Allow override of IP assignment template logic
Fixed issues¶
-
eos_validate_state:
- Fix issue with lldp topology tests reporting false error
Release 2.1.0¶
New Requirements¶
New features¶
-
eos_designs (eos_l3ls_evpn):
- EVPN host-flap settings
- Support for 3 stage + L2 Leafs topology with RFC5549 eBGP underlay and eBGP Overlay
- Support for 2-level inheritance on port-profiles
- Options to change MLAG vlan ids
- Support multiple keys support for connected endpoints (Previously know as servers)
- LACP fallback to connected endpoints
- Support for A/A model to connect L2LEAF
- Interface to VRF assignment in L3 Edge
- SNMP settings
- capability to define max spines to allow for growth without re ip addressing
- “always_include_vrfs_in_tenants” in l3leaf filter
- L2 ports with L2 MTU (7050 platforms only)
- BGP peer group names option
- Support for additional-route-targets to Tenant VRFs
- STP bpduguard to port channels and interfaces
- Initial support for traffic-policy feature
-
eos_cli_config_gen:
- EVPN host-flap settings
- Policy Based Routing support
- L2 protocol encapsulation
- LACP timer fast option
- Support for MPLS and LDP
- LACP fallback
- RFC5549 support
- TACACS timeout and SAND MCast replication
- SNMP communities
l3dot1q
support for interfaces- Interface bfd settings
- L2 ports with L2 MTU (7050 platforms only)
- AAA support authentication for enable mode
- BGP support for IPv6 unicast AF network statement
- Various enhancement to OSPF
class-maps
andpolicy-maps
for QOS- Support for L3 sub interface for ethernet and port-channel
- Support for traffic-policy feature
- Make
ingestkey
optional in TerminAttr
-
plugins:
- New arista.avd.contains test plugin
- New yaml_templates_to_facts action plugin
Fixed issues¶
-
eos_cli_config_gen:
- Update documentation template to set
ingestkey
optional
- Update documentation template to set
-
eos_validate_states:
- Provide protection when the interface’s description is not defined
Release 2.0.0¶
New Requirements¶
netaddr==0.7.19
Jinja2==2.11.3
treelib==1.5.5
cvprac==1.0.5
paramiko==2.7.1
jsonschema==3.2.0
requests==2.25.1
PyYAML==5.4.1
md-toc==7.1.0
Role Name Change¶
eos_l3ls_evpn
has been replaced / renamed toeos_designs
.- This builds the foundation for arista.avd collection to support multiple designs i.e L2LS in future releases!
New Features¶
-
eos_designs (eos_l3ls_evpn):
- Support for 5-stage CLOS using new “super-spines”
- Support for dedicated Route Reflectors / Route Servers using new “overlay_controllers”
- Custom Structured Configuration w. multiple custom_structured_configuration prefixes
- Basic PTP support
- L2leaf inband management
- BGP RT Membership support
- Support for underlay DCI including MACSEC and PTP using “l3edge”
- Additional Tenant VRF settings to support BGP and static routes
- Allow custom VLAN for iBGP MLAG pair
- Make MLAG Dual Primary Detection disabled by default and enable by configuration
- Port-profile inheritance for all settings
- Set origin incomplete on routes from MLAG iBGP peer by default
- Enable support for flexible speed configurations
- Hardware LAG platform setting
- Filter feature in default section for l2leaf and l3leaf devices
-
eos_cli_config_gen:
- Errdisable
- interface_defaults
- QOS support
- Enable password
- Aggregate routes in BGP VRF
- BGP RT Membership
- Basic PTP capabilities
- Options to configure SSH ciphers and algorithms
- Enhance BGP VRF Neighbor settings
- Support for logging event under interfaces
- Explicit no shutdown and switchport config
- Additional STP knobs and MST configuration settings
- Route-map support to peer groups for EVPN
- Support disableaaa option for TerminAttr
- Global ARP timer option
-
plugins:
- New default filter plugin
- New esi management filter plugin
- New defined test plugin
Data model modifications¶
This section provides an overview of only the data model that have changed from the previous release that would require user modifications. See the release notes and role documentation for all new additions.
eos_cli_config_gen:
- SNMP local interfaces changed to dictionary and SNMP ACLs changed to lists.
# Old data model
snmp_server:
ipv4_access_list: < ipv4-access-list >
ipv6_access_list: < ipv6-access-list >
local_interfaces:
- name: < interface_name_1 >
vrf: < vrf_name >
# New data model
snmp_server:
ipv4_acls:
- name: < ipv4-access-list >
vrf: < vrf >
- name: < ipv4-access-list >
ipv6_acls:
- name: < ipv6-access-list >
vrf: < vrf >
- name: < ipv6-access-list >
local_interfaces:
< interface_name_1 >:
vrf: < vrf_name >
< interface_name_2 >:
< interface_name_3 >:
vrf: < vrf_name >
- Router BFD previously bfd_multihop to reflect the eos cli.
# Old data model
bfd_multihop:
interval: < rate in milliseconds >
min_rx: < rate in milliseconds >
multiplier: < 3-50 >
# New data model
router_bfd:
multihop:
interval: < rate in milliseconds >
min_rx: < rate in milliseconds >
multiplier: < 3-50 >
- Modified router bgp send-community so all now use the same style of configuration and no empty string.
# Old data model
router_bgp:
peer_groups:
< peer_group_name_1>:
type: < ipv4 | evpn >
send_community: < true | false >
vrfs:
< vrf_name_1 >:
neighbors:
< neighbor_ip_address >:
send_community: < string | leave empty for all communities >
# New Data model
router_bgp:
peer_groups:
< peer_group_name_1>:
send_community: < standard | extended | large | all >
vrfs:
< vrf_name_1 >:
neighbors:
< neighbor_ip_address >:
send_community: < standard | extended | large | all >
- Modified address family definition for BGP neighbors in VRFs to match the same model as neighbors in default VRF.
# Old data model
router_bgp:
vrfs:
< vrf_name_1 >:
neighbors:
< neighbor_ip_address >:
address_family:
- < address_family_1 >
- < address_family_2 >
# New Data model
router_bgp:
vrfs:
< vrf_name_1 >:
address_families:
< address_family >:
neighbors:
< neighbor_ip_address >:
activate: < true | false >
- Modified router_isis data model to avoid static configuration
# Old data model
router_isis:
instance: <ISIS Instance Name>
net: < CLNS Address to run ISIS | format 49.0001.0001.0000.0001.00 >
router_id: < IPv4_address >
no_passive_interfaces: < List no-passive-interface >
is_type: < level-1 | level-1-2 | level-2 >
address_family: < List of Address Families >
isis_af_defaults:
- maximum-paths < Integer 1-64 >
segment_routing_mpls:
router_id: < router_id >
# New Data model
router_isis:
instance: <ISIS Instance Name>
net: < CLNS Address to run ISIS | format 49.0001.0001.0000.0001.00 >
router_id: < IPv4_address >
log_adjacency_changes: < true | false >
no_passive_interfaces: < List no-passive-interface >
is_type: < level-1 | level-1-2 | level-2 >
address_family: < List of Address Families >
isis_af_defaults:
- maximum-paths < Integer 1-64 >
segment_routing_mpls:
enabled: < true | false >
router_id: < router_id >
- Modified tcam_profile data model to allow profile configuration and reflect the eos cli
# Old data model
tcam_profile:
- < tcam_profile >
# New Data model
tcam_profile:
system: < tcam profile name to activate >
profiles:
< tcam_profile 01 >: "{{lookup('file', '< path to TCAM profile using EOS syntax >')}}"
- Modified spanning_tree data model to allow for more configuration options
# Old data model
spanning_tree:
mode: < spanning_tree_mode >
priority: < priority_level >
# New Data model
spanning_tree:
mode: < mstp | rstp | rapid-pvst | none >
rstp_priority: < priority >
- Rename summary_address to summary_addresses under router_ospf.process_ids.
data model
# Old data model
router_ospf:
process_ids:
< process_id >:
summary_address:
- prefix: < summary_prefix_01 >
tag: < string >
- prefix: < summary_prefix_02 >
attribute_map: < string >
- prefix: < summary_prefix_03 >
not_advertise: < true >
- prefix: < summary_prefix_04 >
- prefix: < summary_prefix_05 >
# New Data model
router_ospf:
process_ids:
< process_id >:
summary_addresses:
- prefix: < summary_prefix_01 >
tag: < string >
- prefix: < summary_prefix_02 >
attribute_map: < string >
- prefix: < summary_prefix_03 >
not_advertise: < true >
- prefix: < summary_prefix_04 >
- prefix: < summary_prefix_05 >
- Change default behavior of MLAG dual-primary detection so it is now disabled by default and configurable.
#New Datamodel
l3leaf:
node_groups:
< node_group_1 >:
mlag_dual_primary_detection: < true | false -> default false >
Other Notable changes¶
Output Folders Changes¶
Output for eos_designs
fabric documentation is now saved under documentation/fabric
instead of documentation/{{ fabric_name }}
.
eos_designs MLAG iBGP Changes¶
New default setting origin to incomplete on routes received from MLAG iBGP peer on l3leafs. The aim is to avoid suboptimal forwarding over the peerlink for some traffic. (see mlag_ibgp_origin_incomplete
)
New Roles¶
- eos_snapshot: Collect commands on Arista EOS devices and generate a report. It supports reports with the following format: text, markdown, json and yaml
- dhcp_provisioner: Build and deploy a DHCP configuration file to support Zero Touch Provisioning with Arista EOS devices.
Info
For detailed information please see the release tags: 2.0.0