Automating the BGP EVPN Control Plane for VXLAN using Ansible
Many data center network operators are advocates of open standards-based solutions for their data center switching infrastructure. They are choosing to implement the open standard protocols of Virtual Extensible LAN (VXLAN) as a Layer 2 overlay with Open Shortest Path First (OSPF) configured as the IGP and MP-BGP EVPN as the control protocol for VXLAN.
At World Wide Technology, we can demonstrate these open standard technologies using the Cisco Nexus 9000 series of switches running in NX-OS mode and F5 appliances in our Advanced Technology Center (ATC). We have also built fabrics using this technology in our Integration Centers.
These data center fabrics are a Clos spine and leaf network architecture. A typical deployment may consist of four to six spine switches and 40 or more leaf switches. The switch configuration is an ideal candidate for network automation because the spine and leaf switches exhibit a high degree of commonality in their configurations for their respective role. Additionally, the switch configurations are extremely verbose, often more than 700 lines in each configuration. Customers migrating to the next generation data center technology often have hundreds of virtual IP addresses to configure on their F5 appliances.
The goal of network automation is to identify patterns and exploit our ability to programmatically generate a configuration unique to each host interface, uplink and role - spine or leaf. We use variables input to the process from some readable human format, a markup language like YAML and Excel spreadsheets which are commonly used by network operations.
At WWT, our philosophy is to provide network automation tools to empower network engineers by leveraging what they already know and use. To realize that goal, we have developed modules and playbooks to manage the configuration of Nexus switches and F5 application delivery appliances using Excel spreadsheets and CSV files. This is accomplished through the extendable automation framework provided by Ansible and Ansible Tower.
Ansible is a simple, yet powerful automation tool which is extremely flexible. It provides hundreds of modules for server, public cloud administration as well as networking from a variety of vendors. Users can also write their own modules in Python with a short learning curve.
For more information on how WWT uses Ansible to accelerate the deployment of next generation data center fabrics, check out Principal Architect Matt Mullen's demo above or watch Consulting Solutions Architect Mark Wall's demo on F5 deployment automation with Ansible.