On 06/12/2018 02:40 AM, Nicola Bucci wrote:
Would you be able to provide a fully functional example with configs? That 
would be awesome.


Rather than a fully functional config, here are some config extracts:

Part of a shell script to configure and connect the ovs/kernel bridges, vxlan interface, and regular vlan. You define how you want to map local vlans to global vni numbering.

VNI=$1
NAME=$2
TYPE=$3
VLAN=$4
# kernel bridge, bring it up without spanning tree
brctl addbr br${NAME}
ip link set dev br${NAME} up
brctl stp br${NAME} off
# create vxlan interface, where VNI is tied to vni in FRR, lo is a loopback
# nolearning is on the same line, but line-wrapped in email
ip link add vx${NAME} type vxlan id ${VNI} dstport 4789 local ${lo} nolearning
# add the vxlan interface to kernel bridge, bring itup
brctl addif br${NAME} vx${NAME}
ip link set dev vx${NAME} up
# add a veth to tie kernel bridge to ovs
ip link add vo${NAME} type veth peer name vb${NAME}
# add veth to kernel bridge
brctl addif br${NAME} vb${NAME}
# add veth to ovs bridge
ovs-vsctl --if-exists del-port ovsbr0 vo${NAME}
ovs-vsctl add-port ovsbr0 vo${NAME} ${TYPE}=${VLAN}
# bring up both ends of veth
ip link set dev vo${NAME} up
ip link set dev vb${NAME} up
# container and kvm links are then added to the ovs bridge
....


Here is an extract from an FRR EVPN configuration in the BGP configuration file. For this example, there are two FRR instances involved for sharing VNI information. This configuration is for one of the two. For scaling, you choose the import/export statements based upon selecting which instances the VNI needs to be associated (where the vlan needs to be 'stretched')

In my case, the relationships are defined in a separate master file, and I use SaltStack to build the specific configs for each instance.

The addresses in the RD/RT are the instance loopbacks.

  address-family l2vpn evpn
    neighbor 10.20.3.2 activate
    vni 1012
      rd 10.20.1.1:1012
      route-target export 10.20.1.1:1012
      route-target import 10.20.1.2:1012
    exit-vni
    vni 1101
      rd 10.20.1.1:1101
      route-target export 10.20.1.1:1101
      route-target import 10.20.1.2:1101
    exit-vni
    vni 1421
      rd 10.20.1.1:1421
      route-target export 10.20.1.1:1421
      route-target import 10.20.1.2:1421
    exit-vni
    advertise-all-vni
  exit-address-family

Some more reading material I have gathered:

https://blog.raymond.burkholder.net/index.php?/archives/799-EVPN-Reading-Material.html

Thanks

I hope the above is some value

Nico

--
Raymond Burkholder
r...@oneunified.net
https://blog.raymond.burkholder.net

--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.

_______________________________________________
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss

Reply via email to