• Tag : EOS

 
 

Automating the collection of system logs using logGrab

Typically when a support case is opened the first item requested by the support engineer is more data.  If all necessary data can be provided when a support case is opened it allows the support engineer to immediately begin looking at a customer issue, however it is often difficult to know exactly which information will be required.  logGrab aims to simplify this complexity by automating the process reducing the typical time to resolution of service requests. logGrab is a simple bash script, when executed it collects all data typically required by TAC engineers and places it into a single timestamped ZIP...
Continue reading →

Virtual Machines in EOS

How-to implement virtual machines in Arista EOS Virtualization was first developed in the 1960s and used to partition mainframe hardware to improve utilization. Today, virtualization has many meanings and widely implemented on a variety of platforms. Arista EOS leveraging it’s unmodified Linux kernel and embracing open source standards based technology has brought the concept of operating system virtualization to Ethernet switching. The approach that Arista has taken is to utilize Kernel-based Vitual Machines (KVM). Turning the Linux kernel into a hypervisor by loading a kernel module which provides the core virtualization infrastructure, a processor specific module (Intel or AMD) which...
Continue reading →

Running Arista vEOS inside VMware Workstation

Arista EOS is released as a single image that supports all of our platforms. That same single image can even be run in a virtual machine! This video describes how to set up a virtual machine in order to test EOS functionality, or to develop and test your own extensions.  

Intelligent Bootstrap with Arista EOS and ZTPServer

Many customers inquire about how to get started with automation into their operational networks. These conversations tend to revolve around how to reduce the operational expense and risk associated with managing data center networks. In most cases, the general consensus leads to starting automation around the bootstrap process or, in other words, how to find a better way to introduce consistency and agility into the deployment process.  Arista’s early heritage grew from solving real world operational problems that enhance our customers ability to deliver massively scalable data center networks efficiently. Throughout the development process EOS has provided innovative solutions that...
Continue reading →

Where to download Across

Can you help point out the download location of software “Across” required to generate EOS kernel source code? Many thanks! I didn’t find its download location with Google or on Arista web site. Error when generating source code: Installing EosKernel-2.6.38.8.Ar-1945438.EOS41281.src.rpm error: Failed build dependencies: Across is needed by EosKernel-2.6.38.8.Ar-1945438.EOS41281.x86_64

Running a Guest VM on EOS

Introduction One of the key features of Arista EOS is its Extensibility. (that is what the E in EOS stands for.) Many people already love that EOS is based on unmodified Linux kernel and basically runs a subset of Fedora Linux (as of writing, Fedora Core 14). To anyone familiar with Unix or Linux an Arista switch basically looks like a Linux server with lots of ethernet interfaces: switch>enable switch#bash Arista Networks EOS shell [admin@switch ~]$ uname -a Linux switch 2.6.32.28.Ar-957380.EOS4104gaurav #1 SMP PREEMPT Sat Nov 3 13:07:31 PDT 2012 x86_64 x86_64 x86_64 GNU/Linux [admin@switch ~]$ ifconfig -a cpu Link encap:Ethernet HWaddr 00:1C:73:19:F6:46...
Continue reading →

Securing EOS CLI

Objective This Tech Tip is intended to provide Arista EOS users with the configuration guidelines and best practices to enable secure management plane protocols according to IT industry security standards. It is not the objective of this document to set the foundations or rules of a company security policy or a password policy. Note: This document is not intended to set company security or password policy. Ultimate responsible to define and apply an end-to-end IT security policy is the responsibility of the end user and must take into account any regulations directly related with company activities. Arista EOS includes a wide...
Continue reading →

How do I enable configure commands via HTTP API?

I'm working with a 7050s which has the http interface enabled and I am able to post non-privileged show commands and receive successful json output (e.g. show interfaces).  However, when I attempt to execute a command that requires configuration mode the command fails with the error message: ' 'configure' failed: invalid command.'   Executing 'show privilege' from the client indicates that the privilege level is 1, and so I assumed that by assigning the default privilege of 15 to the user that the configure command would be successful.  After adding a user: username newuser privilege 15 secret 0 ######  role...
Continue reading →

Packaging and installing EOS extensions

EOS follows the Fedora model of packaging and distributing software as RPMs. EOS extensions can be packaged either as normal RPMs, or as a bundle of RPMs called a SWIX. Creating an EOS extension as an RPM A standard RPM can be used for packaging EOS extensions. Documentation on how to build an RPM can be found in the rpmbuild man page, on the rpm.org website at http://www.rpm.org/wiki/Docs, or on the Fedora Project Wiki at http://fedoraproject.org/wiki/How_to_create_an_RPM_package. The following example shows a quick way to create an RPM extension for a fixed set of files, in this case a script called MyTestExtension...
Continue reading →

How to collect interface statistics from bash

