Development of a distributed and decentralised monitoring system for Guifi.net
Monitoring the infrastructure of Guifi.net is essential for the operation of the network. A centralized monitoring solution, however, is sensitive to failures and does not follow the spirit of a collaborative effort.
Within the Lightkone project, we have developed a decentralized monitoring solution for Guifi.net, in which the monitoring server software that is hosted on Cloudy nodes can join the overall network monitoring task and in a self-organizing way take over part of that work.
The conceptual system is shown in the next figure. Each device of the network infrastructure of Guifi.net (in the center of the picture) is monitored by several servers.
These monitoring servers coordinate with each other over a distributed database about which server takes care of the monitoring of a set of routers (network devices). This coordination is done continuously and the current assignment is always updated to the database in order to assure that if any server fails, another server will jump in and make sure that all network devices continue to be monitored. In the next figure, the components of the monitoring servers are shown. There is a key component named “assign” to organize the monitoring assignment of each server. The monitoring task is done by the “ping” and “snmp” components.
You can learn more about the monitoring system in our technical paper published at IEEE SOCA 2019.