I’ve been supporting datacenter community automation and programmability from inside DevNet for some time now, and have obtained numerous thanks and appreciation for the wealth of knowledge DevNet provides round ACI programmability. Nonetheless I’m usually requested, “when will we now have one thing for patrons who selected to make use of Nexus switches in NXOS mode and Datacenter Community Supervisor (DCNM) as a controller?” To be sincere, I’ve needed to dodge the query a bit. Not as a result of I didn’t suppose that it was vital, however there was loads of work that needed to be finished 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 throughout 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 permits builders to deal with the end result of their API calls, Ansible playbooks, or Terraform plans – fairly than the humdrum of constructing a cloth from scratch with every sandbox reservation.
New Studying Labs
The sandbox, nevertheless, isn’t sufficient. We’d like studying labs to elucidate the capabilities of DCNM, the best way to use the APIs inside it, and the best way to leverage instruments (like Ansible and Terraform) to carry out frequent duties utilizing DCNM as a centralized controller. Very like the sandbox, loads of work needed to be finished to make sure that the educational lab modules and supplier behaved the way in which that we anticipated. After many hours spent working by points (and the PRs to go together with them) every little thing aligned to start out working by the labs themselves. I believe you’ll discover they’re well worth the wait. Your entire set of labs is contained inside a Introduction to DCNM Programmability studying observe. There you’ll discover three modules masking three totally 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 person with the two-stage commit course of, the best way to navigate the net UI to confirm that the automation labored, after which introduces the API tooling inside DCNM. You’ll study concerning the API device (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 accustomed to 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 information you acquired within the first module, by evaluating the duties finished manually by 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 debugging and understanding when and why sure errors are thrown throughout the working of an Ansible playbook. It contains when sure circumstances are usually not met, or timeouts throughout activity runs are set too quick for the motion to return a profitable code. Whereas not an entire walkthrough of all Ansible actions inside DCNM, it serves as a powerful place to begin 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 the usage of Terraform with DCNM. In a lot the identical trend, 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 best utilization of Terraform, however that the train supplies worthwhile information (e.g., round utilization of recordsdata as reference payloads). The training module concludes with an train in how Terraform handles long-lived connections (e.g., including further 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 out there in a pattern code repository throughout the Cisco DevNet Github group. This code can be utilized both with the educational tracks or individually as a part of your personal desired studying and exploration path. Moreover, for the reason that performance offered by the Ansible modules and Terraform Suppliers is consistently altering, if there are any modifications that must be made – you may fork the repository and submit a pull request. What higher strategy to enhance your NetDevOps information than following developer workflows to assist contribute to upstream supply!
I hope that you’ve got as a lot enjoyable working by this studying observe as I had placing it collectively. As all the time, in case you have any feedback, questions, or have concepts on how we are able to enhance this studying observe – please attain out to me. Please go away me a Remark within the area beneath, or attain out to me on Twitter. I’d love to start out a dialog.
We’d love to listen to what you suppose. Ask a query or go away a remark beneath.
And keep related with Cisco DevNet on social!