Designing an Infrastructure Visibility API Gateway

By Pete Brown

Elevator Pitch

Obtaining visibility to data from disparate infrastructure services and tool sets is a common source of frustration. We will demonstrate an API designed specifically for this purpose and give an overview of the design process.

Description

We have a wide variety of infrastructure related data sources that we reference through scripts. To make life easier, we created an API gateway which brokers calls made to backend services. Scripts can connect to the gateway using a single API to interrogate records from directory services, monitoring systems, telephony systems, etc and return them as JSON objects.

We will step through the design process then discuss the lessons learned and next steps.

Source Systems

  • Active Directory
  • Solarwinds
  • Bluecat IPAM
  • DNS
  • CUCM

Source Protocols

  • LDAP
  • TDS
  • SOAP
  • REST
  • DNS (zone transfers)

Client Interface Options

  • Swagger UI
  • PowerShell

Notes

I’m a huge proponent of applying data quality practices to infrastructure sources. We often rely on static lists of sites, subnets, etc when configuring tools. The best way to validate this information is synchronized across tools is to establish programmatic visibility to the system of record for each data set as well as each system that maintains a copy.