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

Doc: Update single dc l3ls example #4829

Open
wants to merge 26 commits into
base: devel
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
31c3673
change uplink switch list type
joelbreton2 Dec 17, 2024
14e7a10
remove quotes and fix annotation numbering
joelbreton2 Dec 18, 2024
0e50bfb
move content from dc1.yml to different switch type
joelbreton2 Dec 18, 2024
74ecfe6
fix anotations
joelbreton2 Dec 18, 2024
11cc525
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Dec 18, 2024
715e4d7
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Dec 18, 2024
09d7245
test code block
joelbreton2 Dec 19, 2024
42357c0
test code block
joelbreton2 Dec 19, 2024
55eb3c0
test code block
joelbreton2 Dec 19, 2024
f8a17bc
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Dec 19, 2024
1c847e5
Change title
joelbreton2 Dec 19, 2024
84ce01c
replace config snip with source file
joelbreton2 Dec 19, 2024
a74ff9a
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Dec 19, 2024
fed371d
remove leaf example from connected_endpoint example
joelbreton2 Dec 20, 2024
3a66edb
Add folder structure and removes comments for group vars
joelbreton2 Jan 8, 2025
5e7fb98
remove server1 example details
joelbreton2 Jan 8, 2025
e232f5a
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Jan 8, 2025
142bafc
move group_vars file in folders
joelbreton2 Jan 9, 2025
0d574f9
fix filepath for group_vars in README
joelbreton2 Jan 9, 2025
38df557
fix file path for group_vars
joelbreton2 Jan 9, 2025
7a12a97
fix file path in README for group_vars
joelbreton2 Jan 9, 2025
21cbed1
format spaces adn add comments to group_vars
joelbreton2 Jan 10, 2025
d9a5034
added comments
joelbreton2 Jan 10, 2025
5fac225
add comments to group_vars files
joelbreton2 Jan 10, 2025
d9d6a99
correcting minor quote issue
JulioPDX Feb 26, 2025
7a3000b
Merge branch 'devel' into update-single-DC-L3LS
gmuloc Feb 28, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
410 changes: 53 additions & 357 deletions ansible_collections/arista/avd/examples/single-dc-l3ls/README.md

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,11 @@ servers:
# Definition of adapters on the server.
adapters:
# Name of the server interfaces that will be used in the description of each interface
- endpoint_ports: [ PCI1, PCI2 ]
- endpoint_ports: [PCI1, PCI2]
# Device ports where the server ports are connected.
switch_ports: [ Ethernet5, Ethernet5 ]
switch_ports: [Ethernet5, Ethernet5]
# Device names where the server ports are connected.
switches: [ dc1-leaf1a, dc1-leaf1b ]
switches: [dc1-leaf1a, dc1-leaf1b]
# VLANs that will be configured on these ports.
vlans: 11-12,21-22
# Native VLAN to be used on these ports.
Expand All @@ -26,28 +26,28 @@ servers:
# Port channel mode for LACP.
mode: active

- endpoint_ports: [ iLO ]
switch_ports: [ Ethernet5 ]
switches: [ dc1-leaf1c ]
- endpoint_ports: [iLO]
switch_ports: [Ethernet5]
switches: [dc1-leaf1c]
vlans: 11
mode: access
spanning_tree_portfast: edge

- name: dc1-leaf2-server1
adapters:
- endpoint_ports: [ PCI1, PCI2 ]
switch_ports: [ Ethernet5, Ethernet5 ]
switches: [ dc1-leaf2a, dc1-leaf2b ]
- endpoint_ports: [PCI1, PCI2]
switch_ports: [Ethernet5, Ethernet5]
switches: [dc1-leaf2a, dc1-leaf2b]
vlans: 11-12,21-22
native_vlan: 4092
mode: trunk
spanning_tree_portfast: edge
port_channel:
mode: active

- endpoint_ports: [ iLO ]
switch_ports: [ Ethernet5 ]
switches: [ dc1-leaf2c ]
- endpoint_ports: [iLO]
switch_ports: [Ethernet5]
switches: [dc1-leaf2c]
vlans: 11
mode: access
spanning_tree_portfast: edge
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
---
# Default gateway used for the management interface
mgmt_gateway: 172.16.1.1

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
---
type: l2leaf

