Skip to main content
PacketMentor logo
Open menu
← All topics
Automation & Programmability Foundational

Controller vs Device-Level Management

The two models for managing a network: controller-based (talk to one brain for the whole fabric) and device-level (talk to each device directly). Trade-offs, examples, when to pick which.

Quick summary
  • Device-level: your script SSHes/NETCONFs/RESTCONFs each device individually. Direct, no middleman, works everywhere.
  • Controller-level: you call one controller's API (Catalyst Center, APIC, Meraki). Controller pushes to devices for you. Simpler at scale.
  • Trade: controller abstracts away vendor diversity + handles bulk; device-level gives you precision and works without a controller license.

Mental model

Cisco objective 5.2 says “Compare controller-level to device-level management”. Two architectures for the same job.

Device-level

Your script ─▶ Switch 1
            ─▶ Switch 2
            ─▶ Switch 3
            ─▶ ...

Script connects to each device, pushes config, reads state. Each device is independent.

Controller-level

Your script ─▶ Controller ─▶ Switch 1
                           ─▶ Switch 2
                           ─▶ Switch 3

Script calls ONE API (the controller). Controller does the work of fanning out to devices.

Device-level: pros and cons

ProsCons
No controller license to buyYour script owns device-type logic (IOS vs NX-OS vs …)
Works on day 1 against existing gearDoes not scale to thousands of devices nicely
Direct access = precise controlNo cross-device assurance (did OSPF converge after my change?)
No single point of failureHarder to roll back fleet-wide
Easy to debug (ssh and look)Harder to audit (changes scattered)

Typical device-level stack: SSH + Netmiko / NAPALM / ncclient / Ansible network modules.

Controller-level: pros and cons

ProsCons
One API call manages hundreds of devicesRequires the controller (license, deploy, maintain)
Vendor abstracts device-type diversityController feature set caps what you can do
Built-in assurance, telemetry, workflowsSingle point of failure (HA mitigates)
Bulk ops are a one-linerChanges outside the controller get overwritten
Role-based access, audit log, approvalsNew API with its own learning curve

Typical controller-level stacks: Cisco Catalyst Center, Meraki Dashboard, ACI APIC, Catalyst SD-WAN vManage, NSO.

When to pick which

ScenarioPick
Small lab, mixed-vendor, few devicesDevice-level
Enterprise campus with Catalyst switchesCatalyst Center (controller)
Branches, cloud-managedMeraki Dashboard (controller)
Data center fabricACI APIC (controller)
Cross-vendor service rollout (MPLS L3VPN across Cisco + Juniper)NSO (controller)
One-off config fix on 3 devicesDevice-level
Compliance / assurance across 1000 devicesController + reporting

Hybrid in practice

Big networks run both:

  • Controller for the standard, repeatable, bulk operations.
  • Device-level scripts for break-glass or edge cases the controller does not cover.

Important: when a controller is in play, device-level changes get overwritten the next time the controller reconciles. Make device-level changes through the controller or disable the controller’s management of that device.

Table of Cisco controllers

ControllerTarget devicesAPI
Catalyst Center (ex-DNA Center)Catalyst switches, routers, APsREST + Token
Meraki DashboardMeraki MX / MS / MR / MGREST + API key
ACI APICACI fabric (Nexus 9000)REST + Cookie (XML/JSON)
Catalyst SD-WAN vManageSD-WAN edges (ex-Viptela)REST + Session + CSRF
Nexus DashboardNexus DC fabricsREST + Token
NSOAny vendor over NETCONFREST + Basic (also NETCONF upstream)
IntersightUCS compute, HyperFlex, some networkREST + OAuth2

See cisco-network-management-platforms for the deeper dive.

FAQ

Does controller-level mean I can forget CLI? No. CLI is the only way to debug a device that lost contact with the controller. Keep it in your toolkit.

Which is more “DevOps”? Both can be. IaC via Ansible is often device-level. IaC via Catalyst Center or Terraform-with-controller-provider is controller-level. Same principles.

What if my controller goes down? The devices keep forwarding traffic — the control plane (routing, STP) runs locally. You just cannot push new config until the controller is back.

gNMI tells me per-device state. Is that device-level or controller-level? Device-level. gNMI subscriptions are between a collector and each device directly. A controller might aggregate many gNMI streams, which then presents a controller-level view.

Master this on a real network

Want this drilled into reflex?

1:1 weekly sessions, live feedback on your labs, and US interview prep: built around the CCNA Automation® exam blueprint. Free first session. No card on file until you decide.

Claim my free session →

Get the free CCNA 12-week roadmap

You're already reading up on Controller vs Device-Level Management. The roadmap is the order I recommend studying every CCNA topic in: with what to lab each week and where Controller vs Device-Level Management fits. A written personal reply, not an autoresponder. Expect it within one business day.

Personal reply from a senior network engineer. No third-party tracking. Unsubscribe any time.