Cisco DNA Center Integration Setup¶
This guide will walk you through steps to set up Cisco DNA Center integration with the nautobot_ssot
app.
Prerequisites¶
Before configuring the integration, please ensure, that nautobot-ssot
app was installed with Cisco DNA Center integration extra dependencies.
Configuration¶
Connecting to a DNA Center instance is handled through the Nautobot Controller object. There is an expectation that you will create an ExternalIntegration with the requisite connection information for your DNA Center instance attached to that Controller object. All imported Devices will be associated to a ControllerManagedDeviceGroup that is found or created during each Job run. It will update the group name to be "<Controller name> Managed Devices" if it exists. When running the Sync Job you will specify which DNA Center Controller instance you wish to synchronize with. Other behaviors for the integration can be controlled with the following settings:
Configuration Variable | Type | Usage | Default |
---|---|---|---|
dna_center_import_global | boolean | Whether to import Global area from DNA Center. | True |
dna_center_import_merakis | boolean | Whether to import Meraki devices from DNA Center. | False |
dna_center_delete_locations | boolean | Whether to delete Locations during sync. | True |
dna_center_update_locations | boolean | Whether to update Locations during sync. | True |
dna_center_show_failures | boolean | Whether to show report of Devices that weren't loaded. | True |
Below is an example snippet from nautobot_config.py
that demonstrates how to enable and configure the DNA Center integration:
PLUGINS_CONFIG = {
"nautobot_ssot": {
"enable_dna_center": is_truthy(os.getenv("NAUTOBOT_SSOT_ENABLE_DNA_CENTER", "true")),
"dna_center_import_global": is_truthy(os.getenv("NAUTOBOT_DNAC_SSOT_DNA_CENTER_IMPORT_GLOBAL", "true")),
"dna_center_import_merakis": is_truthy(os.getenv("NAUTOBOT_DNAC_SSOT_DNA_CENTER_IMPORT_MERAKIS", "false")),
"dna_center_delete_locations": is_truthy(os.getenv("NAUTOBOT_DNAC_SSOT_DNA_CENTER_DELETE_LOCATIONS", "true")),
"dna_center_update_locations": is_truthy(os.getenv("NAUTOBOT_DNAC_SSOT_DNA_CENTER_UPDATE_LOCATIONS", "true")),
"dna_center_show_failures": is_truthy(os.getenv("NAUTOBOT_DNAC_SSOT_DNA_CENTER_SHOW_FAILURES", "true")),
}
}
Note
All integration settings are defined in the block above as an example. Only some will be needed as described above.