Cisco Fabric Automation REST API
Introduction
The Cisco Fabric Automation REST APIs for third party applications enables you to programmatically control Cisco Fabric Automation. The REST API supports POAP (Power On Auto Provisioning), Auto Config and Cable plan features.
POAP allows devices to boot up with temporary IP address (assigned by DHCP server), to download the POAP boot-up script (also assigned by DHCP server) which will further download the required kick-start and system image, and the device configuration file from the specific TFTP server indicated in the boot-up script.
In the Cisco Fabric Automation architecture, the virtual machine (VM) facing interface on leaf switches is automatically configured and de-configured by the auto config. It detects the server/VM boot-up, retrieves pre-defined network parameters from the asset database, and applies the generated configuration. When the VM is moved or shutdown, the auto config also updates/removes the dynamic configuration.
Cable plan provides a Netmap of port-to-port cable connectivity data that can be imported into the switches of the Fabric Automation. The XML cable plan acts as a lookup table, and if a port is not connected to its corresponding destination port as per the plan, the switch should flag an error and notify the customers.
All the REST API operations can also be performed using the DCNM GUI as DCNM uses these REST APIs to render the GUI.
For more information about Cisco Dynamic Fabric Automation, see the Cisco DFA Application Programmer’s Guide.
Software Architecture
In a Fabric Automation datacenter, Cisco DCNM will be the central point of management for the fabric and for the network auto-configuration. PoAP templates are used to auto-configure the spine and leaf network devices and configuration profiles are used to auto-configure the organizations, networks and services.
DCNM works as the network controller in conjunction with any instances of compute/storage orchestrators and service controllers to provide an open and extensible integrated virtual and physical network. Organizations and networks can be created directly using the Cisco DCNM GUIs or through the compute/storage orchestrators. In both cases the external APIs discussed in this document are used to retrieve information and create/retrieve/update/delete configuration profile instances into the network Asset Database (LDAP). The leaf devices in turn fetch configuration from the Asset Database and self-configure themselves. Service controllers like PNSC can also get organization/network information from DCNM through the APIs, as well as update the configuration profiles for services integration.
The general workflow is as follows:
- Create Organizations and Partitions
- As part of this, edge services may be automatically deployed
- Create Segments
- As part of this, segment services may be automatically deployed
- Deploy application workload
Throughout this process the network and network services can be automated using Fabric Automation. For an animated description of the Fabric Automation architecture and work flow refer the following link https://www.youtube.com/watch?v=MNnv2Y_k6EY.
Note You can also use your own REST based clients to integrate with third party orchestrators.