Selecting the Network Automation Approach
Unlock the complete study guide + 1,040 practice questions across 16 full exams.
Bundled into the existing Designing, Deploying and Managing Network Automation Systems premium course — no separate purchase.
14-day money-back guarantee — no questions asked.
Included in this chapter:
- One rule, four questions
- How much to build: low-code, IaC, custom
- Expressing intent: declarative vs imperative
- Talking to the device: model-driven vs CLI
- Which Cisco platform: match the scope
- NSO: one transaction across vendors
- Reading the stem: which approach does the scenario want?
Choosing an automation approach by decision factor
| Decision factor | IaC framework | Low-code/no-code | Custom application |
|---|---|---|---|
| Coding skill needed | Moderate (YAML or HCL) | Low to none | High (Python and APIs) |
| Flexibility | High within the framework's model | Low, limited to prebuilt blocks | Highest, any logic |
| Speed to value | Medium, after learning the tool | Fastest | Slowest, you build it first |
| Scale across a fleet | Strong, one definition to many devices | Strong within the controller's scope | Depends on what you build |
| Maintainability / ownership | Team owns playbooks and modules | Vendor owns the blocks | Team owns the whole app |
| Typical Cisco tooling | Ansible, Terraform | Catalyst Center templates and workflows | Python app on device and platform APIs |
Decision tree
Cheat sheet
Unlock with Premium — includes all practice exams and the complete study guide.
References
- https://docs.python.org/3/
- https://developer.cisco.com/docs/dna-center/
- https://docs.ansible.com/ansible/latest/network/getting_started/network_differences.html
- https://developer.hashicorp.com/terraform/intro
- https://developer.hashicorp.com/terraform/cli/commands/plan
- https://developer.hashicorp.com/terraform/language/state
- https://docs.ansible.com/ansible/latest/network/user_guide/network_resource_modules.html
- https://www.rfc-editor.org/rfc/rfc8040
- https://datatracker.ietf.org/doc/html/rfc7231
- https://docs.ansible.com/ansible/latest/reference_appendices/glossary.html
- https://docs.ansible.com/ansible/latest/collections/cisco/ios/ios_config_module.html
- https://datatracker.ietf.org/doc/html/rfc7950
- https://datatracker.ietf.org/doc/html/rfc6241
- https://developer.cisco.com/iosxe/
- https://ncclient.readthedocs.io/en/latest/manager.html
- https://developer.cisco.com/docs/nso/guides/managing-network-services/
- https://developer.cisco.com/docs/nso/guides/network-element-drivers-and-adding-devices/