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

NameOverview
Software Upgrade - EOSUpgrade EOS on an Arista device
Port Turn Up - EOSEnable a port on an EOS device
File Transfer - EOSPerform file transfer on an Arista EOS device
Create VLAN - EOSCreate 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

NameOS VersionAPI Version
Itential Automation Gateway (IAG)^3.198.19+2022.1.71

Adapters

NameVersionConfiguration 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 NameIAP Component Type
Create VLAN - EOSWorkflow

Inputs

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

NameTypeRequiredDescriptionExample Value
vlanstringyesVLAN Id
2
vlanNamestringyesName for VLAN
test
deviceNamestringyesName of the device as shown in IAG
eos-device
suppressSuccessMessagebooleanyesSet to false if want to approve config changes before pushing to device
false
suppressFailureMessagebooleanyesSet 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 NameIAP Component Type
File Transfer - EOSWorkflow

Inputs

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

NameTypeRequiredDescriptionExample Value
suppressSuccessMessagebooleanyesSet to false if want to approve config changes before pushing to device
false
suppressFailureMessagebooleanyesSet to false if want to view failure messages before procceeding
false
devicestringyesName of the device in IAG
Arista
ftpRemoteServerobjectyesFTP 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"
}
performMd5CheckbooleanyesWhether to validate file intergrity
true
md5stringnoStore 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 NameIAP Component Type
Port Turn Up - EOSWorkflow

Inputs

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

NameTypeRequiredDescriptionExample Value
suppressSuccessMessagebooleanyesSet to false if want to approve config changes before pushing to device
false
suppressFailureMessagebooleanyesSet to false if want to view failure messages before procceeding
false
devicestringyesName of the device in IAG
Arista
typestringyesInterface type
Vlan
idstringyesInterface ID
5
descriptionstringyesInterface description
testing
ipAddressstringyesIPv4 Address assigned to the interface
10.0.0.1
cidrstringyesCIDR 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 NameIAP Component Type
Software Upgrade - EOSWorkflow

Inputs

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

NameTypeRequiredDescriptionExample Value
suppressSuccessMessagebooleanyesSet to false if want to approve config changes before pushing to device
false
suppressFailureMessagebooleanyesSet to false if want to view failure messages before procceeding
false
devicestringyesName of the device in IAG to upgrade
Arista
versionstringyesEOS version after upgrade
4.26.2F
imagestringyesImage file used to upgrade
vEOS64-lab-4.26.2F.swi
flashMemorystringyesOnboard 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.