This chapter covers the following topics:
■ Challenges Being Addressed: This section identifies the challenges that need to be addressed with the advent of software-defined networking, DevOps, and network programmability.
■ Software-Defined Networking (SDN): This section covers the genesis of software-defined networking, its purpose, and the value gained.
■ Application Programming Interfaces (APIs): This section provides guidance around application programming interfaces. Network engineering and operations were very different before APIs; some environments are still resistant to change, but the benefits outweigh the risks of not embracing them.
■ REST APIs: This section provides insights to the functionality and benefit of REST APIs and how they are used.
■ Cross-Domain, Technology-Agnostic Orchestration: This section contains material that is not covered in the DEVCOR certification test. However, as network IT continues to transform, it provides an important consideration for the transformation of environments.
■ Impact to IT Service Management and Security: This section acknowledges the influence of IT service management and security to network programmability. With so many companies investing in ITIL and TOGAF methodologies in the early 2010s, understanding the alignments is helpful.
This chapter maps to the second part of the Developing Applications Using Cisco Core Platforms and APIs v1.0 (350-901) Exam Blueprint Section 5.0, “Infrastructure and Automation.”
As we’ve learned about the infrastructure involved in network IT and see the continued expansion, we also recognize that static, manual processes can no longer sustain us. When we were managing dozens or hundreds of devices using manual methods of logging in to terminal servers, through a device’s console interface, or through inband connectivity via SSH, it may have been sufficient. However, now we are dealing with thousands, tens of thousands, and in a few projects I’ve been on, hundreds of thousands of devices. It is simply untenable to continue manual efforts driven by personal interaction. At some point, these valuable engineering, operations, and management resources must be refocused on more impactful activities that differentiate the business. So, automation must be embraced. This chapter covers some key concepts related to automation: what challenges need to be addressed, how SDN and APIs enable us, and the impact to IT service management and security.
“Do I Know This Already?” Quiz
The “Do I Know This Already?” quiz allows you to assess whether you should read this entire chapter thoroughly or jump to the “Exam Preparation Tasks” section. If you are in doubt about your answers to these questions or your own assessment of your knowledge of the topics, read the entire chapter. Table 10-1 lists the major headings in this chapter and their corresponding “Do I Know This Already?” quiz questions. You can find the answers in Appendix A, “Answers to the ‘Do I Know This Already?’ Quizzes.”
Table 10-1 “Do I Know This Already?” Section-to-Question Mapping
Foundation Topics Section |
Questions |
---|---|
Challenges Being Addressed |
1–5 |
Software-Defined Networking (SDN) |
6 |
Application Programming Interfaces (APIs) |
11 |
REST APIs |
7–10 |
1. When you are considering differences in device types and function, which technology provides the most efficiencies?
Template-driven management
Model-driven management
Atomic-driven management
Distributed EMSs
2. The SRE discipline combines aspects of _______ engineering with _______ and _______.
Hardware, software, firmware
Software, infrastructure, operations
Network, software, DevOps
Traffic, DevOps, SecOps
3. What do the Agile software development practices focus on?
Following defined processes of requirements gathering, development, testing, QA, and release.
Giving development teams free rein to engineer without accountability.
Pivoting from development sprint to sprint based on testing results.
Requirements gathering, adaptive planning, quick delivery, and continuous improvement.
4. Of the software development methodologies provided, which uses a more visual approach to the what-when-how of development?
Kanban
Agile
Waterfall
Illustrative
5. Concurrency focuses on _______ lots of tasks at once. Parallelism focuses on _______ lots of tasks at once.
Doing; working with
Exchanging; switching
Threading; sequencing
Working with; doing
6. The _______ specification, originally the _______ specification, defines a model for machine-readable interface files for describing, producing, consuming, and visualizing RESTful web services.
OpenAPI; Swagger
REST; CLI
SDN; Clean Slate
OpenWeb; CORBA
7. What would be the correct method to generate a basic authentication string on a macOS/Linux CLI?
echo -n 'username:password' | openssl md5
echo -n 'username:password' | openssl
echo -n 'username:password' | openssl base64
echo -n 'username&password' | openssl base64
8. What does XML stand for?
Extendable machine language
Extensible markup language
Extreme machine learning
Extraneous modeling language
9. In JSON, what are records or objects denoted with?
Angle braces < >
Square brackets [ ]
Simple quotes “ ”
Curly braces { }
10. Which REST API HTTP methods are both idempotent?
PATCH, POST
HEAD, GET
POST, OPTIONS
PATCH, HEAD
11. Which are APIs? (Choose two.)
REST
RMON
JDBC
SSH