Watch interface counters, update interval 10 second (defined by the -n flag): [user@Arista ~]$watch -n 10 "FastCli -c 'show int e1 count rates'" Note: This command can also be run from the CLI: Arista#watch 10 show int e1 count rates Watch interface counters, update interval 10 second & highlight differences (defined by the -d flag): [user@Arista ~]$ bash watch -d -n 10 "FastCli -c 'sh int e1 count rates'" Note: This command can also be run from the CLI: Arista#watch 10 diff show int e1 count rates Collect the interface names and the corresponding IP addresses (for all interfaces) to a...
Continue reading →

Debugging EOS agents

EOS’s architecture is built around the notion of agents. While the CLI show commands offer some great insights into the operational status of the switch, there is deeper level of detail that can be gathered from the agents by using a EOS debugging feature called agent tracing. Through this feature, which delivers live debug output to the CLI, EOS provides extensive troubleshooting information and enables users to debug complex control plane or protocol layer interactions. To configure agent tracing, first check the list of available agents. For example, in order to see the list of all agent starting with ‘A’, use: Arista#show trace...
Continue reading →

How to store and view previous contents of ‘show tech-support’

Introduction Starting with EOS 4.8.1, Arista introduced a unique feature called CLI Scheduler. Besides helping with troubleshooting and debugging Arista switches, this feature is used in order to automatically save the last 100 outputs of show tech-support (taken every hour). Please see an Arista EOS Manual for further details on the CLI Scheduler. Scheduling a show tech-support command The schedule command facilitates the periodic execution of a specified CLI command. Command parameters can be used in order to configure: the interval between consecutive executions of the command the maximum number of log files to be saved Starting with 4.8.1, by default, the...
Continue reading →

SSH login without password

This article describes how you can configure your switch with a pre-shared SSH key from a host. 1. Create the user account on the switch   Arista(config)#username <user> privilege 15 secret <secret password> 2. Generate SSH key files on the SSH client host. If you already have the SSH key files, skip to step 3. <host>$ssh-keygen -t dsa -f testkey Generating public/private dsa key pair. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in testkey. Your public key has been saved in testkey.pub. The key fingerprint is: 38:dd:3a:68:ea:36:f1:9b:fa:69:ba:43:38:2f:98:f0 fred@HOST1.yourdomain.local The key's randomart image...
Continue reading →

Email client configuration in EOS

This article covers the configuration and use of email in Arista EOS. 1) Configuring Email Arista switches can be configured as email clients and can be used to send email alerts through event handlers (which trigger an action when a certain event happens, for example when an interface goes down). This capability is in addition to the other management and monitoring methods available in EOS. Email can also be used from the CLI, as a convenient way to retrieve information for support. EOS email supports both TLS and SMTP authentication. Arista(config)#email Arista(config-email)#? auth Email account authentication from-user Send email from...
Continue reading →

Programmatically update your routing table

Overview This article describes a script which is designed to allow the insertion/removal of a route in/from the routing table. If you want a way to remotely add/delete routes to/from your routing table, then this is the tool for you – using it will make insertion/removal of static routes as easy as running a script on any remote device that supports Python. How to get the code: Download the code Use your Github account and fork it (remember to contribute back) Installation The script (updateRoute) can be run/installed on any device that runs Python 2.7 or later. In order to run updateRoute, first...
Continue reading →

EOS ecosystem partner: SAP

See what SAP’s Global Managing Board Member Vishal Sikka has to say about the partnership between SAP and Arista:

Dynamically update your interface name via port auto-description

Overview: Port auto-description will dynamically update the port description based on the LLDP information received from the neighbour. As always we are looking for your feedback please let us know if you have ideas on how to improve this script or other ideas… The tool: The script, called ‘portAuto’, will dynamically change the port description based on the neighbour’s LLDP information. This could be used as a stand alone script or part of a larger toolset. How to get the code: Get the code directly from Github https://github.com/arista-eosext/PortAutoDescription Use your Github account and fork it(remember to contribute back) Installation: In order to install...
Continue reading →

Linux as a Switch Operating System: Five Lessons Learned

Arista spent the last nine years building a switch operating system based on Linux, including nearly six years of field experience. Here are five lessons we learned along the way. Lesson 1. It’s okay to leave the door unlocked. We weren’t the first to put Linux on a switch, but we were the first to leave it open. By “open”, I mean that an administrator can get a root shell on the switch, with access to all of the standard Linux tools from awk to zip. A few naysayers believed that customers would run with scissors, hurt themselves, and blame...
Continue reading →

Understanding EOS CLI implementation

This document gives an overview of the some of the APIs used for developing CLI Plugins. Although it tries to be as complete as possible, it only focuses on the most common APIs used by the CLI Plugins and it is not an exhaustive description of all the interfaces. The document is relevant for EOS version 4.12.0, although parts of the document might also apply to older releases. “Hello world!” example TestCli.py # Copyright(c)2013 AristaNetworks,Inc. All rights reserved. # Arista Networks, Inc. Confidential and Proprietary. import BasicCli import CliParser from CliModel import Model # Model ­ only required for eAPI...
Continue reading →

Follow

Get every new post on this blog delivered to your Inbox.

Join other followers: