ACI-Health/README.md

38 lines
2.6 KiB
Markdown
Raw Normal View History

2016-11-16 08:30:00 -08:00
![alt text](https://github.com/Kris-Sekula/ACI-Health/blob/master/hw_small.jpg "Health Score Display")
2016-11-16 07:49:28 -08:00
# ACI-Health
2016-11-16 07:56:34 -08:00
A hardware based "monitor" for Cisco ACI infrastructure.
### What does it do?
2016-11-16 07:59:01 -08:00
Let's start with a short description of what the device does. It's designed to show current "health status" of ACI infrastructure. Using the API it "reads" the current "System Health" score of the fabric and displays it on a 4x8 LED multicolour display. The "size" and colour of the display will reflect the health score of the fabric.
2016-11-16 07:56:34 -08:00
2016-11-16 08:24:39 -08:00
![alt text](https://github.com/Kris-Sekula/ACI-Health/blob/master/display.png "Health Score Display")
In the first example we see that if the health score is "100" all rows, starting from bottom lit up in green. As the health score decreases the number of lit up rows decreases at the same time the colour changes, by the time the health score reaches 25, only two rows lit up red and so on.
2016-11-16 07:56:34 -08:00
### What are the use cases?
2016-11-16 07:59:01 -08:00
The device is a prof of concept. The "vision" for this device is to be installed in for example CTO's office, so that he/she can have a quick view of the organisation's datacenter network status without having to login to a computer/phone or any other device. Just a quick "glance" at the display will reveal the network status.
It's also a great example of the flexibility of API built into the ACI product. I personally use it as a demo device when presenting ACI to customers, it serves a "monitoring" function telling me if the fabric is "ready for another demo".
2016-11-16 07:56:34 -08:00
### How it's done?
#### Hardware.
2016-11-16 07:59:01 -08:00
The device is based on "Raspberry Pi Zero" embedded linux computer. The computer uses a wi-fi dongle plugged via a USB hub to connect to wireless network. The "screen" is an of-the-shelf available module. Power is provided via a micro USB cable (either from a "phone" style charger or using a USB-A-to-micro-USB cable plugged to a computer).
2016-11-16 08:38:44 -08:00
Here is wher you can source the HW from:
1. Raspberry Pi Zero and WiFi dongle.
https://shop.pimoroni.com/products/raspberry-pi-zero
https://www.adafruit.com/products/2817
2. USB HUB
https://thepihut.com/products/zero4u-4-port-usb-hub-for-raspberry-pi-zero?variant=18768521796
https://www.adafruit.com/product/3298
3. Dispaly
https://shop.pimoroni.com/products/unicorn-phat
2016-11-16 07:56:34 -08:00
2016-11-16 08:24:39 -08:00
![alt text](https://github.com/Kris-Sekula/ACI-Health/blob/master/hw.png "Hardware details")
2016-11-16 07:56:34 -08:00
#### Software.
2016-11-16 07:59:01 -08:00
The code that controls the gadget is written in python and the main monitoring script (monitor.py) is called on boot of the raspberry pi. I'm not a python guru so don't expect amazing code :) It's a good starting point for experiments with the API built into ACI.