Announcing ACIBeat

October 10th 2019

Introducing ACIBeat

Deploying an ACI fabric is straightforward in comparison to navigating the new operational and business processes once the fabric has been handed over to an operations team. Knowing your bearing can be challenging but having complete visibility of your new fabric can help you stay true. The APIC stores troves of data to aid with this but it can be difficult to correlate, and even more so to unlock its true value. We’re applying our experience of building software to help you ease the adoption of ACI.

ACI day two operations is a priority for Cisco; they’re working hard to deliver a lot of insight, as their Network Insights Advisor/Resources (NIA/NIR) shows. These network monitoring platforms provide enhanced network visibility for both ACI and DCNM and we’ll go into detail in future blog posts. While they’re attractive platforms, not everybody can justify increased overheads associated with the platform. A modular and customisable solution would allow those businesses to provide insights in a way that fits the existing procedures, processes, and budget. This is where we hope this blog, and our development, can help.

The APIC GUI has improved significantly. In our experience, however, it can be too detailed and granular for those outside of the network team who need to understand what is happening in the network day-to-day, and hour-to-hour. For those team members, we have been building tools to retrieve, enrich, and visualise data from APIC clusters.

Our first prototype used the ACI REST API to pull granular configuration data together and provide a clean, rich, yet concise summary. We showed it to our customers, we used it ourselves, and we knew we could do more.

We wanted to improve the performance by reducing the number of calls to ACI. There was the opportunity to make the data even more useful by providing richer context. Customers could be empowered if we made data available through an API.

We soon realised we could do all this and more by bringing the required information in one place: Elasticsearch.

Once indexed, the data can be queried using Elasticsearch’s powerful search and aggregation APIs. Rich visualisations can be created easily using Kibana or Canvas. The data can be secured using Elastic’s role-based access control or LDAP.

Announcing ACIBeat; ingesting ACI data into Elasticsearch

ACIBeat is an Elasticsearch Beat that you can configure and run as a single binary on your server or workstation. We will be releasing it on our GitHub repository soon so you can use it, too.

Built upon Elastic’s Beats framework, it comes with all the functionality you’d expect from a Beat. It will automatically create the indices, slow down the indexing rate if the cluster is under high load, mitigate backpressure by indexing data concurrently, and more.

Once configured with the APIC connection details and the object classes you want indexed, ACIBeat takes care of all the groundwork needed to tease data from a Fabric. Authentication, session refreshes, subscription refreshes, and error handling are all handled for you.

Instead of sending documents straight to Elasticsearch, they can go to Logstash for filtering, modification or enrichment.

We have used Logstash to great effect, enriching basic documents from ACIBeat, as well as telemetry data not available through ACI’s API, to add valuable contextual information. We can help you do the same. Our platform can be tailored to retrieve and render and any specific data of interest.

The figure below shows a basic overview of Tenant and child relationships within our lab.

The figure below shows a level of software telemetry output from the APIC to show contract hits over time.

The figure below shows how and where VLANs are being utilised within a fabric.

The figure below shows how you can dynamically filter and resize the visualisation within the above example to provide a more granular view of a specific data set.

What's next

We’re in the process of finishing up the testing of ACIBeat to ensure that it can run unmonitored for long periods of time, orchestrating the tasks required to maintain full connectivity with ACI.

There are upcoming posts going into more detail about our work with Elasticsearch. We are thrilled with what the Elastic Stack has made possible and are looking forward to sharing what we’re doing.

If you need help with an Elastic Stack project, our Elastic Certified Engineers are always on hand to help. We’ll be at Elastic in London on 22nd October; if you have any questions, please introduce yourself and ask away!