Infrastructure Monitoring · Automation

LocalOps AI

Distributed platform for collecting, centralizing, and visualizing Linux infrastructure data using Python collectors, Django, and PostgreSQL.

The project

Infrastructure monitoring project designed to collect data from Linux servers, centralize reports, and track their evolution through a web platform. The architecture separates report generation on the monitored server from report reception, storage, and visualization on a central platform.

Design and development of the distributed architecture, data collectors, SSH communication, Django ORM integration, PostgreSQL persistence, and monitoring interface.

Architecture

Distributed architecture running across two machines. The Kakaroto server runs independent Python collectors that generate JSON reports. A Python collector, deployed on the central machine using Docker Compose, retrieves the reports over SSH and stores them in PostgreSQL through Django ORM models. The Django application queries and displays the information through its dashboard.

Processing

Processing is divided into two stages. On Kakaroto, collectors retrieve information from system logs and services and generate structured JSON reports. The central collector then retrieves these reports over SSH and processes them for storage in the database through Django ORM.

Development

Backend

Python Django Django ORM Python Collector SSH

Frontend

Django Templates HTML

Database

PostgreSQL

Features

Administration

Django application organized around models and views to manage received reports and display the information stored on the central platform.

Infrastructure

Docker Docker Compose Linux

Technologies

Python Django Django ORM PostgreSQL Docker Docker Compose SSH JSON Linux

Highlights

Deployment

Central environment deployed using Docker Compose, with a Django application and a Python collector organized as independent components. The monitored server runs its own collectors and generates reports that are subsequently retrieved over SSH.