Arista Networks vendor logo

Vendor

Arista Networks

Product

EOS

OS Versions:

^3.198.19+2022.1.71

Method

IAG

Category

Data Center

Project Type

Workflow Project


View Repository
Workflow

Arista EOS Device - Example Use Cases - Managed by CLI in IAG

Overview

This Pre-Built Automation bundle contains several example use cases that are applicable when the Itential Automation Platform is integrated with Arista EOS using the device CLI. Because every environment is different, these use cases are fully functioning examples that can be easily modified to operate in your specific environment. These workflows have been written with modularity in mind to make them easy to understand and simple to modify to suit your needs.

Workflows

Name Overview
Software Upgrade - EOS Upgrade EOS on an Arista device
Port Turn Up - EOS Enable a port on an EOS device
File Transfer - EOS Perform file transfer on an Arista EOS device
Create VLAN - EOS Create a new VLAN on an EOS device

For further technical details on how to install and use this Workflow Project, please click the Technical Documentation tab.

Table of Contents

Getting Started

This section is helpful for deployments as it provides you with pertinent information on prerequisites and properties.

Helpful Background Information

Workflows often include logic that varies from business to business. As a result, we often find that our Workflow Projects are more useful as modular components that can be incorporated into a larger process. In addition, they often can add value as a learning tool on how we integrate with other systems and how we do things within the Itential Automation Platform.

While these can be utilized, you may find more value in using them as a starting point to build around.

Prerequisites

Itential Workflow Projects are built and tested on particular versions of IAP. In addition, Workflow Projects are often dependent on external systems and as such, these Workflow Projects will have dependencies on these other systems. This version of Arista - EOS - IAG has been tested with:

  • IAP 2023.2

External Dependencies

Name OS Version API Version
Itential Automation Gateway (IAG) ^3.198.19+2022.1.71

Adapters

Name Version Configuration Notes
adapter-automation_gateway ^4.29.0-2023.1.12.0

How to Install

To install the Workflow Project:

  • Verify you are running a supported version of the Itential Automation Platform (IAP) as listed above in the Supported IAP Versions section in order to install the Example Project.
  • Import the Example Project in Admin Essentials.

Testing

Cypress is generally used to test all Itential Example Projects. While Cypress is an opensource tool, at Itential we have internal libraries that have been built around Cypress to allow us to test with a deployed IAP.

When certifying our Example Projects for a release of IAP we run these tests against the particular version of IAP and create a release branch in GitLab. If you do not see the Example Project available in your version of IAP please contact Itential.

While Itential tests this Example Project and its capabilities, it is often the case the customer environments offer their own unique circumstances. Therefore, it is our recommendation that you deploy this Example Project into a development/testing environment in which you can test the Example Project.

Using this Workflow Project

Workflow Projects contain 1 or more workflows. Each of these workflows have different inputs and outputs.

Create VLAN - EOS

Create a new VLAN on an EOS device

Capabilities include:

  • Perform a Pre-Check to verify the VLAN does not already exist
  • Configure the VLAN
  • Perform a Post-Check to verify the state of the VLAN
  • Optionally display a diff of the Pre-Check and Post-Check to the user

Entry Point IAP Component

The primary IAP component to run Create VLAN - EOS is listed below:

IAP Component Name IAP Component Type
Create VLAN - EOS Workflow

Inputs

The following table lists the inputs for Create VLAN - EOS:

Name Type Required Description Example Value
vlan string yes VLAN Id
2
vlanName string yes Name for VLAN
test
deviceName string yes Name of the device as shown in IAG
eos-device
suppressSuccessMessage boolean yes Set to false if want to approve config changes before pushing to device
false
suppressFailureMessage boolean yes Set to false if want to view failure messages before procceeding
false

Outputs

There are no outputs for Create VLAN - EOS.

Query Output

There are no query output examples for Create VLAN - EOS.

Example Inputs and Outputs

Example 1

Input:

{
  "vlan": "2",
  "vlanName": "test",
  "deviceName": "test-eos",
  "suppressSuccessMessage": true, 
  "suppressFailureMessage": true
} 

Output:

{} 

API Links

No API Links provided.


File Transfer - EOS

Perform file transfer on an Arista EOS device

Capabilities include:

  • Utilize FTP to perform file transfer on an Arista EOS device
  • Optionally validate file intergrity with MD5

Entry Point IAP Component

The primary IAP component to run File Transfer - EOS is listed below:

IAP Component Name IAP Component Type
File Transfer - EOS Workflow

Inputs

The following table lists the inputs for File Transfer - EOS:

