Effective Gluster Monitoring using Events APIs
Last week I got opportunity to present about Gluster Events APIs in Gluster meetup Bangalore.
Events APIs will be available with Gluster 3.9
release.(Release Candidate
is available if anybody interested in testing)
Without Events APIs, one way to get status of Cluster is by calling Gluster status command/api in periodic intervals.
Below illustration shows calling status
once every 10 seconds.
With Events APIs, setup a listener Webhook and register with Gluster
using gluster-eventsapi webhook-add <URL>
. Call Gluster status
command whenever webhook receives an Event.(Check this blog
to know Webhooks and Events APIs in detail)
As part of presentation, created some visualizations to show how these real time notifications can be used to refresh the UI automatically when Gluster cluster state changes.
Following gif shows the UI change immediately after creating a Gluster Volume.
When a brick process is killed,
Volume Stop,
References:
-
Documentation for the Events APIs feature is available here.
-
Gif images created using
byzanz
tool.(Example:sleep 2; byzanz-record --duration=5 --x=500 --y=0 --width=1024 --height=800 volume_stop.gif
-
Illustrations are created using mypaint software and Wacom Tablet.
-
Dashboard prototype was created using Python Flask + Elm + Websockets
About Aravinda Vishwanathapura
Co-Founder & CTO at Kadalu Technologies, Creator of Sanka, Creator of Chitra, GlusterFS core team member, Maintainer of Kadalu Storage