eb Enrico Betti

EWB · infrastruttura sperimentale

Banco di prova per programmazione distribuita EWB

Al secolo: Cluster Malvagio.

Tre piccoli computer recuperati, un router decisamente vissuto e un runtime progettato per togliere al programmatore il peso dell'infrastruttura. Non è un datacenter in miniatura: è un laboratorio concreto per capire cosa debba fare EWB quando il programma non vive più su una macchina sola.

Il laboratorio con terminali storici, strumenti e il telaio del cluster EWB
Il covo operativo: macchine nuove quanto basta, macchine vecchie quanto serve.

Il banco serve a provare distribuzione delle richieste, ripresa dello stato, condivisione dei programmi e recupero dopo lo spegnimento disordinato dei nodi. La domanda non è soltanto «funziona su tre server?», ma «il programma EWB può continuare a sembrare un programma semplice mentre il runtime affronta tutto questo?».

Tre nodi, un esperimento

Architettura del covo

01

Ingresso

Il router riceve le connessioni e può distribuirle tra i nodi disponibili.

02

Esecuzione

Ogni nodo esegue ewbd; Caddy gestisce le connessioni HTTPS.

03

Codice condiviso

I contenuti web arrivano dal nodo principale tramite NFS in sola lettura.

3

Nodi x86

Hardware modesto e disomogeneo: una condizione utile, non un difetto del test.

1

Nodo principale

Ha la batteria e conserva il ruolo di riferimento finché non arriverà un UPS.

60 s

Recupero NFS

I nodi secondari ritentano automaticamente il mount e riavviano i servizi.

Fotografie dal laboratorio

Il Cluster Malvagio, senza scenografia

Schermo del laboratorio con il messaggio di accesso al Cluster Malvagio
Una console di accesso coerente con la serietà dell'esperimento.
Tre piccoli computer sovrapposti in un telaio di legno costruito per il cluster
Tre nodi, un telaio di legno e nessuna complessità ornamentale.

Perché esiste

Coprire la complessità, senza fingere che non esista

EWB prova a mantenere algoritmico il programma web mentre il runtime gestisce richieste indipendenti, stato serializzato, dataset condivisi, task e nodi diversi. Il cluster rende verificabili queste idee su macchine reali: si possono spegnere, riaccendere, rallentare e osservare senza simulare un'infrastruttura perfetta.

Se l'esperimento riesce, il programmatore descrive il problema; il runtime si occupa del passaggio dati. Se non riesce, almeno sapremo esattamente quale parte del covo è esplosa.

Telemetria essenziale

Stato dei nodi

In attesa dei dati…

Il covo sta interrogando i suoi luogotenenti.

Traffico del cluster

Misurato dal MikroTik sull’interfaccia dedicata ai nodi.

Traffico del cluster nelle ultime 24 ore
Ultime 24 ore · media di 5 minuti
Traffico del cluster nell’ultima settimana
Ultima settimana · media di 30 minuti
Traffico del cluster nell’ultimo mese
Ultimo mese · media di 2 ore
Traffico del cluster nell’ultimo anno
Ultimo anno · media giornaliera

← Torna ai progetti