Data Center Automation and Programmability Fundamentals
Data Center Automation and Programmability Fundamentals tests whether you can pick the right automation mechanism and data model for a data center task, and whether you understand what sits underneath the Cisco tooling. Expect agent-based versus agentless automation, controller-based versus device-by-device, API semantics, encodings, and the model-driven stack of YANG, NETCONF, RESTCONF and gNMI/gRPC.
Core rules
- Imperative vs declarative. Imperative automation sends a command sequence (CLI over SSH). Declarative automation sends a desired end state and lets the device or controller compute the delta; only declarative operations are naturally idempotent.
- Agentless vs agent-based, pull vs push. NETCONF, RESTCONF and SSH need no extra software on the device. Polling (SNMP, REST GET) is pull; model-driven telemetry is push, with the device dialing out to a collector.
- Encodings are not models. YANG defines the data structure; XML, JSON and protobuf are encodings. NETCONF is XML over SSH (TCP 830, RPC framing, candidate/running datastores). RESTCONF is HTTP/HTTPS with JSON or XML and normal verbs. gNMI is gRPC with protobuf, commonly TCP 57400.
- REST semantics. GET is safe and idempotent; PUT and DELETE are idempotent; POST is not. 200 means success with a body, 201 created, 202 accepted asynchronously, 400 bad payload, 401/403 authentication or authorization, 404 wrong path, 409 conflict.
Worked example
A 200-switch fabric must deliver interface error counters every 10 seconds into a monitoring database.
Reasoning: polling 200 devices with RESTCONF every 10 seconds means roughly 20 requests per second plus connection overhead, and you only receive what you explicitly ask for. Model-driven telemetry (gNMI dial-out, or gRPC dial-out on NX-OS) lets each device subscribe to a YANG path such as /interfaces/interface/state/counters and stream changes to a collector. Choose telemetry for continuous metrics and keep RESTCONF for on-demand queries during troubleshooting.
Traps that cost marks
- Claiming NETCONF runs over HTTP, or that YANG is itself a data format.
- Treating 202 as completed work rather than a queued job that must be polled.
- Assuming any REST call is idempotent; retrying a POST can duplicate objects.
- Confusing a controller API (intent) with a device API (state on one box).