I|have written a number of blogs on Network Plug and Play (PnP) on APIC-EM and wanted to provide an update of the new improved PnP in Cisco DNA Center.
This new series covers the changes and enhancements made to PnP on Cisco DNA Center 1.2. The PnP application was not officially exposed in Cisco DNA Center 1.1.x. The main changes in 1.2 include:
This initial blog post will cover the UI and workflow changes, and the next blog post will cover the API changes.
DevNet Zone at Cisco Live USA PnP solution has three main components (and one optional one):
The first thing that needs to happen is for the device to get in contact with the controller. There are four mechanisms you can use to make this work:
At present PnP is not integrated into the provisioning workflow, this will be done in the future. There is a standalone PnP app in the tools section.
Open the app and the first big change is the definition of a workflow. In this example, we define a simple workflow that uses a configuration template to provision a new switch. There is also a default workflow. Select workflows and "Add workflow" which shows a default workflow which can be edited. Delete the image task (which will upgrade the IOS on the device) and then select a template for the configuration file as shown in the subsequent step.
For simplicity, we assume the template has already been created. There will be another blog series on templates.
NOTE: It is still possible to upload a discrete configuration file per device (not template). Templates have projects, so a template needs to be created first. The simple workflow leaves a single step, which will deploy the template called "base config".
Unlike APIC-EM, there is no concept of project exposed.
There is still an unclaimed or pre-provisioned PnP flow. The difference is that everything is now "claimed". To pre-provision a device, add it to PnP, then "Add + claim" it.
When claiming the device, the values for the template variables need to be defined. In this case the "base config" template requires a single variable called "hostname". This variable is set to "pnp-test1".
This results in a PnP device rule created on DNA Center. The rule was created by the user, the state is planned (which means the device has not initiated communication yet), and there has been no contact. It also specifies the workflow for onboarding "simpleTemplate".
Once these steps are completed, the device is powered on. It contacts DNA Center and the onboarding process begins.
The process has completed, the device will be moved to provisioned and added to the inventory.
Although the devices is added to the inventory, under the device provisioning page is appears as "Not Provisioned". This is in reference to the Day-N provisioning which includes the site-settings, templates and policy provisioning. This workflow will be further integrated in future.
There was still a bit of human activity in provisioning this device. I needed to create the initial template file, add the device, claim the device and provide values for template variables. Oh, and I needed to plug the device in and power it on. All except the last step I could automate. Imagine you had 1600 switches you wanted to pre-provision with a template! The next blog post will show how the REST API can automate this process.
In the meantime, if you would like to learn more about this, you could visit Cisco DevNet. DevNet has further explanations about this. Also, we have a Github repository where you can get examples related to PnP.
Thanks for reading!
@adamradford123
We'd love to hear what you think. Ask a question or leave a comment below.
And stay connected with Cisco DevNet on social!
Twitter @CiscoDevNet | Facebook | LinkedIn
Visit the new Developer Video Channel