I’ve been supporting datacenter community automation and programmability from inside DevNet for some time now, and have obtained a lot of thanks and appreciation for the wealth of data DevNet gives round ACI programmability. Nonetheless I’m typically requested, “when will we now have one thing for purchasers who selected to make use of Nexus switches in NXOS mode and Datacenter Community Supervisor (DCNM) as a controller?” To be trustworthy, I’ve needed to dodge the query a bit. Not as a result of I didn’t suppose that it was essential, however there was a number of work that needed to be executed earlier than labs may very well be launched. Now, I can confidently face the query of “wen DCNM?” As a result of now the reply is “now.”
In direction of the tip of final 12 months, we launched a DCNM sandbox inside the DevNet Sandbox ecosystem. This sandbox features a absolutely purposeful occasion of DCNM 11.5(1), together with a (6) node N9Kv topology (and a single CSR1000v performing as an “exterior community”) backed by CML. A lot of the bottom configuration inside this topology was preconfigured, together with cloth names and attributes. This enables builders to deal with the end result of their API calls, Ansible playbooks, or Terraform plans – moderately than the humdrum of constructing a cloth from scratch with every sandbox reservation.
New Studying Labs
The sandbox, nonetheless, isn’t sufficient. We want studying labs to elucidate the capabilities of DCNM, the way to use the APIs inside it, and the way to leverage instruments (like Ansible and Terraform) to carry out widespread duties utilizing DCNM as a centralized controller. Very similar to the sandbox, a number of work needed to be executed to make sure that the educational lab modules and supplier behaved the way in which that we anticipated. After many hours spent working by means of points (and the PRs to go along with them) all the things aligned to begin working by means of the labs themselves. I believe you’ll discover they’re well worth the wait. The whole set of labs is contained inside a Introduction to DCNM Programmability studying observe. There you’ll discover three modules masking three completely different applied sciences:
- Introduction to DCNM Programmability
- Introduction to Ansible with DCNM
- Introduction to Terraform with DCNM
Introduction to DCNM Programmability
The Introduction to DCNM Programmability module focuses on the fundamentals of DCNM and the way the platform operates. It familiarizes the consumer with the two-stage commit course of, the way to navigate the net UI to confirm that the automation labored, after which introduces the API tooling inside DCNM. You’ll study in regards to the API instrument (which inspects API calls and their payloads from UI interactions) and interrogating the DCNM API utilizing a pre-built Postman assortment hosted inside DevNet’s public workspace. For these simply turning into aware of the platform, this module is effective in your studying journey.
Introduction to Ansible with DCNM
The Introduction to Ansible with DCNM module expands on the API data you acquired within the first module, by evaluating the duties executed manually by means of uncooked API calls from Postman (or from UI interactions) and locations them in an Ansible playbook utilizing the DCNM modules. The training module additionally walks by means of debugging and understanding when and why sure errors are thrown throughout the operating of an Ansible playbook. It contains when sure circumstances will not be met, or timeouts throughout activity runs are set too quick for the motion to return a profitable code. Whereas not a whole walkthrough of all Ansible actions inside DCNM, it serves as a robust start line to change into acquainted with how DCNM and Ansible work together.
Introduction to Terraform with DCNM
Lastly, the Introduction to Terraform with DCNM module covers using Terraform with DCNM. In a lot the identical vogue, the person labs align straight with the duties within the earlier modules. In some cases, Terraform is stretched exterior of its supposed use-case to interrogate APIs straight utilizing the dcnm_rest useful resource. In these cases, it’s famous that this isn’t the perfect utilization of Terraform, however that the train offers helpful data (e.g., round utilization of information as reference payloads). The training module concludes with an train in how Terraform handles long-lived connections (e.g., including extra gadgets to DCNM’s stock), and what a practitioner ought to do to make sure these actions are profitable.
You’re Not Alone!
Along with the guided studying observe and the prebuilt Postman assortment, all code used to finish the educational observe is on the market in a pattern code repository inside the Cisco DevNet Github group. This code can be utilized both with the educational tracks or individually as a part of your individual desired studying and exploration path. Moreover, for the reason that performance supplied by the Ansible modules and Terraform Suppliers is consistently altering, if there are any adjustments that have to be made – you’ll be able to fork the repository and submit a pull request. What higher option to improve your NetDevOps data than following developer workflows to assist contribute to upstream supply!
I hope that you’ve got as a lot enjoyable working by means of this studying observe as I had placing it collectively. As at all times, if in case you have any feedback, questions, or have concepts on how we will enhance this studying observe – please attain out to me. Please go away me a Remark within the area under, or attain out to me on Twitter. I might love to begin a dialog.
We’d love to listen to what you suppose. Ask a query or go away a remark under.
And keep related with Cisco DevNet on social!