Files
arista-evpn-vxlan-clab/infrahub/objects/09-bgp.yml
Damien 1b25c92965 build(infrahub): update file paths to match new directory structure
Refactor the .infrahub.yml configuration file to prefix all schema, menu, and object paths with the 'infrahub/' directory. This change aligns the configuration with the reorganized project structure where Infrahub resources have been moved into a dedicated subfolder.
2026-02-20 18:33:37 +01:00

412 lines
13 KiB
YAML

# BGP: RouterConfig, PeerGroups, Sessions, AddressFamilies
# Depends on: 01-foundation (ASNs), 02-devices, 04-ipam
#
# Spine BGP: no named peer-groups in config (neighbors defined directly),
# but evpn peer-group is defined. Underlay neighbors are direct.
# Leaf BGP: underlay, underlay_ibgp, evpn peer-groups.
---
apiVersion: infrahub.app/v1
kind: Object
spec:
kind: InfraBGPRouterConfig
data:
# ============================================================
# Spine1 BGP — AS 65000, router-id 10.0.250.1
# ============================================================
- device: ["spine1"]
router_id: "10.0.250.1"
local_asn: ["65000"]
default_ipv4_unicast: false
log_neighbor_changes: true
ecmp_max_paths: 4
ecmp_max_ecmp: 64
ebgp_distance: 20
ibgp_distance: 200
local_distance: 200
# ============================================================
# Spine2 BGP — AS 65000, router-id 10.0.250.2
# ============================================================
- device: ["spine2"]
router_id: "10.0.250.2"
local_asn: ["65000"]
default_ipv4_unicast: false
log_neighbor_changes: true
ecmp_max_paths: 4
ecmp_max_ecmp: 64
ebgp_distance: 20
ibgp_distance: 200
local_distance: 200
# ============================================================
# Leaf1 BGP — AS 65001, router-id 10.0.250.11
# ============================================================
- device: ["leaf1"]
router_id: "10.0.250.11"
local_asn: ["65001"]
default_ipv4_unicast: false
log_neighbor_changes: true
ecmp_max_paths: 4
ecmp_max_ecmp: 64
ebgp_distance: 20
ibgp_distance: 200
local_distance: 200
# ============================================================
# Leaf2 BGP — AS 65001, router-id 10.0.250.12
# ============================================================
- device: ["leaf2"]
router_id: "10.0.250.12"
local_asn: ["65001"]
default_ipv4_unicast: false
log_neighbor_changes: true
ecmp_max_paths: 4
ecmp_max_ecmp: 64
ebgp_distance: 20
ibgp_distance: 200
local_distance: 200
# ============================================================
# Leaf3 BGP — AS 65002, router-id 10.0.250.13
# ============================================================
- device: ["leaf3"]
router_id: "10.0.250.13"
local_asn: ["65002"]
default_ipv4_unicast: false
log_neighbor_changes: true
ecmp_max_paths: 4
ecmp_max_ecmp: 64
ebgp_distance: 20
ibgp_distance: 200
local_distance: 200
# ============================================================
# Leaf4 BGP — AS 65002, router-id 10.0.250.14
# ============================================================
- device: ["leaf4"]
router_id: "10.0.250.14"
local_asn: ["65002"]
default_ipv4_unicast: false
log_neighbor_changes: true
ecmp_max_paths: 4
ecmp_max_ecmp: 64
ebgp_distance: 20
ibgp_distance: 200
local_distance: 200
# ============================================================
# Leaf5 BGP — AS 65003, router-id 10.0.250.15
# ============================================================
- device: ["leaf5"]
router_id: "10.0.250.15"
local_asn: ["65003"]
default_ipv4_unicast: false
log_neighbor_changes: true
ecmp_max_paths: 4
ecmp_max_ecmp: 64
ebgp_distance: 20
ibgp_distance: 200
local_distance: 200
# ============================================================
# Leaf6 BGP — AS 65003, router-id 10.0.250.16
# ============================================================
- device: ["leaf6"]
router_id: "10.0.250.16"
local_asn: ["65003"]
default_ipv4_unicast: false
log_neighbor_changes: true
ecmp_max_paths: 4
ecmp_max_ecmp: 64
ebgp_distance: 20
ibgp_distance: 200
local_distance: 200
# ============================================================
# Leaf7 BGP — AS 65004, router-id 10.0.250.17
# ============================================================
- device: ["leaf7"]
router_id: "10.0.250.17"
local_asn: ["65004"]
default_ipv4_unicast: false
log_neighbor_changes: true
ecmp_max_paths: 4
ecmp_max_ecmp: 64
ebgp_distance: 20
ibgp_distance: 200
local_distance: 200
# ============================================================
# Leaf8 BGP — AS 65004, router-id 10.0.250.18
# ============================================================
- device: ["leaf8"]
router_id: "10.0.250.18"
local_asn: ["65004"]
default_ipv4_unicast: false
log_neighbor_changes: true
ecmp_max_paths: 4
ecmp_max_ecmp: 64
ebgp_distance: 20
ibgp_distance: 200
local_distance: 200
---
apiVersion: infrahub.app/v1
kind: Object
spec:
kind: InfraBGPPeerGroup
data:
# ============================================================
# Spine peer-groups (evpn only — underlay neighbors are direct)
# ============================================================
# Spine1 — evpn peer-group
- bgp_config: ["spine1"]
local_identifier: "spine1__evpn"
name: evpn
description: EVPN overlay to leaf loopbacks
peer_group_type: evpn
update_source: Loopback0
ebgp_multihop: 3
send_community: extended
next_hop_unchanged: true
maximum_routes: 12000
maximum_routes_warning_only: true
# Spine2 — evpn peer-group
- bgp_config: ["spine2"]
local_identifier: "spine2__evpn"
name: evpn
description: EVPN overlay to leaf loopbacks
peer_group_type: evpn
update_source: Loopback0
ebgp_multihop: 3
send_community: extended
next_hop_unchanged: true
maximum_routes: 12000
maximum_routes_warning_only: true
# ============================================================
# Leaf peer-groups (underlay, underlay_ibgp, evpn)
# ============================================================
# Leaf1
- bgp_config: ["leaf1"]
local_identifier: "leaf1__underlay"
name: underlay
description: Underlay eBGP to spines
peer_group_type: underlay
remote_asn: ["65000"]
maximum_routes: 12000
maximum_routes_warning_only: true
- bgp_config: ["leaf1"]
local_identifier: "leaf1__underlay_ibgp"
name: underlay_ibgp
description: MLAG iBGP peering
peer_group_type: underlay_ibgp
remote_asn: ["65001"]
next_hop_self: true
maximum_routes: 12000
maximum_routes_warning_only: true
- bgp_config: ["leaf1"]
local_identifier: "leaf1__evpn"
name: evpn
description: EVPN overlay to spines
peer_group_type: evpn
remote_asn: ["65000"]
update_source: Loopback0
ebgp_multihop: 3
send_community: extended
maximum_routes: 12000
maximum_routes_warning_only: true
# Leaf2
- bgp_config: ["leaf2"]
local_identifier: "leaf2__underlay"
name: underlay
description: Underlay eBGP to spines
peer_group_type: underlay
remote_asn: ["65000"]
maximum_routes: 12000
maximum_routes_warning_only: true
- bgp_config: ["leaf2"]
local_identifier: "leaf2__underlay_ibgp"
name: underlay_ibgp
description: MLAG iBGP peering
peer_group_type: underlay_ibgp
remote_asn: ["65001"]
next_hop_self: true
maximum_routes: 12000
maximum_routes_warning_only: true
- bgp_config: ["leaf2"]
local_identifier: "leaf2__evpn"
name: evpn
description: EVPN overlay to spines
peer_group_type: evpn
remote_asn: ["65000"]
update_source: Loopback0
ebgp_multihop: 3
send_community: extended
maximum_routes: 12000
maximum_routes_warning_only: true
# Leaf3
- bgp_config: ["leaf3"]
local_identifier: "leaf3__underlay"
name: underlay
description: Underlay eBGP to spines
peer_group_type: underlay
remote_asn: ["65000"]
maximum_routes: 12000
maximum_routes_warning_only: true
- bgp_config: ["leaf3"]
local_identifier: "leaf3__underlay_ibgp"
name: underlay_ibgp
description: MLAG iBGP peering
peer_group_type: underlay_ibgp
remote_asn: ["65002"]
next_hop_self: true
maximum_routes: 12000
maximum_routes_warning_only: true
- bgp_config: ["leaf3"]
local_identifier: "leaf3__evpn"
name: evpn
description: EVPN overlay to spines
peer_group_type: evpn
remote_asn: ["65000"]
update_source: Loopback0
ebgp_multihop: 3
send_community: extended
maximum_routes: 12000
maximum_routes_warning_only: true
# Leaf4
- bgp_config: ["leaf4"]
local_identifier: "leaf4__underlay"
name: underlay
description: Underlay eBGP to spines
peer_group_type: underlay
remote_asn: ["65000"]
maximum_routes: 12000
maximum_routes_warning_only: true
- bgp_config: ["leaf4"]
local_identifier: "leaf4__underlay_ibgp"
name: underlay_ibgp
description: MLAG iBGP peering
peer_group_type: underlay_ibgp
remote_asn: ["65002"]
next_hop_self: true
maximum_routes: 12000
maximum_routes_warning_only: true
- bgp_config: ["leaf4"]
local_identifier: "leaf4__evpn"
name: evpn
description: EVPN overlay to spines
peer_group_type: evpn
remote_asn: ["65000"]
update_source: Loopback0
ebgp_multihop: 3
send_community: extended
maximum_routes: 12000
maximum_routes_warning_only: true
# Leaf5
- bgp_config: ["leaf5"]
local_identifier: "leaf5__underlay"
name: underlay
description: Underlay eBGP to spines
peer_group_type: underlay
remote_asn: ["65000"]
maximum_routes: 12000
maximum_routes_warning_only: true
- bgp_config: ["leaf5"]
local_identifier: "leaf5__underlay_ibgp"
name: underlay_ibgp
description: MLAG iBGP peering
peer_group_type: underlay_ibgp
remote_asn: ["65003"]
next_hop_self: true
maximum_routes: 12000
maximum_routes_warning_only: true
- bgp_config: ["leaf5"]
local_identifier: "leaf5__evpn"
name: evpn
description: EVPN overlay to spines
peer_group_type: evpn
remote_asn: ["65000"]
update_source: Loopback0
ebgp_multihop: 3
send_community: extended
maximum_routes: 12000
maximum_routes_warning_only: true
# Leaf6
- bgp_config: ["leaf6"]
local_identifier: "leaf6__underlay"
name: underlay
description: Underlay eBGP to spines
peer_group_type: underlay
remote_asn: ["65000"]
maximum_routes: 12000
maximum_routes_warning_only: true
- bgp_config: ["leaf6"]
local_identifier: "leaf6__underlay_ibgp"
name: underlay_ibgp
description: MLAG iBGP peering
peer_group_type: underlay_ibgp
remote_asn: ["65003"]
next_hop_self: true
maximum_routes: 12000
maximum_routes_warning_only: true
- bgp_config: ["leaf6"]
local_identifier: "leaf6__evpn"
name: evpn
description: EVPN overlay to spines
peer_group_type: evpn
remote_asn: ["65000"]
update_source: Loopback0
ebgp_multihop: 3
send_community: extended
maximum_routes: 12000
maximum_routes_warning_only: true
# Leaf7
- bgp_config: ["leaf7"]
local_identifier: "leaf7__underlay"
name: underlay
description: Underlay eBGP to spines
peer_group_type: underlay
remote_asn: ["65000"]
maximum_routes: 12000
maximum_routes_warning_only: true
- bgp_config: ["leaf7"]
local_identifier: "leaf7__underlay_ibgp"
name: underlay_ibgp
description: MLAG iBGP peering
peer_group_type: underlay_ibgp
remote_asn: ["65004"]
next_hop_self: true
maximum_routes: 12000
maximum_routes_warning_only: true
- bgp_config: ["leaf7"]
local_identifier: "leaf7__evpn"
name: evpn
description: EVPN overlay to spines
peer_group_type: evpn
remote_asn: ["65000"]
update_source: Loopback0
ebgp_multihop: 3
send_community: extended
maximum_routes: 12000
maximum_routes_warning_only: true
# Leaf8
- bgp_config: ["leaf8"]
local_identifier: "leaf8__underlay"
name: underlay
description: Underlay eBGP to spines
peer_group_type: underlay
remote_asn: ["65000"]
maximum_routes: 12000
maximum_routes_warning_only: true
- bgp_config: ["leaf8"]
local_identifier: "leaf8__underlay_ibgp"
name: underlay_ibgp
description: MLAG iBGP peering
peer_group_type: underlay_ibgp
remote_asn: ["65004"]
next_hop_self: true
maximum_routes: 12000
maximum_routes_warning_only: true
- bgp_config: ["leaf8"]
local_identifier: "leaf8__evpn"
name: evpn
description: EVPN overlay to spines
peer_group_type: evpn
remote_asn: ["65000"]
update_source: Loopback0
ebgp_multihop: 3
send_community: extended
maximum_routes: 12000
maximum_routes_warning_only: true