The Power of the ACI Toolkit: The “Snapback” App

I recently wrote in my blog about a partner, WWT, that quickly developed a network replication solution across dual DC using the programming interface on the APIC.  Our own development team, just published a complete management rollback mechanism for the APIC using the ACI toolkit’s high level APIs and the APIC’s RESTful APIs.  It took them just a few short days to accomplish this.  This is a testament to the fantastic capability our customers and partners have for rapid feature development on this open programmable platform, the APIC and ACI fabric.

Cisco Insieme engineering team has introduced a new ACI toolkit feature to automate the snapshot and rollback of ACI fabric configuration. Why Snapshots and Rollback for Virtual Networks?  Virtualization introduced a powerful debugging and management capability when file based snapshots of state, data, and configuration of a virtual machine could be made at a specific point in time.  You could restore a previous state, restore lost data, and restart applications from a point in time using snapshots.  With network virtualization, you can store the state of the network, restore a previous configuration, and restart the network with its applications from a point in time.  There are tremendous applications for this capability for DevOps teams testing and debugging distributed applications to optimize performance at scale or to recover from some introduced error or failure.

Snapshot Feature: The tool called “snapback” allows administrators to take live snapshots of a running ACI Fabric configuration either immediately or at some predetermined time in the future.  It allows the snapshots to be performed as a one-time occurrence or on an ongoing schedule.  All snapshots are stored in a version control system that allows full viewing of any version of the configuration and the differences between versions.  Policies can be specified in version control to meet compliance requirements.

Rollback Feature: Rollback is allowed to any previous configuration version and can be done as a full configuration rollback or as granular as per tenant. This enables certain tenants to be rolled back to previous configs, while certain others get to keep their current configs. All config files are readable and open JSON formatted text files. The Open interfaces of ACI enables easy integration of this “snapback” tool with third-party systems to develop integrated operations-focused solutions as it can be imported as a library, run from the OS command shell, or run as a web application.

The source code of the toolkit with examples in GitHub, is available for you now to access and start building your own customized solutions using the APIC and ACI.