
Question bank
ACE: L5 Professional - Automation
40 ACE: L5 Professional - Automation questions with the correct answer and a written explanation, organised across 5 exam domains.
- 40 questions
- 5 domains
- Foundation level
Question index
Jump straight to any question. Answers and explanations are inline.
Arista EOS Automation
10 questions in this domain
- Question 1Single Choice
What is the method name used in JSON-RPC requests to execute multiple EOS commands via eAPI?
- ArunCmdsCorrect answer
- BexecuteCommands
- CbatchRun
- DcliExec
Why this is the answer
The correct JSON-RPC method is runCmds. Other names are not used in eAPI.
- Question 2Multiple Select
Which authentication methods are supported by eAPI? (Select two.)
- AHTTP BasicCorrect answer
- BHTTP DigestCorrect answer
- CSNMPv3
- DToken-based OAuth
Why this is the answer
eAPI supports HTTP Basic, HTTP Digest, and session-based. SNMP and OAuth are not supported.
- Question 3Interactive
In the provided JSON-RPC request, what is missing from the parameters to make it valid for eAPI?
- Acmds arrayCorrect answer
- Bmethod field
- Cjsonrpc version
- Did number
Why this is the answer
The params must contain a 'cmds' array listing the commands to execute.
- Question 4Single Choice
What is the default format for eAPI command output?
- AJSONCorrect answer
- BXML
- Ctext
- DYAML
Why this is the answer
eAPI uses JSON as the default encoding for structured output.
- Question 5Multiple Select
Which two fields are mandatory in every eAPI JSON-RPC request? (Select two.)
- AjsonrpcCorrect answer
- BmethodCorrect answer
- Cparams
- Dresult
Why this is the answer
Every JSON-RPC request must contain 'jsonrpc' and 'method'. 'params' is often required but not mandatory per JSON-RPC spec; however, eAPI requires it.
- Question 6Interactive
The JSON-RPC response below contains an error. What is the error code?
- A-32601
- B-32700
- C1000Correct answer
- D1001
Why this is the answer
Error code 1000 is a custom eAPI code for 'command invalid'.
- Question 7Single Choice
Which command must be included in the cmds array to escalate privileges to enable mode?
- AenableCorrect answer
- Bprivilege 15
- Clogin
- Dsuper
Why this is the answer
The 'enable' command must be explicitly sent to escalate to privileged EXEC mode.
- Question 8Multiple Select
Which two methods are used for eAPI session-based authentication? (Select two.)
- AcreateSessionCorrect answer
- BcloseSessionCorrect answer
- Clogin
- Dauthenticate
Why this is the answer
Session management uses createSession to obtain a session ID and closeSession to release it.
- Question 9Interactive
In the eAPI command below, what does the 'format' parameter specify?
- AThe output encoding (JSON/text)Correct answer
- BThe input command style
- CThe API version
- DThe authentication method
Why this is the answer
The 'format' parameter controls whether the output is structured JSON or plain text.
- Question 10Single Choice
What is the default HTTP method used for eAPI requests?
- APOSTCorrect answer
- BGET
- CPUT
- DDELETE
Why this is the answer
eAPI uses HTTP POST with a JSON body. GET, PUT, and DELETE are not supported.
Automation Fundamentals and Tools
8 questions in this domain
- Question 11Single Choice
Which Python library is native to Arista for automating EOS devices?
- ApyeapiCorrect answer
- Bparamiko
- Cnetmiko
- Drequests
Why this is the answer
pyeapi is Arista's native Python library that abstracts eAPI calls.
- Question 12Multiple Select
Identify the libraries that are essential for network automation with Arista. (choose two)
- ArequestsCorrect answer
- BjsonCorrect answer
- Cflask
- Ddjango
Why this is the answer
The playbook mentions requests for RESTful APIs and json for structured data handling.
- Question 13Interactive
What transport protocol is used in this pyeapi connection?
- AHTTPSCorrect answer
- BSSH
- CTelnet
- DHTTP (without SSL)
Why this is the answer
The transport parameter is set to 'https', indicating HTTPS.
- Question 14Single Choice
Identify the Ansible module for idempotent configuration management on Arista EOS.
- Aarista.eos.eos_configCorrect answer
- Barista.eos.eos_command
- Carista.eos.eos_facts
- Darista.eos.eos_vlan
Why this is the answer
eos_config is used for idempotent configuration pushes.
- Question 15Multiple Select
Select the two Ansible connection plugins suitable for Arista EOS.
- AhttpapiCorrect answer
- Bnetwork_cliCorrect answer
- Cssh
- Dparamiko
Why this is the answer
The playbook mentions httpapi (preferred) and network_cli as fallback.
- Question 16Interactive
Which Ansible module is executed in this task to run a show command?
- Aarista.eos.eos_commandCorrect answer
- Barista.eos.eos_config
- Carista.eos.eos_facts
- Darista.eos.eos_vlan
Why this is the answer
eos_command is used for running show commands.
- Question 17Single Choice
Why is Jinja2 used in Arista network automation?
- ATo separate data from presentation for configuration generationCorrect answer
- BTo execute remote commands
- CTo manage inventory
- DTo parse JSON outputs
Why this is the answer
Jinja2 is a templating engine that separates data from configuration syntax.
- Question 18Multiple Select
Select two Jinja2 control flow tags used for loops and conditionals.
- A{% for %}Correct answer
- B{% if %}Correct answer
- C{{ }}
- D{% macro %}
Why this is the answer
{% for %} and {% if %} are control structures; {{ }} is expression output, {% macro %} defines functions.
Automation Workflows and CI/CD
8 questions in this domain
- Question 19Single Choice
What is the primary role of Jenkins in a CI/CD pipeline for Arista network automation?
- AOrchestration engineCorrect answer
- BSource of truth for configurations
- CSecret management system
- DTesting framework
Why this is the answer
Jenkins acts as the orchestration engine that pulls sources from GitLab and triggers builds in a CI/CD pipeline.
- Question 20Multiple Select
Which two stages are essential in a CI/CD pipeline for Arista EOS configuration changes?
- ALintingCorrect answer
- BProduction deployment without testing
- CTesting in a sandboxCorrect answer
- DManual backup of all devices
Why this is the answer
Linting and sandbox testing are essential; production deployment requires testing and approval, not bypass.
- Question 21Interactive
Refer to the code. What does this Jenkins pipeline stage do?
- ADeploy to production
- BRun ansible-lint for syntax checksCorrect answer
- CBack up current configurations
- DCreate a change control in CloudVision
Why this is the answer
The stage executes `ansible-lint` to validate syntax and best practices before further deployment.
- Question 22Single Choice
What does GitLab primarily provide in a CI/CD pipeline for Arista?
- ASource of truth for infrastructure-as-codeCorrect answer
- BConfiguration orchestration engine
- CNetwork device testing platform
- DSecrets vault
Why this is the answer
GitLab serves as the source of truth for infrastructure-as-code, storing configurations and enabling merge request approvals.
- Question 23Multiple Select
Which two tools are commonly used for automated testing of Arista network configurations?
- ApytestCorrect answer
- BAnsible
- CpyATSCorrect answer
- DTerraform
Why this is the answer
pytest and pyATS are testing frameworks; Ansible and Terraform are IaC tools, not test frameworks.
- Question 24Interactive
Given the pytest fixture, what does it set up for network tests?
- AA connection to an Arista device via eAPICorrect answer
- BA temporary VLAN on the device
- CA local configuration backup file
- DA virtual environment for test execution
Why this is the answer
The fixture establishes an eAPI connection (via `device.eapi()`) to interact with the Arista device.
- Question 25Single Choice
In automated testing, what is a test bed YAML file used for?
- ADefining device credentials and connectionsCorrect answer
- BStoring test case source code
- CGenerating HTML test reports
- DConfiguring the CI/CD pipeline
Why this is the answer
A test bed YAML defines devices, credentials, and connection protocols, decoupling test logic from specific hardware.
- Question 26Multiple Select
Which two characteristics should automated network tests possess?
- AIdempotentCorrect answer
- BStateful across runs
- CSide-effect freeCorrect answer
- DRequire manual cleanup
Why this is the answer
Tests should be idempotent (same result each run) and side-effect free, leaving device state unchanged after execution.
Network Programmability
8 questions in this domain
- Question 27Single Choice
What is the primary purpose of OpenConfig YANG models?
- ATo provide vendor-neutral data models for network managementCorrect answer
- BTo create Arista-specific configuration syntax
- CTo replace SNMP with CLI commands
- DTo define hardware specifications
Why this is the answer
OpenConfig models are vendor-neutral YANG models for consistent network management across heterogeneous devices.
- Question 28Multiple Select
Which two subtrees are present in the OpenConfig interfaces model?
- AconfigCorrect answer
- BstateCorrect answer
- Cstatistics
- Doperational
Why this is the answer
OpenConfig interface model has config (read-write) and state (read-only) subtrees.
- Question 29Interactive
What is missing in the path '/interfaces/interface/state' for OpenConfig?
- AModule prefixCorrect answer
- BList key
- CContainer name
- DLeaf value
Why this is the answer
OpenConfig paths require the module prefix (e.g., openconfig-interfaces:) to avoid ambiguity.
- Question 30Single Choice
Which network management protocol uses SSH as its transport?
- ANETCONFCorrect answer
- BgNMI
- CeAPI
- DSNMP
Why this is the answer
NETCONF uses SSH (TCP 22) as its transport layer as per RFC 6241.
- Question 31Multiple Select
Which two RPCs are part of the gNMI service?
- ACapabilitiesCorrect answer
- BSetCorrect answer
- CCommit
- DLock
Why this is the answer
gNMI defines Capabilities, Get, Set, and Subscribe RPCs. Commit and Lock are NETCONF.
- Question 32Interactive
Which gNMI Set operation removes all existing data at a path before writing new data?
- AreplaceCorrect answer
- Bupdate
- Cdelete
- Dmerge
Why this is the answer
The replace operation deletes the entire subtree at the path then writes the new value.
- Question 33Single Choice
Where does an EOS SDK agent execute?
- AOn the Arista switchCorrect answer
- BOn a remote server
- CIn CloudVision
- DIn a Docker container
Why this is the answer
EOS SDK agents run natively within the Arista EOS environment on the switch itself.
- Question 34Multiple Select
Which two methods are part of an EOS SDK agent's lifecycle?
- Aon_initialization()Correct answer
- Bon_shutdown()Correct answer
- Con_configuration()
- Don_event()
Why this is the answer
EOS SDK agent lifecycle includes on_initialization and on_shutdown among others.
Troubleshooting and Optimization
6 questions in this domain
- Question 35Single Choice
Which is the most effective debugging method for an Ansible playbook that intermittently fails in production?
- ASet ANSIBLE_DEBUG=1
- BUse --check mode
- CUse -vvv verbosityCorrect answer
- DRun --syntax-check
Why this is the answer
-vvv shows the exact commands sent and received, enabling identification of intermittent issues without excessive overhead.
- Question 36Multiple Select
Which of the following operations are idempotent? (Select all that apply)
- ASetting an interface description with eos_configCorrect answer
- BCopying a file without checksum verification
- CReloading a switch
- DCreating a VLAN with eos_configCorrect answer
Why this is the answer
Idempotent operations produce the same state regardless of repetition. eos_config tasks are idempotent; file copy without checksum and reload are not.
- Question 37Interactive
Analyze the following Arista EOS role configuration. What access level does it provide?
- ALeast privilegeCorrect answer
- BFull admin
- CRead-only
- DCustom but unrestricted
Why this is the answer
The role permits only show commands and specific configure commands, denying all others, which is the essence of least privilege.
- Question 38Single Choice
What is the primary purpose of querying the CMDB before an automated network change?
- ATo verify device reachability
- BTo obtain the intended IP subnet and roleCorrect answer
- CTo validate API credentials
- DTo check the software version
Why this is the answer
The CMDB serves as the source of truth for device attributes such as subnet assignment and role, which must be known before applying changes.
- Question 39Multiple Select
Which monitoring methods are supported for automation jobs in Arista CloudVision? (Select all that apply)
- ASyslogCorrect answer
- BSNMP trapsCorrect answer
- CDHCP logs
- DPrometheus exporterCorrect answer
Why this is the answer
CloudVision supports Syslog, SNMP traps, and Prometheus integration. DHCP logs are unrelated to job monitoring.
- Question 40Interactive
Examine the following curl command that attempts to reach the Arista eAPI. What is the most likely error?
- AMissing 'id' field in JSON-RPC
- BIncorrect method name (should be 'runCmds')Correct answer
- CSSL certificate not trusted
- DMissing 'params' object
Why this is the answer
Arista eAPI requires the method to be 'runCmds'. The given method 'show running-config' is invalid, causing an error.
Frequently asked questions
Everything about the ACE: L5 Professional - Automation question bank and how to use it.