Name Type Required Description Example Value
suppressSuccessMessage boolean yes Set to false if want to approve config changes before pushing to device
false
suppressFailureMessage boolean yes Set to false if want to view failure messages before procceeding
false
device string yes Name of the device in IAG
Arista
ftpRemoteServer object yes FTP remote server information, including "username" and "password" for authentication, "ipAddress" which represents the location of the FTP server, "path" which indicates the directory where the file is located on FTP server, and "fileName" which refers to the name of the file you want to transfer
{
  "username": "ftpuser",
  "ipAddress": "172.20.10.22",
  "path": "/home/ftpuser/ftp/",
  "fileName": "test.txt",
  "password": "ftpassword"
}
performMd5Check boolean yes Whether to validate file intergrity
true
md5 string no Store the MD5 hash of a file, which serves as a checksum to verify integrity of the data
d8e8fca2dc0f896fd7cb4cb0031ba249

Outputs

There are no outputs for File Transfer - EOS.

Query Output

There are no query output examples for File Transfer - EOS.

Example Inputs and Outputs

Example 1

Input:

{
  "device": "Arista",
  "suppressSuccessMessage": true,
  "suppressFailureMessage": true,
  "ftpRemoteServer": {
    "username": "ftpuser",
    "ipAddress": "172.20.10.22",
    "path": "/home/ftpuser/ftp/",
    "fileName": "test.txt",
    "password": "ftpassword"
  },
  "md5": "d8e8fca2dc0f896fd7cb4cb0031ba249",
  "performMd5Check": true
} 

Output:

{} 

API Links

No API Links provided.


Port Turn Up - EOS

Enable a port on an EOS device

Capabilities include:

  • Perform a Pre-Check to verify the port does not already exist
  • Configure the port
  • Perform a Post-Check to verify the state of the port
  • Optionally display a diff of the Pre-Check and Post-Check to the user

Entry Point IAP Component

The primary IAP component to run Port Turn Up - EOS is listed below:

IAP Component Name IAP Component Type
Port Turn Up - EOS Workflow

Inputs

The following table lists the inputs for Port Turn Up - EOS:

Name Type Required Description Example Value
suppressSuccessMessage boolean yes Set to false if want to approve config changes before pushing to device
false
suppressFailureMessage boolean yes Set to false if want to view failure messages before procceeding
false
device string yes Name of the device in IAG
Arista
type string yes Interface type
Vlan
id string yes Interface ID
5
description string yes Interface description
testing
ipAddress string yes IPv4 Address assigned to the interface
10.0.0.1
cidr string yes CIDR Size
30

Outputs

There are no outputs for Port Turn Up - EOS.

Query Output

There are no query output examples for Port Turn Up - EOS.

Example Inputs and Outputs

Example 1

Input:

{
  "suppressSuccessMessage": true,
  "suppressFailureMessage": true,
  "device": "Arista",
  "type": "Vlan",
  "id": "5",
  "description": "testing",
  "ipAddress": "10.0.0.1",
  "cidr": "30"
} 

Output:

{} 

API Links

No API Links provided.


Software Upgrade - EOS

Upgrade EOS on an Arista device

Capabilities include:

  • Verify current software version and check if the image file used for upgrade is on the device
  • Run pre-check commands
  • Change the boot system image
  • Reload the device
  • Verify the new EOS image is now active on the device after reload
  • Run post-check commands
  • Optionally show the difference between the pre-check and post-check results

Entry Point IAP Component

The primary IAP component to run Software Upgrade - EOS is listed below:

IAP Component Name IAP Component Type
Software Upgrade - EOS Workflow

Inputs

The following table lists the inputs for Software Upgrade - EOS:

Name Type Required Description Example Value
suppressSuccessMessage boolean yes Set to false if want to approve config changes before pushing to device
false
suppressFailureMessage boolean yes Set to false if want to view failure messages before procceeding
false
device string yes Name of the device in IAG to upgrade
Arista
version string yes EOS version after upgrade
4.26.2F
image string yes Image file used to upgrade
vEOS64-lab-4.26.2F.swi
flashMemory string yes Onboard flash memory storage
flash:

Outputs

There are no outputs for Software Upgrade - EOS.

Query Output

There are no query output examples for Software Upgrade - EOS.

Example Inputs and Outputs

Example 1

Input:

{
  "suppressSuccessMessage": true,
  "suppressFailureMessage": true,
  "device": "Arista",
  "version": "4.26.2F",
  "image": "vEOS64-lab-4.26.2F.swi",
  "flashMemory": "flash:"
} 

Output:

{} 

API Links

No API Links provided.


Additional Information

Support

Please use your Itential Customer Success account if you need support when using this Workflow Project.