Arista + Ansible – Getting Started

The Ansible 2.1 release made it easier than ever to manage Arista switches.  The following article describes how to leverage Ansible for EOS configuration management. The Basics If you’re brand new to Ansible, it might be helpful to take a spin through their Overview and Getting Started just to familiarize yourself with some of the basic concepts. The Ansible documentation has a great introduction to Ansible for Networking – definitely check it out before reading on. EOS Modules  Ansible modules do all of the heavy-lifting, and there’s a module to do just about anything you could possible think of, from copying a...
Continue reading →

Arista + Ansible: A Dramatically Simple New Approach

On February 18th, 2016 Ansible (Red Hat) announced a new initiative to help bring years of systems administration experience to the network by creating a new set of modules built specifically for network devices.  This announcement signals a new direction for Ansible, a technology that previously omitted native support for the majority of network vendors.  What does this announcement mean and how can you get started with your Arista devices? A Brief History Astute readers may be wondering, “Why does this matter? I can already manage my Arista device with Ansible.” That’s true, but the announcement from Ansible changes the approach we...
Continue reading →

Interface Auto-Description with Detailed LLDP Info

Still writing interface descriptions manually? No fun at all; not to mention the task is prone to typos and human error. Why not let LLDP help you out! Mark Berly originally authored a handy little script that used ‘show lldp neighbors’ to dynamically build your local interface descriptions based upon a few simple key/value pairs. But what if you wanted a little bit more data only found in `show lldp neighbors detail`? PortAutoDescription v3 With this updated version, you can access a majority of the data only available in ‘show lldp neighbors detail’ with an easy to use dictionary: {...
Continue reading →

ZTPServer – Benchmarking the Webserver Gateway Interface

Introduction ZTPServer provides a bootstrap environment for Arista EOS based products. It is written mostly in Python and leverages standard protocols like DHCP (for boot functions), HTTP (for bi-directional transport), and XMPP/syslog (for logging). Most of the configuration files are YAML based [ documentation ]. We will benchmark the performance of the ZTPServer by using funkload, which will simulate EOS nodes being provisioned. Objective The purpose of this post is to evaluate the performance of the ZTPServer with different profiles and modes of operation to determine its ability to scale. We’ll also demonstrate how you can leverage the EOS+ CS...
Continue reading →

Quick and Easy vEOS Lab Setup (VMware or VirtualBox)

Introduction A local vEOS lab is always helpful when trying out new features or validating configuration. So how would you like to be able to setup a 4-node spine/leaf virtual lab pictured below with one simple command? user:packer-veos user$ ./create-veos.py -H virtualbox And what if you wanted to try out the ZTPServer with this new set of nodes? user:packer-ztpserver user$ ./create-ztpserver.py -H virtualbox -o fedora This is possible with the help of the EOS+ Consulting Services Github projects: packer-veos packer-ztpserver Follow the READMEs at those individual repos to setup your virtual machines, but here’s a quick overview of the process....
Continue reading →