l2leaf:
defaults:
platform: vEOS-lab
spanning_tree_mode: mstp

node_groups:
- group: DC1_L2_LEAF1
uplink_switches: [dc1-leaf1a, dc1-leaf1b]
nodes:
- name: dc1-leaf1c
id: 1
mgmt_ip: 172.16.1.151/24
uplink_switch_interfaces: [Ethernet8, Ethernet8]
- group: DC1_L2_LEAF2
uplink_switches: [dc1-leaf2a, dc1-leaf2b]
nodes:
- name: dc1-leaf2c
id: 2
mgmt_ip: 172.16.1.152/24
uplink_switch_interfaces: [Ethernet8, Ethernet8]

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,31 +1,5 @@
---
# Default gateway used for the management interface
mgmt_gateway: 172.16.1.1

# Spine switch group
spine:
# Definition of default values that will be configured to all nodes defined in this group
defaults:
# Set the relevant platform as each platform has different default values in Ansible AVD
platform: vEOS-lab
# Pool of IPv4 addresses to configure interface Loopback0 used for BGP EVPN sessions
loopback_ipv4_pool: 10.255.0.0/27
# ASN to be used by BGP
bgp_as: 65100

# Definition of nodes contained in this group.
# Specific configuration of device must take place under the node definition. Each node inherits all values defined under 'defaults'
nodes:
# Name of the node to be defined (must be consistent with definition in inventory)
- name: dc1-spine1
# Device ID definition. An integer number used for internal calculations (ie. IPv4 address of the loopback_ipv4_pool among others)
id: 1
# Management IP to be assigned to the management interface
mgmt_ip: 172.16.1.11/24

- name: dc1-spine2
id: 2
mgmt_ip: 172.16.1.12/24
type: l3leaf

# L3 Leaf switch group
l3leaf:
Expand Down Expand Up @@ -53,7 +27,7 @@ l3leaf:
spanning_tree_priority: 4096
spanning_tree_mode: mstp

# If two nodes (and only two) are in the same node_group, they will automatically form an MLAG pair
# If two nodes (and only two) are in the same node_group, they will automatically form an MLAG pair
node_groups:
# Definition of a node group that will include two devices in MLAG.
# Definitions under the group will be inherited by both nodes in the group
Expand All @@ -67,55 +41,19 @@ l3leaf:
mgmt_ip: 172.16.1.101/24
# Definition of the port to be used in the uplink device facing this device.
# Note that the number of elements in this list must match the length of 'uplink_switches' as well as 'uplink_interfaces'
uplink_switch_interfaces:
- Ethernet1
- Ethernet1
uplink_switch_interfaces: [Ethernet1, Ethernet1]
- name: dc1-leaf1b
id: 2
mgmt_ip: 172.16.1.102/24
uplink_switch_interfaces:
- Ethernet2
- Ethernet2

uplink_switch_interfaces: [Ethernet2, Ethernet2]
- group: DC1_L3_LEAF2
bgp_as: 65102
nodes:
- name: dc1-leaf2a
id: 3
mgmt_ip: 172.16.1.103/24
uplink_switch_interfaces:
- Ethernet3
- Ethernet3
uplink_switch_interfaces: [Ethernet3, Ethernet3]
- name: dc1-leaf2b
id: 4
mgmt_ip: 172.16.1.104/24
uplink_switch_interfaces:
- Ethernet4
- Ethernet4

# L2 Leaf switch group
l2leaf:
defaults:
platform: vEOS-lab
spanning_tree_mode: mstp

node_groups:
- group: DC1_L2_LEAF1
uplink_switches: ['dc1-leaf1a', 'dc1-leaf1b']
nodes:
- name: dc1-leaf1c
id: 1
mgmt_ip: 172.16.1.151/24
uplink_switch_interfaces:
- Ethernet8
- Ethernet8

- group: DC1_L2_LEAF2
uplink_switches: ['dc1-leaf2a', 'dc1-leaf2b']
nodes:
- name: dc1-leaf2c
id: 2
mgmt_ip: 172.16.1.152/24
uplink_switch_interfaces:
- Ethernet8
- Ethernet8
uplink_switch_interfaces: [Ethernet4, Ethernet4]

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
---
type: spine

