/arista.eos

Ansible Network Collection for Arista EOS

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

Arista EOS Collection

CI Codecov CI

The Ansible Arista EOS collection includes a variety of Ansible content to help automate the management of Arista EOS network appliances.

This collection has been tested against Arista EOS 4.24.6F.

Ansible version compatibility

This collection has been tested against following Ansible versions: >=2.14.0.

For collections that support Ansible 2.9, please ensure you update your network_os to use the fully qualified collection name (for example, cisco.ios.ios). Plugins and modules within a collection may be tested with only specific Ansible versions. A collection may contain metadata that identifies these versions. PEP440 is the schema used to describe the versions of Ansible.

Supported connections

The Arista EOS collection supports network_cli and httpapi connections.

Included content

Cliconf plugins

Name Description
arista.eos.eos Use eos cliconf to run command on Arista EOS platform

Httpapi plugins

Name Description
arista.eos.eos Use eAPI to run command on eos platform

Modules

Name Description
arista.eos.eos_acl_interfaces ACL interfaces resource module
arista.eos.eos_acls ACLs resource module
arista.eos.eos_banner Manage multiline banners on Arista EOS devices
arista.eos.eos_bgp (deprecated, removed after 2023-01-29) Configure global BGP protocol settings on Arista EOS.
arista.eos.eos_bgp_address_family Manages BGP address family resource module
arista.eos.eos_bgp_global Manages BGP global resource module
arista.eos.eos_command Run arbitrary commands on an Arista EOS device
arista.eos.eos_config Manage Arista EOS configuration sections
arista.eos.eos_eapi Manage and configure Arista EOS eAPI.
arista.eos.eos_facts Collect facts from remote devices running Arista EOS
arista.eos.eos_hostname Manages hostname resource module
arista.eos.eos_interfaces Interfaces resource module
arista.eos.eos_l2_interfaces L2 interfaces resource module
arista.eos.eos_l3_interfaces L3 interfaces resource module
arista.eos.eos_lacp LACP resource module
arista.eos.eos_lacp_interfaces LACP interfaces resource module
arista.eos.eos_lag_interfaces LAG interfaces resource module
arista.eos.eos_lldp Manage LLDP configuration on Arista EOS network devices
arista.eos.eos_lldp_global LLDP resource module
arista.eos.eos_lldp_interfaces LLDP interfaces resource module
arista.eos.eos_logging Manage logging on network devices
arista.eos.eos_logging_global Manages logging resource module
arista.eos.eos_ntp_global Manages ntp resource module
arista.eos.eos_ospf_interfaces OSPF Interfaces Resource Module.
arista.eos.eos_ospfv2 OSPFv2 resource module
arista.eos.eos_ospfv3 OSPFv3 resource module
arista.eos.eos_prefix_lists Manages Prefix lists resource module
arista.eos.eos_route_maps Manages Route Maps resource module
arista.eos.eos_snmp_server Manages snmp_server resource module
arista.eos.eos_static_routes Static routes resource module
arista.eos.eos_system Manage the system attributes on Arista EOS devices
arista.eos.eos_user Manage the collection of local users on EOS devices
arista.eos.eos_vlans VLANs resource module
arista.eos.eos_vrf Manage VRFs on Arista EOS network devices

Click the Content button to see the list of content included in this collection.

Installing this collection

You can install the Arista EOS collection with the Ansible Galaxy CLI:

ansible-galaxy collection install arista.eos

You can also include it in a requirements.yml file and install it with ansible-galaxy collection install -r requirements.yml, using the format:

---
collections:
  - name: arista.eos

Using this collection

This collection includes network resource modules.

Using modules from the Arista EOS collection in your playbooks

You can call modules by their Fully Qualified Collection Namespace (FQCN), such as arista.eos.eos_l2_interfaces. The following example task replaces configuration changes in the existing configuration on a Arista EOS network device, using the FQCN:

---
  - name: Replace device configuration of specified L2 interfaces with provided configuration.
    arista.eos.eos_l2_interfaces:
      config:
        - name: Ethernet1
          trunk:
            native_vlan: 20
            trunk_vlans: 5-10, 15
      state: replaced

See Also:

Contributing to this collection

We welcome community contributions to this collection. If you find problems, please open an issue or create a PR against the Arista EOS collection repository. See Contributing to Ansible-maintained collections for complete details.

You can also join us on:

See the Ansible Community Guide for details on contributing to Ansible.

Code of Conduct

This collection follows the Ansible project's Code of Conduct. Please read and familiarize yourself with this document.

Changelogs

Release notes

Release notes are available here.

Roadmap

More information

Licensing

GNU General Public License v3.0 or later.

See LICENSE to see the full text.