200-901 infrastructure automation explained

Updated October 9, 2026

Infrastructure and Automation is worth 20% of 200-901, tied with APIs as the heaviest domain. It asks you to explain why network teams automate, to compare the tools, and above all to interpret: a script, an Ansible playbook, a bash script, a RESTCONF reply, a YANG model, a unified diff and a sequence diagram. You are rarely asked to write from scratch; you are asked what something does.

Why automate, and how

Manual changes are slow, inconsistent and hard to audit. Automation makes changes repeatable, testable and reviewable. Infrastructure as code (IaC) describes infrastructure in text files kept in version control, so a change is a commit that can be reviewed, tested and rolled back.

Model-driven programmability uses data models (YANG) and standard protocols (NETCONF, RESTCONF) to configure devices with structured data instead of CLI text. Its value is consistency across devices and fewer parsing errors.

Controller-level or device-level

Controller-levelDevice-level
ScopeMany devices through one APIOne device at a time
ExampleCatalyst Center, Meraki, ACIRESTCONF or NETCONF to a switch
StrengthIntent and scale, abstractionFine-grained control
CostDepends on the controller’s featuresMore code to manage many devices

Tools

ToolRole
AnsibleAgentless; YAML playbooks; push-based configuration
TerraformDeclarative IaC; plan then apply; tracks state
Cisco NSOOrchestrates services across devices using YANG models
Cisco Modeling LabsBuilds simulated networks to test changes
pyATSPython framework for testing network behaviour

A simulation tool means you test an automation change before it touches production. pyATS adds automated checks, such as confirming a neighbour is up after a change.

CI/CD for infrastructure

The pipeline mirrors application CI/CD: a commit triggers validation, tests run against a simulated network, a review approves the change and deployment follows. Benefits are consistency, early detection of errors and a record of who changed what. A code review has a colleague examine a change before merge, which catches defects, spreads knowledge and enforces standards.

Interpreting an Ansible playbook

- name: Web server setup
  hosts: webservers
  tasks:
    - name: Install nginx
      ansible.builtin.package:
        name: nginx
        state: present
    - name: Start nginx
      ansible.builtin.service:
        name: nginx
        state: started

Read it top to bottom: it targets the group webservers, ensures the package is installed and ensures the service is running. The outline lists management packages, user management for services, basic service configuration and start or stop. Ansible modules are idempotent: running the playbook twice does not change a system that is already correct.

Interpreting scripts, replies and models

Python with Cisco APIs. Identify the workflow: authenticate, request a device or client list, loop and print. The outline names ACI, Meraki, Catalyst Center and RESTCONF.

Bash. mkdir, cd, cp, apt install, useradd and export tell you it creates directories, installs software or manages users.

RESTCONF and NETCONF. A reply is structured data. Find the container and leaf names, read their values, and note whether the reply is XML (NETCONF) or JSON or XML (RESTCONF).

YANG. A module defines containers (grouping), lists (repeated entries with a key), leaves (values with a type). Know that YANG is the model and NETCONF or RESTCONF is how you reach it.

Unified diff. Lines starting with - were removed, + were added, and lines beginning with a space are context. The @@ header shows the line ranges.

Sequence diagram. Time runs downward; each arrow is a message between participants, such as a client, an authentication server and a controller. Read the order of calls.

Example questions

Question 1. An Ansible playbook runs a task using the package module with state: present for nginx, and a second task using the service module with state: started. What does the playbook automate?

  • A. Installing nginx and ensuring the service is running
  • B. Creating user accounts for the web service
  • C. Removing nginx from the hosts
  • D. Collecting a hardware inventory of the hosts
Show answer

Answer: A

The package task ensures nginx is installed and the service task ensures it is running; that is installing and starting a web service. It does not create users, collect inventory, or change the network topology. State values describe the desired end state, not deletion.

Want more questions like this? Full 200-901 practice tests →

Question 2. In a unified diff, a line begins with a minus sign followed by 'interface mtu 1400' and the next line begins with a plus sign followed by 'interface mtu 1500'. What does the change represent?

  • A. Both lines were added to the file
  • B. The file was renamed
  • C. The MTU value was changed from 1400 to 1500
  • D. The MTU value was changed from 1500 to 1400
Show answer

Answer: C

Minus lines are removed and plus lines are added, so the value changed from 1400 to 1500. It is not an addition of both lines, because the minus line is removed. A line without a prefix would be context. Nothing in the diff indicates a file rename.

Want more questions like this? Full 200-901 practice tests →

Question 3. A team wants to test a network automation change before it reaches production, without risking real devices. Which approach fits best?

  • A. Apply it to production during a quiet period
  • B. Rely on a code review alone
  • C. Skip testing because the change is small
  • D. Run it against a simulated network, then verify with automated tests
Show answer

Answer: D

A simulation tool such as Cisco Modeling Labs lets you run the change against a virtual copy of the network, and pyATS can verify results. Applying the change to production first risks an outage. Reviewing the code alone does not prove it works. Skipping tests defeats the purpose of a CI/CD pipeline.

Want more questions like this? Full 200-901 practice tests →

Next: network fundamentals. The tool names also appear in the cheat sheet, and the CCNA’s view of automation is in AI and network operations.