spine:
# Define variables for all nodes of this type
defaults:
# Set the relevant platform as each platform has different default values in Ansible AVD
# Arista platform family <- from the documentation page https://avd.arista.com/5.1/roles/eos_designs/docs/input-variables.html#node-type-settings TOREVISE
platform: vEOS-lab
# Pool of IPv4 addresses to configure interface Loopback0 used for BGP EVPN sessions
loopback_ipv4_pool: 10.255.0.0/27
# Autonous System Number for BGP
bgp_as: 65100
# Define variables per node
nodes:
# The Node Name is used as "hostname"
- name: dc1-spine1
# Unique identifier used for IP addressing and other algorithms
id: 1
# Node management interface IPv4 address
mgmt_ip: 172.16.1.11/24

- name: dc1-spine2
id: 2
mgmt_ip: 172.16.1.12/24
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
---
# Ansible connectivity definitions
# eAPI connectivity via HTTPS is specified (as opposed to CLI via SSH)
ansible_connection: ansible.netcommon.httpapi
# Specifies that we are indeed using Arista EOS
ansible_network_os: arista.eos.eos
# This user/password must exist on the switches to enable Ansible access
ansible_user: ansible
ansible_password: ansible
# User escalation (to enter enable mode)
ansible_become: true
ansible_become_method: enable
ansible_httpapi_use_ssl: true
ansible_httpapi_validate_certs: false
Original file line number Diff line number Diff line change
@@ -1,20 +1,4 @@
---
# Ansible connectivity definitions
# eAPI connectivity via HTTPS is specified (as opposed to CLI via SSH)
ansible_connection: ansible.netcommon.httpapi
# Specifies that we are indeed using Arista EOS
ansible_network_os: arista.eos.eos
# This user/password must exist on the switches to enable Ansible access
ansible_user: ansible
ansible_password: ansible
# User escalation (to enter enable mode)
ansible_become: true
ansible_become_method: enable
# Use SSL (HTTPS)
ansible_httpapi_use_ssl: true
# Do not try to validate certs
ansible_httpapi_validate_certs: false

# Common AVD group variables
fabric_name: FABRIC

Expand Down Expand Up @@ -57,18 +41,18 @@ p2p_uplinks_mtu: 1500

# Set default uplink, downlink, and MLAG interfaces based on node type
default_interfaces:
- types: [ spine ]
platforms: [ default ]
uplink_interfaces: [ Ethernet1-2 ]
downlink_interfaces: [ Ethernet1-8 ]
- types: [ l3leaf ]
platforms: [ default ]
uplink_interfaces: [ Ethernet1-2 ]
mlag_interfaces: [ Ethernet3-4 ]
downlink_interfaces: [ Ethernet8 ]
- types: [ l2leaf ]
platforms: [ default ]
uplink_interfaces: [ Ethernet1-2 ]
- types: [spine]
platforms: [default]
uplink_interfaces: [Ethernet1-2]
downlink_interfaces: [Ethernet1-8]
- types: [l3leaf]
platforms: [default]
uplink_interfaces: [Ethernet1-2]
mlag_interfaces: [Ethernet3-4]
downlink_interfaces: [Ethernet8]
- types: [l2leaf]
platforms: [default]
uplink_interfaces: [Ethernet1-2]

# CloudVision Portal definitions
cvp_instance_ips:
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
---
all:
children:
CLOUDVISION: # (1)!
hosts:
cvp:
ansible_httpapi_host: cvp
ansible_host: cvp
ansible_user: ansible
ansible_password: ansible
ansible_connection: httpapi
ansible_httpapi_use_ssl: true
ansible_httpapi_validate_certs: false
ansible_network_os: eos
ansible_python_interpreter: $(which python3)

FABRIC:
children:
DC1:
children:
DC1_SPINES:
hosts:
dc1-spine1:
dc1-spine2:
DC1_L3_LEAVES:
hosts:
dc1-leaf1a:
dc1-leaf1b:
dc1-leaf2a:
dc1-leaf2b:
DC1_L2_LEAVES:
hosts:
dc1-leaf1c:
dc1-leaf2c:

NETWORK_SERVICES: # (2)!
children:
DC1_L3_LEAVES:
DC1_L2_LEAVES:
CONNECTED_ENDPOINTS: # (3)!
children:
DC1_L3_LEAVES:
DC1_L2_LEAVES: